audiomath: A neuroscientist's sound toolkit.

Titleaudiomath: A neuroscientist's sound toolkit.
Publication TypeJournal Article
Year of Publication2021
AuthorsN Hill, J, Mooney, SWJ, Prusky, GT
JournalHeliyon
Volume7
Issue2
Paginatione06236
Date Published02/2021
ISSN2405-8440
Abstract

In neuroscientific experiments and applications, working with auditory stimuli demands software tools for generation and acquisition of raw audio, for composition and tailoring of that material into finished stimuli, for precisely timed presentation of the stimuli, and for experimental session recording. Numerous programming tools exist to approach these tasks, but their differing specializations and conventions demand extra time and effort for integration. In particular, verifying stimulus timing requires extensive engineering effort when developing new applications. This paper has two purposes. The first is to present (https://pypi.org/project/audiomath), a sound software library for Python that prioritizes the needs of neuroscientists. It minimizes programming effort by providing a simple object-oriented interface that unifies functionality for audio generation, manipulation, visualization, decoding, encoding, recording, and playback. It also incorporates specialized tools for measuring and optimizing stimulus timing. The second purpose is to relay what we have learned, during development and application of the software, about the twin challenges of delivering stimuli precisely at a certain time, and of precisely measuring the time at which stimuli were delivered. We provide a primer on these problems and the possible approaches to them. We then report audio latency measurements across a range of hardware, operating systems and settings, to illustrate the ways in which hardware and software factors interact to affect stimulus presentation performance, and the resulting pitfalls for the programmer and experimenter. In particular, we highlight the potential conflict between demands for low latency, low variability in latency ("jitter"), cooperativeness, and robustness. We report the ways in which can help to map this territory and provide a simplified path toward each application's particular priority. By unifying audio-related functionality and providing specialized diagnostic tools, both simplifies and potentiates the development of neuroscientific applications in Python.

DOI10.1016/j.heliyon.2021.e06236
Alternate JournalHeliyon
PubMed ID33615015
PubMed Central IDPMC7881231
Grant ListP41 EB018783 / EB / NIBIB NIH HHS / United States

You are here