Kothe Christian, Shirazi Seyed Yahya, Stenner Tristan, Medine David, Boulay Chadwick, Grivich Matthew I, Mullen Tim, Delorme Arnaud, Makeig Scott
bioRxiv. 2024 Feb 14:2024.02.13.580071. doi: 10.1101/2024.02.13.580071.
Accurately recording the interactions of humans or other organisms with their environment or other agents requires synchronized data access via multiple instruments, often running independently using different clocks. Active, hardware-mediated solutions are often infeasible or prohibitively costly to build and run across arbitrary collections of input systems. The Lab Streaming Layer (LSL) offers a software-based approach to synchronizing data streams based on per-sample time stamps and time synchronization across a common LAN. Built from the ground up for neurophysiological applications and designed for reliability, LSL offers zero-configuration functionality and accounts for network delays and jitters, making connection recovery, offset correction, and jitter compensation possible. These features ensure precise, continuous data recording, even in the face of interruptions. The LSL ecosystem has grown to support over 150 data acquisition device classes as of Feb 2024, and establishes interoperability with and among client software written in several programming languages, including C/C++, Python, MATLAB, Java, C#, JavaScript, Rust, and Julia. The resilience and versatility of LSL have made it a major data synchronization platform for multimodal human neurobehavioral recording and it is now supported by a wide range of software packages, including major stimulus presentation tools, real-time analysis packages, and brain-computer interfaces. Outside of basic science, research, and development, LSL has been used as a resilient and transparent backend in scenarios ranging from art installations to stage performances, interactive experiences, and commercial deployments. In neurobehavioral studies and other neuroscience applications, LSL facilitates the complex task of capturing organismal dynamics and environmental changes using multiple data streams at a common timebase while capturing time details for every data frame.
准确记录人类或其他生物体与环境或其他因素之间的相互作用,需要通过多种仪器同步数据访问,这些仪器通常使用不同的时钟独立运行。对于跨任意输入系统集合构建和运行的主动式硬件介导解决方案,往往不可行或成本过高。实验室流层(LSL)提供了一种基于软件的方法,可基于每个样本的时间戳和通过公共局域网进行的时间同步来同步数据流。LSL是为神经生理学应用全新构建的,设计注重可靠性,提供零配置功能,并考虑到网络延迟和抖动,从而实现连接恢复、偏移校正和抖动补偿。这些特性确保即使面对中断也能进行精确、连续的数据记录。截至2024年2月,LSL生态系统已发展到支持超过150种数据采集设备类别,并与用多种编程语言编写的客户端软件建立了互操作性,这些编程语言包括C/C++、Python、MATLAB、Java、C#、JavaScript、Rust和Julia。LSL的弹性和通用性使其成为多模式人类神经行为记录的主要数据同步平台,现在有广泛的软件包支持它,包括主要的刺激呈现工具、实时分析包和脑机接口。在基础科学、研究和开发之外,LSL已在从艺术装置到舞台表演、互动体验和商业部署等各种场景中用作弹性且透明的后端。在神经行为研究和其他神经科学应用中,LSL有助于使用多个基于公共时基的数据流捕获生物体动态和环境变化这一复杂任务,同时为每个数据帧捕获时间细节。