Welcome Guest, you are in: Login

ScrewTurn Wiki



Search the wiki

Element Icon OpenViBE Device Element
Category: Signal Acquisition AddIn: Signal Processing
Creator: OkazoLab Team Scope: Global
Owns Snippets: no Usage:

Element's actions aligned with epochs of the experiment

Experiment OnsetThe element starts data acquisition and buffering.
Control Loop stepThe element buffers newly received data
Experiment OffsetThe element stops data acquisition and buffering.


Generic Properties

NameDescriptionConstraintsValue TypeUpon Runtime Change
Set OpenViBE folderDefines the OpenViBE folder on a local machineString
TCP Server AddressDefines the address of the OpenViBE TCP server. Use "", if the OpenViBE acquisition server runs on the same computer.String
TCP portDefines the port number of the OpenViBE TCP server.Int32
Sample SizeDefines the sample size (in bits) of a signal streamed by OpenViBE. The value should be the same as settings of the the OpenViBE acquisition server.Int32
Connection TimeoutDefines a timeout (ms) of the connection to the OpenViBE TCP server.String
Channel Configuration
Request ConfigurationSends a configuration request to the OpenViBE acquisition server, which must be run beforehand. The configuration request must be made each time as the OpenViBE element is created or as the OpenViBE server settings are changed. The OpenViBE acquisition server returns the number of active channels, which can be acquired in EventIDE.

+=== Properties inherited from the base signal element === Inherited properties of the Signal Provider Element
Channel Configuration
Selected ChannelsDefines what signal channels are selected for acquisition within EventIDE. Selected channels are registered in the EventIDE signal pool at runtime and become available for the signal analysis elements.IList
Selected Channel CountIndicates how many signal channels are currently selected for acquisition.Int32
Total Channel CountIndicates how many signal channels are available for acquisition in the total.Int32
Buffer SizeDefines the size (in samples) of a circular buffer that stores incoming signal data.Int32
Signal Generator
Signal SourceDefines a source for the signal. The emulated rhythmes can be used for offline validation of the chosen analysis settingsenum
Emulated Sampling RateDefines the emulation sampling rate (samples per second), when data is generated or streamed from a file.Int32
Primary FrequencyDefines the frequency of the primary rhythm in the generated signal, in Hz. Assign the zero to exclude the primary frequency from the generated signal.Double
Secondary FrequencyDefines the frequency of the secondary rhythm in the generated signal, in Hz. The secondary frequency magnitude is a half of the primary frequency magnitude. Assign the zero to exclude the secondary frequency from the generated signal.Double
Noise LevelDefines the noise level (in % to the norm magnitude of the primary frequency). The noise is added to the generated signal. Assign the zero the exclude the noise from the generated signal.Double
External DatafileOpens the dialog for selecting a data file containing a stream of double numbers representing a signal. If a file name without a path is defined, the data file will be picked up in the location of the experiment file.String

+=== Properties inherited from clElement === Inherited properties of clElement
NameDescriptionConstraintsValue TypeUpon Change
Is EnabledIf set to false the element is completely omitted when the experiment is run.Boolean
TitleTitle of the element.String

The element performs buffering of real-time signals (e.g. EEG) provided by the OpenViBE acquisition server.


The element uses a TCP network connection to talk with the OpenViBE acquisition server. The OpenViBE server must be run on the same computer and configured to stream signals from EEG hardware. Once the element is added to an experiment, you need to request the OpenViBE configuration and select EEG channels, which should be passed to EventIDE. As an experiment starts, the element begins receiving data and buffering into circular buffers, maintained by EventIDE (the buffers can collect data from multiple signal acquisition elements). The signal processing elements, e.g. Signal Analyzer element can be then used to monitor and analyze the buffered signals at runtime. Fast buffering and processing time in EventIDE (down to 1ms) allows instant detection of signal characteristics and, subsequently, various forms of neurofeedback control in experiment.


OpenViBE acquisition server in the required operational mode

OpenViBE acquisition server in the required operational mode

Practical Use

Using the element on a real setup

  1. Manually run the OpenViBE acquisition server and set up all settings for data acquisition with your EEG hardware. Connect the OpenViBE acquisition server and start it playing (see the snapshot above)
  2. Add a new OpenViBE Signal element to any event in your experiment (the element is global and works from the start to the end of experiment).
  3. Select the added element to browse its properties in the Property panel.
  4. Define a path to the OpenViBE installation folder on your machine via the Set OpenViBE folder property.
  5. Check that the value of the Sample Size property is equal to the corresponding property on the OpenViBE acquisition server.
  6. Request the OpenViBE configuration by the Request OpenViBE property.
  7. If a TCP connection with the OpenViBE server is established successfully, upon the request, the element obtains the configuration of available EEG channels.
  8. Select the channels for acquisition and buffering within EventIDE via the Selected channels property.
  9. Use the signal processing elements to access the buffered data.

Testing the element with an emulated signal

if you have no EEG hardware or the OpenViBE package available at the moment, you can test the element in the signal emulation mode or with a data file containing a single signal stream:

  1. Browse properties of the OpenViBE Signal element down to the Signal Generator group.
  2. Via the 'Signal Source' property, select either Oscillatory generator or External file options.
  3. If you have selected the Oscillatory generator mode, choose parameters of the generated signal with the following properties: Primary Frequency,Secondary Frequency,Noise Level.
  4. If you have selected the External file mode, define a path to the signal file. If path is made just of file name, the file will be loaded at location of your experiment. The signal file must be in the binary format, with each sample represented by double value (8 bytes or 64-bits).
  5. Define the emulated sample rate, in samples per second, via the corresponding property.


  • To use the OpenViBE Signal element, you must have the OpenViBE platform installed and OpenViBE acquisition server started all the time.
  • To use the OpenViBE Signal element, you must have a network enabled on your local machine.
  • If you changed a configuration of the OpenViBE acquisition server, you need to re-request it in EventIDE. Otherwise, a request should be done only once.
  • If you experience problems connecting to the the OpenViBE acquisition server, try to restart the latter. Before starting it again, and make sure that there are related processes in the computer memory.
  Name Size
- OpenViBEIcon.png 4.46 KB
- server-sm.png 29.59 KB
- server.png 12.97 KB

ScrewTurn Wiki version Some of the icons created by FamFamFam.