Skip to main content

A Python toolbox for visual and auditory stimulation based on pyglet and pylsl.

Project description

Reiz

pyReiz is a low-level auditory and visual stimulus presentation suite wrapping pyglet, sending markers via a pylsl outlet. You can also read more extensive documentation online.

DOI MIT license PyPI version Build Status Coverage Status Documentation Status

basic-example

Installation

The requirements for pyReiz are pyglet and pylsl. They are checked, and if necessary installed, during pip install. There is also a dependency on pyttsx3 to allow on-demand synthesis of auditory cues from text. If you don't need that or can't acquire a version of pyttsx3 for your architecture, install pyreiz without the [tts] suffix.

Windows

pip install Reiz[tts]

Linux

The most recent version of pylsl is not yet on pypi. A solution is to install libsl manually. You download a recent build of liblsl from https://github.com/sccn/liblsl/releases. Afterwards, install pylsl directly from github.

pip install git+https://github.com/labstreaminglayer/liblsl-Python.git
pip install Reiz[tts]

Mac

On Mac, tts and reiz-marker are not supported. These functionalities will be mocked, so at least, you can develop on Mac to deploy on Linux or Windows.

pip install Reiz

Development

git clone https://github.com/pyreiz/pyreiz.git
cd pyreiz
pip install -e .[tts]

Test your installation

After you installed Reiz, you can give it a test-run by calling python -m reiz.examples.basic from your terminal. This should start a throwaway MarkerServer, and present a series of visual and auditory stimuli. If anything does not work out, inform us of the issue.

Additional Information

Create your own experiment

Examples can be found in reiz/examples. A quite extensively documented basic example can be found here: basic example.

Recording

Because all markers are send via LSL, i suggest recording with Labrecorder. Use at least 1.13, as this version supports BIDS-conform recording, offers a remote interface and has a critical timing bugfix included.

Requirements

The key requirements for pyReiz are pyglet and pylsl. We require pylsl>=1.13 because a timing issue was fixed in that version (see https://github.com/sccn/liblsl/issues/8), and pyglet>1.4 because there was a breaking change between 1.3 and 1.4 in the way audio was generated and played (see https://github.com/pyreiz/pyreiz/issues/2). For text-to-speech, which is included with [tts], a key requirement is pyttsx3.

Acknowledgments

I adapted code from Cocos2d for generation of some openGL primitives.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Reiz-3.5.1.tar.gz (58.8 kB view details)

Uploaded Source

Built Distribution

Reiz-3.5.1-py3-none-any.whl (60.9 kB view details)

Uploaded Python 3

File details

Details for the file Reiz-3.5.1.tar.gz.

File metadata

  • Download URL: Reiz-3.5.1.tar.gz
  • Upload date:
  • Size: 58.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for Reiz-3.5.1.tar.gz
Algorithm Hash digest
SHA256 2026ee0b7df335d7df36dd4d9a7490a9761b5a64584d393e3df1d4ce88cc9692
MD5 4bb9039073b7c61c1663f1b813337840
BLAKE2b-256 a66d93b6e2ce17228609c7474fba6f3303d8fe265110f94982ff8098ce335076

See more details on using hashes here.

File details

Details for the file Reiz-3.5.1-py3-none-any.whl.

File metadata

  • Download URL: Reiz-3.5.1-py3-none-any.whl
  • Upload date:
  • Size: 60.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for Reiz-3.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f5a05d949fd660076a5b9f1c5fe70ca445c6e7ab422a6fed231f7aff92896482
MD5 a3ace926f871e82868fa912193462e91
BLAKE2b-256 176874ed3a2720d41020dbecda8c207c26c1a2ab052fbd810b885e10916b2807

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page