stimuli.audio.Soundπ
- class stimuli.audio.Sound(fname, device=None, *, backend='sounddevice', clock=<class 'stimuli.time._clock.Clock'>, **kwargs)[source]π
Auditory stimulus loaded from a file.
- Parameters:
- fname
str|pathlib.Path Path to the supported audio file to load.
- device
int|None Device index to use for sound playback. If None, the default device provided by the backend is used.
- backend
"sounddevice" The backend to use for sound playback.
- clock
stimuli.time.BaseClockclass Clock object to use for timing measurements. By default, the
stimuli.time.Clockclass is used.- **kwargs
Additional keyword arguments passed to the backend initialization.
- fname
Attributes
The duration of the audio stimulus.
The sound's original file name.
The sample rate of the audio stimulus.
The audio signal.
The time array of the audio stimulus.
The volume of the audio stimulus per channel given as a percentage.
Window applied to the audio signal.
Methods
play([when, blocking])Play the audio data.
plot()Plot the audio signal waveform.
save(fname, *[, overwrite])Save the audio stimulus to a WAV file.
stop()Interrupt immediately the playback of the audio data.
- play(when=None, *, blocking=False)[source]π
Play the audio data.
- Parameters:
- when
float|None The relative time in seconds when to start playing the audio data. For instance,
0.2will start playing in 200 ms. IfNone, the audio data is played as soon as possible. A duration superior to the device latency is recommended.- blocking
bool If True, the function blocks until the audio playback is finished.
- when
- plot()[source]π
Plot the audio signal waveform.
- Returns:
- f
matplotlib.figure.Figure The matplotlib figure object.
- ax
matplotlib.axes.Axes The matplotlib axes object.
- f
- save(fname, *, overwrite=False)[source]π
Save the audio stimulus to a WAV file.
The saving is handled by
scipy.io.wavfile.write().- Parameters:
- fname
str|pathlib.Path Path to the output file. The extension should be
'.wav'.- overwrite
bool If True, existing files are overwritten.
- fname