Converting real-time EEG into sounds, music and visual effects
Project description
README
The EEGsynth is a Python codebase released under the GNU general public license that provides a real-time interface between (open-hardware) devices for electrophysiological recordings (e.g., EEG, EMG and ECG) and analogue and digital devices (e.g., MIDI, lights, games and analogue synthesizers). The EEGsynth allows one to use electrical activity recorded from the brain or body to flexibly control devices in real-time, like (re)active and passive brain-computer-interfaces (BCIs), biofeedback and neurofeedback.
Since December 2018, the EEGsynth is registered as a legal Association with the French authorities.
Documentation
The EEGsynth code and technical documentation are hosted on Github and organized as follows:
- src/eegsynth contains the EEGsynth application (see below)
- src/module contains individual modules and reference dopcumentation
- src/lib contains some libraries
- doc contains the general documentation
- patches contains patches and documentation of past performances
- hardware contains documentation on some custom hardware
Installation
You can install the EEGsynth with pip install eegsynth. Further installation details can be found in the documentation.
Running the EEGsynth
Following installation of the EEGsynth and starting Redis, you can start eegsynth *.ini from a terminal with all ini files contained in a patch, for example like this
eegsynth buffer.ini generatesignal.ini plotsignal.ini
or you can start it one module at a time by starting multiple terminals, each with a separate EEGsynth instance, like this
eegsynth buffer.ini
eegsynth generatesignal.ini
eegsynth plotsignal.ini
or you can start the graphical user interface (GUI) like this
eegsynth --gui
You can subsequently drag-and-drop the ini files that you want to start into the GUI. After editing an ini file, you can simply drop it into the GUI again and the module will automatically restart; there is no need to stop and restart all of them.
Disclaimer
The EEGsynth does not allow diagnostic investigations or clinical applications. It also does not provide a graphical user interface for offline analysis. Rather, the EEGsynth is intended as a collaborative interdisciplinary open-source and open-hardware project that brings together programmers, musicians, artists, neuroscientists and developers in scientific and artistic exploration.
Although there are plans to make it more 'plug-and-play', the EEGsynth currently has to be run from the command line, using Python and Bash scripts, and is therefore not friendly for those not familiar with such an approach.
Collaborate and get more information
When you start an project with the EEGsynth, consider doing it together with in a group of people that have knowledge and experience complimentary to yours, such as in electrophysiology, neuroscience, psychology, programming, computer science or signal processing.
More information can be found at our website. Follow us on Facebook and Twitter, and check our past and upcoming events on our calendar. Please feel free to contact us via our contact form.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file eegsynth-0.8.1.tar.gz.
File metadata
- Download URL: eegsynth-0.8.1.tar.gz
- Upload date:
- Size: 179.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
beae49dad6859f79915bc9599ee2f800ed8df6cacb5b0dde92a2ceec26784800
|
|
| MD5 |
0d4da54d814a3f9421c1495e20a3698f
|
|
| BLAKE2b-256 |
d0c05e09b0dee36a69a63ec2598b82710dd89087b020002e0cb0201e3db37161
|
Provenance
The following attestation bundles were made for eegsynth-0.8.1.tar.gz:
Publisher:
publish.yml on eegsynth/eegsynth
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
eegsynth-0.8.1.tar.gz -
Subject digest:
beae49dad6859f79915bc9599ee2f800ed8df6cacb5b0dde92a2ceec26784800 - Sigstore transparency entry: 976527966
- Sigstore integration time:
-
Permalink:
eegsynth/eegsynth@c67f860962843e95292cf281dcae7438531ba02a -
Branch / Tag:
refs/tags/0.8.1 - Owner: https://github.com/eegsynth
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@c67f860962843e95292cf281dcae7438531ba02a -
Trigger Event:
release
-
Statement type:
File details
Details for the file eegsynth-0.8.1-py3-none-any.whl.
File metadata
- Download URL: eegsynth-0.8.1-py3-none-any.whl
- Upload date:
- Size: 347.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9639e924e6072977e739baa4460eda35e39c380806d3832ce2d02c24ad487263
|
|
| MD5 |
1c3d667b76fbc91b5a7b5e8b84c61a22
|
|
| BLAKE2b-256 |
fe88a4d63ec9f0be5a3c8b95b5a784d2e1a4c41f994ae66b60e912f6fc2e64aa
|
Provenance
The following attestation bundles were made for eegsynth-0.8.1-py3-none-any.whl:
Publisher:
publish.yml on eegsynth/eegsynth
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
eegsynth-0.8.1-py3-none-any.whl -
Subject digest:
9639e924e6072977e739baa4460eda35e39c380806d3832ce2d02c24ad487263 - Sigstore transparency entry: 976527969
- Sigstore integration time:
-
Permalink:
eegsynth/eegsynth@c67f860962843e95292cf281dcae7438531ba02a -
Branch / Tag:
refs/tags/0.8.1 - Owner: https://github.com/eegsynth
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@c67f860962843e95292cf281dcae7438531ba02a -
Trigger Event:
release
-
Statement type: