Stream Viewer is a Python package for real-time data visualization. It comprises data-source and visualization modules intended for integration into applications for real-time monitoring and visualization of streaming data, especially data from lab streaming layer (LSL) streams. StreamViewer also provides applications for direct use or to serve as examples.
StreamViewer provides 4 main modules:
- stream_viewer.applications - Functional applications as well as some minimal examples.
- stream_viewer.data - implements data sources that fetch or receive data then share it with any listeners;
- stream_viewer.renderers - objects that listen to data sources then render the data upon arrival;
- stream_viewer.widgets - Qt widgets for organizing renderers and exposing configuration options to user interaction.
The other modules -- buffers
and utils
-- are unlikely to be used by integrators.
StreamViewer is intended to be:
- extensible
- It is possible to extend StreamViewer with custom data sources, renderers, and widgets added as plugins for use with existing StreamViewer applications or across other integrations.
- customizable
- The provided renderers expose many parameters and PyQt widgets to modify those parameters at runtime.
- integrated into your own application
- Only a basic QtWidget and a few lines of code are required.