OpenViBE 2.0 is a major new release of one of the world’s leading BCI software systems. OpenViBE 2.0 is the first OpenViBE to be based on the OpenViBE SDK, a result of 7+7 man years of expert software development and quality assurance work from Inria (France) and Mensia Technologies during 2015-2017. The SDK started from the previous OpenViBE kernel and a subset of critical components and pushed them further in a scope of a rigorous software development process aiming for the SDK to be usable as core technology in medically certified EEG products (for example the Mensia Koala).
(Executive summary: “Downloads are here“)
The OpenViBE SDK
The largest improvements introduced in OpenViBE 2.0 have been made in the CertiViBE project, a joint effort between Inria and Mensia Technologies. The CertiViBE project aims to enable building medical devices based on OpenViBE (standard IEC 62304:2006 Medical device software). A significant amount of the work has centered on robustness, quality assurance, predictable behavior and error handling of the software, as well as documentation and testing. The biggest outcome of the project is the OpenViBE SDK.
In the scope of the project, the OpenViBE kernel has been heavily refactored and simplified, as well as optimized, to allow easier maintainability, scalability and future development with a more gentle learning curve for new software developers. In addition, the project has produced extensive documentation such as Software Definition, Software Requirements and Software Architecture documents (see CertiViBE related documentation). Such documentation has not been previously available for the OpenViBE platform. In addition, an extensive amount of new tests have been specified and implemented. The parts of documentation and tests that intend to serve medical certification purposes will remain proprietary and be available on confidential, contractual basis. However, the technical documentation that is relevant to the scientific audiences and more casual BCI hackers will be released to the public along with the source code of the SDK.
OpenViBE 2.0 will consist of OpenViBE SDK (kernel, specific modules and plugins) plus applications such as Acquisition Server and Designer. Like previous OpenViBE releases, version 2.0 is shipped with additional plugins, tutorials and demos. For the end user, feature highlights of the 2.0 version are the following,
- New advanced visualization boxes contributed by Mensia Technologies: 2D Topography, 3D Cubes, 3D Tomographic Visualization, 3D Topography, Continuous Bars, Continuous Bitmap, Continuous Multi Oscilloscope, Continuous XYZ plot, Instant Bars, Instant Bitmap, Instant Bitmap (3D Stream), Instant Multi Oscilloscope, Instant Oscilloscope, Instant XYZ Plot, Stacked Bitmap (Horizontal), Stacked Bitmap (Vertical)
- Metaboxes, a technique to wrap ‘scenarios inside boxes’
- Scenarios can now have local settings
- New boxes: zero crossing detector, resampling
- Improved boxes: CSV Reader, CSV Writer, Temporal Filter, xDawn
- Scenario player without GUI allows easier use of OpenViBE scenarios in embedded systems without any graphical dependency (no need for GTK/CEGUI/Ogre)
- OpenViBE kernel and Designer no longer depend on Ogre (demos and 3rd party apps can still use it)
- Improved error handling
- Improved documentation (e.g. specifications)
- Improved Designer interface
- New supported stream type: Time/Frequency Matrix
- The maximum fast forward speed in Designer can now be controlled
- Lots of bugfixes
- Performance improvements and code streamlining
- Drivers: Brain Products LiveAmp driver (contributed by Brain Products GmbH)
- Drivers: LabStreamingLayer (LSL) driver support for sampling rate auto-estimation (contributed by Brain Support Brazil)
- For developers: C++11 is now allowed
- Faster Windows command line builds with Ninja
- New flag system : It is possible to define custom flags to add to boxes and algorithms
- Modern Windows system (7/8/10), Linux Ubuntu 14.04 & 16.04 or Linux Fedora 25.
- For Windows developers, Visual Studio 2013 is required. VS 2010 is no longer supported.
Upgrading from a previous version
For a list of limitations and changes required when migrating to OpenViBE 2.x series from 1.x, please see this document.
The following people contributed to the OpenViBE SDK and OpenViBE 2.0 during its planning, documentation, development and testing (in alphabetic order),
Laurent Bonnet / Mensia
Jerome Chabrol / Inria
Morgane Fauvet / Mensia
Charles Garraud / Inria
Thierry Gaugry / Inria
Anatole Lecuyer / Inria
Jozef Legeny / Mensia
Jussi T. Lindgren / Inria
Benoit Perrin / Mensia
Alexis Placet / Mensia
Yann Renard / Mensia
Cedric Riou / Inria
Agnes Dos Santos / Mensia
The new version of OpenViBE also includes some fresh external contributions. For these, we would like to thank
- Brain Products GmbH (Germany) for contributing a ‘LiveAmp’ driver
- Brain Support (Brazil) for contributing LabStreamingLayer (LSL) rate estimation patch
Also many thanks to the previous contributors whose work is inherited from the preceding OpenViBE versions.
OpenViBE 2.0 including the OpenViBE SDK is available free of charge as Windows binary installer and multiplatform source code archive from the downloads page. The license is AGPL3.