Pyff - A pythonic framework for feedback applications and stimulus presentation in neuroscience

Bastian Venthur, Simon Scholler, John Williamson, Sven Dähne, Matthias S. Treder, Maria T. Kramarek, Klaus Muller, Benjamin Blankertz

Research output: Contribution to journalArticle

30 Citations (Scopus)

Abstract

This paper introduces Pyff, the Pythonic feedback framework for feedback applications and stimulus presentation. Pyff provides a platform-independent framework that allows users to develop and run neuroscientific experiments in the programming language Python. Existing solutions have mostly been implemented in C++, which makes for a rather tedious programming task for non-computer-scientists, or in Matlab, which is not well suited for more advanced visual or auditory applications. Pyff was designed to make experimental paradigms (i.e., feedback and stimulus applications) easily programmable. It includes base classes for various types of common feedbacks and stimuli as well as useful libraries for external hardware such as eyetrackers. Pyff is also equipped with a steadily growing set of ready-to-use feedbacks and stimuli. It can be used as a standalone application, for instance providing stimulus presentation in psychophysics experiments, or within a closed loop such as in biofeedback or brain-computer interfacing experiments. Pyff communicates with other systems via a standardized communication protocol and is therefore suitable to be used with any system that may be adapted to send its data in the specified format. Having such a general, open-source framework will help foster a fruitful exchange of experimental paradigms between research groups. In particular, it will decrease the need of reprogramming standard paradigms, ease the reproducibility of published results, and naturally entail some standardization of stimulus presentation.

Original languageEnglish
Article number100
JournalFrontiers in Neuroinformatics
Volume4
Issue numberDEC
DOIs
Publication statusPublished - 2010 Dec 2
Externally publishedYes

Fingerprint

Neurosciences
Feedback
Biofeedback
Boidae
Psychophysics
Programming Languages
Experiments
Reproducibility of Results
Computer programming languages
Standardization
Libraries
Brain
Computer systems
Communication
Hardware
Network protocols
Research

Keywords

  • BCI
  • Feedback
  • Framework
  • Neuroscience
  • Python
  • Stimulus presentation

ASJC Scopus subject areas

  • Neuroscience (miscellaneous)
  • Biomedical Engineering
  • Computer Science Applications

Cite this

Venthur, B., Scholler, S., Williamson, J., Dähne, S., Treder, M. S., Kramarek, M. T., ... Blankertz, B. (2010). Pyff - A pythonic framework for feedback applications and stimulus presentation in neuroscience. Frontiers in Neuroinformatics, 4(DEC), [100]. https://doi.org/10.3389/.2010.00100

Pyff - A pythonic framework for feedback applications and stimulus presentation in neuroscience. / Venthur, Bastian; Scholler, Simon; Williamson, John; Dähne, Sven; Treder, Matthias S.; Kramarek, Maria T.; Muller, Klaus; Blankertz, Benjamin.

In: Frontiers in Neuroinformatics, Vol. 4, No. DEC, 100, 02.12.2010.

Research output: Contribution to journalArticle

Venthur, B, Scholler, S, Williamson, J, Dähne, S, Treder, MS, Kramarek, MT, Muller, K & Blankertz, B 2010, 'Pyff - A pythonic framework for feedback applications and stimulus presentation in neuroscience', Frontiers in Neuroinformatics, vol. 4, no. DEC, 100. https://doi.org/10.3389/.2010.00100
Venthur, Bastian ; Scholler, Simon ; Williamson, John ; Dähne, Sven ; Treder, Matthias S. ; Kramarek, Maria T. ; Muller, Klaus ; Blankertz, Benjamin. / Pyff - A pythonic framework for feedback applications and stimulus presentation in neuroscience. In: Frontiers in Neuroinformatics. 2010 ; Vol. 4, No. DEC.
@article{36d730f2e9154574be5572c5a76996ab,
title = "Pyff - A pythonic framework for feedback applications and stimulus presentation in neuroscience",
abstract = "This paper introduces Pyff, the Pythonic feedback framework for feedback applications and stimulus presentation. Pyff provides a platform-independent framework that allows users to develop and run neuroscientific experiments in the programming language Python. Existing solutions have mostly been implemented in C++, which makes for a rather tedious programming task for non-computer-scientists, or in Matlab, which is not well suited for more advanced visual or auditory applications. Pyff was designed to make experimental paradigms (i.e., feedback and stimulus applications) easily programmable. It includes base classes for various types of common feedbacks and stimuli as well as useful libraries for external hardware such as eyetrackers. Pyff is also equipped with a steadily growing set of ready-to-use feedbacks and stimuli. It can be used as a standalone application, for instance providing stimulus presentation in psychophysics experiments, or within a closed loop such as in biofeedback or brain-computer interfacing experiments. Pyff communicates with other systems via a standardized communication protocol and is therefore suitable to be used with any system that may be adapted to send its data in the specified format. Having such a general, open-source framework will help foster a fruitful exchange of experimental paradigms between research groups. In particular, it will decrease the need of reprogramming standard paradigms, ease the reproducibility of published results, and naturally entail some standardization of stimulus presentation.",
keywords = "BCI, Feedback, Framework, Neuroscience, Python, Stimulus presentation",
author = "Bastian Venthur and Simon Scholler and John Williamson and Sven D{\"a}hne and Treder, {Matthias S.} and Kramarek, {Maria T.} and Klaus Muller and Benjamin Blankertz",
year = "2010",
month = "12",
day = "2",
doi = "10.3389/.2010.00100",
language = "English",
volume = "4",
journal = "Frontiers in Neuroinformatics",
issn = "1662-5196",
publisher = "Frontiers Research Foundation",
number = "DEC",

}

