jAudio: Buffered Sound Class
The one of the drawbacks of the MATLAB (built-in) sound function is its incapability of smooth playback of multiple soundbites. When multiple soundbites are played back-to-back, there are unavoidable pauses between them. AFAIK, the Mathwork's only solution to uninterrupted continuous sound playback is to use DAQ Toolbox ($$$).
jAudio class enables the uninterrupted sound playback by directly interfacing with Java Sound APIs. The sound samples are queued to the internal buffer when "play"ed, allowing smooth playback of multiple soundbites.
jAudio class is fully documented. Users are referred to the help text for the class usage (it includes an example code.)
Also, to demonstrate its capability, a GUI demo (jaudio_demo.m) is included in the submission. The GUI has a (one-octave+) piano keyboard (C4-E5) that can be played either by clicking left mouse button on the piano keys on the GUI or pressing the bottom two rows of the PC keyboard keys. Multiple notes can be played simultaneously, although the total number of simultaneous notes playable depends on the OS.
Each note is a pure sinusoidal tone, generated at 8-kHz sampling rate. The internal buffer is 50 ms long and is filled by a pair of timer and jAudio objects.
Citation pour cette source
Kesh Ikuma (2024). jAudio: Buffered Sound Class (https://www.mathworks.com/matlabcentral/fileexchange/28394-jaudio-buffered-sound-class), MATLAB Central File Exchange. Extrait(e) le .
Compatibilité avec les versions de MATLAB
Plateformes compatibles
Windows macOS LinuxCatégories
- Signal Processing > Audio Toolbox > Audio I/O and Waveform Generation >
- MATLAB > Data Import and Analysis > Data Import and Export > Standard File Formats > Audio and Video Data > Piano sounds >
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Découvrir Live Editor
Créez des scripts avec du code, des résultats et du texte formaté dans un même document exécutable.
Version | Publié le | Notes de version | |
---|---|---|---|
1.1.0.0 | Edited the submission information |
||
1.0.0.0 |