Page History: OpenViBE Signal Element
Compare Page Revisions
Page Revision: 2014/12/24 06:23
|
OpenViBE Device Element
|
Info |
Category: |
Signal Acquisition |
|
AddIn: |
Signal Processing |
Creator: |
OkazoLab Team |
|
Scope: |
Global |
Owns Snippets: |
no |
|
Usage: |
|
The element performs buffering of real-time signals (e.g. EEG) provided by the OpenViBE acquisition server (http://openvibe.inria.fr).
Description
The element uses a TCP network connection to talk with the OpenViBE acquisition server. The OpenViBE server must run on the background and set 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 that should be streamed to EventIDE. Once an experiment starts, the element begin receiving data and buffering it into a common pool of circular buffers, where EventIDE collects data from multiple signal acquisition elements. The signal processing elements, e.g.
Signal Analyzer element can be used to monitor, and analyze any of the buffered signals at runtime. Fast buffering and processing steps (up to 1ms) also allows different types of neurofeedback control in experiment.
Snapshots
OpenViBE acquisition server in the required operational mode |
Practical Use
- 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)
- Add a new OpenViBE Signal element to any event in your experiment (the element is global and works during the entire experiment).
- Select the added element to browse its properties in the Property panel.
- Define a path to the OpenViBE installation folder on your machine via the 'Set OpenViBE folder' property.
- Check that the value of the Sample Size property is equal to the corresponding property on the OpenViBE acquisition server.
- Request the OpenViBE configuration by the 'Request OpenViBE' property.
- If a TCP connection with the OpenViBE server is established successfully, upon the request, the element obtains the configuration of available EEG channels.
- Select the channels for acquisition and buffering within EventIDE via the 'Selected channels' property
- Once the channels are selected, you can access them with by of the signal processing elements
Notes
- 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
Element actions aligned with epochs of the experiment
Epoch | Actions |
---|
Experiment Onset | The element starts data acquisition and buffering. |
Control Loop step | The element buffers newly received data |
Experiment Offset | The element stops data acquisition and buffering. |
Properties
Generic Properties
Name | Description | Constraints | Value Type | Upon Runtime Change |
---|
Settings |
Set OpenViBE folder | Defines the OpenViBE folder on a local machine | | String |
TCP Server Address | Defines the address of the OpenViBE TCP server. Use "127.0.0.1", if the OpenViBE acquisition server runs on the same computer. | | type String |
TCP port | Defines the port number of the OpenViBE TCP server. | | Int32 |
Sample Size | Defines 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 Timeout | Defines a timeout (ms) of the connection to the OpenViBE TCP server. | | type String | |
Channel Configuration |
Request Configuration | Sends 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 Channels | Defines 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 Count | Indicates how many signal channels are currently selected for acquisition. | | Int32 |
|
Total Channel Count | Indicates how many signal channels are available for acquisition in the total. | | Int32 |
|
Buffer Size | Defines the size (in samples) of a circular buffer that stores incoming signal data. | | Int32 |
|
Signal Generator |
Signal Source | Defines a source for the signal. The emulated rhythmes can be used for offline validation of the chosen analysis settings | | enum |
|
Emulated Sampling Rate | Defines the emulation sampling rate (samples per second), when data is generated or streamed from a file. | | Int32 |
|
Primary Frequency | Defines 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 Frequency | Defines 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 Level | Defines 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 Datafile | Opens 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
Name | Description | Constraints | Value Type | Upon Change |
---|
Control |
Is Enabled | If set to false the element is completely omitted when the experiment is run. | | Boolean |
|
Title | Title of the element. | | String |
|