TY - JOUR

T1 - Pyff - A pythonic framework for feedback applications and stimulus presentation in neuroscience

AU - Venthur, Bastian

AU - Scholler, Simon

AU - Williamson, John

AU - Dähne, Sven

AU - Treder, Matthias S.

AU - Kramarek, Maria T.

AU - Muller, Klaus

AU - Blankertz, Benjamin

PY - 2010/12/2

Y1 - 2010/12/2

N2 - This paper introduces Pyff, the Pythonic feedback framework for feedback applications and stimulus presentation. Pyff provides a platform-independent framework that allows users to develop and run neuroscientific experiments in the programming language Python. Existing solutions have mostly been implemented in C++, which makes for a rather tedious programming task for non-computer-scientists, or in Matlab, which is not well suited for more advanced visual or auditory applications. Pyff was designed to make experimental paradigms (i.e., feedback and stimulus applications) easily programmable. It includes base classes for various types of common feedbacks and stimuli as well as useful libraries for external hardware such as eyetrackers. Pyff is also equipped with a steadily growing set of ready-to-use feedbacks and stimuli. It can be used as a standalone application, for instance providing stimulus presentation in psychophysics experiments, or within a closed loop such as in biofeedback or brain-computer interfacing experiments. Pyff communicates with other systems via a standardized communication protocol and is therefore suitable to be used with any system that may be adapted to send its data in the specified format. Having such a general, open-source framework will help foster a fruitful exchange of experimental paradigms between research groups. In particular, it will decrease the need of reprogramming standard paradigms, ease the reproducibility of published results, and naturally entail some standardization of stimulus presentation.

AB - This paper introduces Pyff, the Pythonic feedback framework for feedback applications and stimulus presentation. Pyff provides a platform-independent framework that allows users to develop and run neuroscientific experiments in the programming language Python. Existing solutions have mostly been implemented in C++, which makes for a rather tedious programming task for non-computer-scientists, or in Matlab, which is not well suited for more advanced visual or auditory applications. Pyff was designed to make experimental paradigms (i.e., feedback and stimulus applications) easily programmable. It includes base classes for various types of common feedbacks and stimuli as well as useful libraries for external hardware such as eyetrackers. Pyff is also equipped with a steadily growing set of ready-to-use feedbacks and stimuli. It can be used as a standalone application, for instance providing stimulus presentation in psychophysics experiments, or within a closed loop such as in biofeedback or brain-computer interfacing experiments. Pyff communicates with other systems via a standardized communication protocol and is therefore suitable to be used with any system that may be adapted to send its data in the specified format. Having such a general, open-source framework will help foster a fruitful exchange of experimental paradigms between research groups. In particular, it will decrease the need of reprogramming standard paradigms, ease the reproducibility of published results, and naturally entail some standardization of stimulus presentation.

KW - BCI

KW - Feedback

KW - Framework

KW - Neuroscience

KW - Python

KW - Stimulus presentation

UR - http://www.scopus.com/inward/record.url?scp=79958097399&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=79958097399&partnerID=8YFLogxK

U2 - 10.3389/.2010.00100

DO - 10.3389/.2010.00100

M3 - Article

AN - SCOPUS:79958097399

VL - 4

JO - Frontiers in Neuroinformatics

JF - Frontiers in Neuroinformatics

SN - 1662-5196

IS - DEC

M1 - 100

ER -