[SciPy-User] Playing numpy array over speakers

Todd toddrjen at gmail.com
Tue Mar 31 12:02:01 EDT 2015


On Tue, Mar 24, 2015 at 9:39 PM, Todd <toddrjen at gmail.com> wrote:

> Is anyone aware of a well-maintained, simple, cross-platform python
> package that can play a numpy array as sound over speakers?
>
> I am aware of https://wiki.python.org/moin/Audio/.  However, in all the
> cases there, as far as I can find they either do not support numpy arrays,
> are not cross-platform, cannot playback sound at all, or are unmaintained.
> There is also PySoundCard, which would do what I need but also appears to
> be unmaintained (no release in over a year, and no commits in 5 months, no
> release with serious bugfixes mentioned in commits).
>

So in terms of raw waveform playback (as opposed to music note playback), I
have done some more searching and I think I have found something that
works.  It is the "audio.io" package (https://pypi.python.org/pypi/audio.io/).
It has a recent release (late 2014), supports numpy arrays, and is
cross-platform through PyAudio.  It is just a VERY thin wrapper around
PyAudio (less than 100 lines).  However, there is no website, no issue
tracker, essentially no documentation, and has several projects copied into
its tarball (including setputools, about, and sh).

Here are the reasonably maintained, reasonably relevant alternatives I have
been able to find:

PyAudio: maintained, cross-platform, doesn't support numpy.  It seems to be
used as a backend by a lot of other projects.

audiolazy: cross-platform, supports numpy, has not seen a release since
2013 but its github repo is still seeing commits so it may have more
releases in the future.  Uses PyAudio.  Provides a lot of other powerful
audio-handling and audio-processing capabilities.

PySoundCard: cross-platform, supports numpy, has not seen a release in over
a year and its github repo has not seen a commit in 5 months, but another
related project (PySoundFile) has seen commits and releases recently.  The
only option amongst these that does NOT rely on PyAudio.

pydub: maintained, cross-platform, doesn't appear to support numpy but the
audio output is undocumented so I can't be sure.  Uses PyAudio or ffmpeg if
PyAudio is not available.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.scipy.org/pipermail/scipy-user/attachments/20150331/f34fc64f/attachment.html>


More information about the SciPy-User mailing list