= Audio in Python = This page tries to provide a starting point for those who want to work with audio in combination with Python. If you are creating a game, most of what you are looking for may already be included in the many [[PythonGameLibraries|PythonGameLibraries]] that are available. If you are looking for podcasts related to Python, go to the [[PythonAudioMaterial|PythonAudioMaterial]] page. == Built in modules == The [[http://docs.python.org/3/library/mm.html|Multimedia Services]] allow for some basic audio functionality in Python. It consists of the following modules: ||[[http://docs.python.org/3/library/audioop.html|audioop]] ||Manipulate raw audio data. || ||[[http://docs.python.org/3/library/aifc.html|aifc]] ||Read and write audio files in AIFF or AIFC format. || ||[[http://docs.python.org/3/library/sunau.html|sunau]] ||Provide an interface to the Sun AU sound format. || ||[[http://docs.python.org/3/library/wave.html|wave]] ||Provide an interface to the WAV sound format. || ||[[http://docs.python.org/3/library/chunk.html|chunk]] ||Module to read IFF (e.g. AIFF) chunks. || ||[[http://docs.python.org/3/library/chunk.html|colorsys]] ||Conversions between colour systems. || ||[[http://docs.python.org/3/library/chunk.html|imghdr]] ||Determine the type of a image file. || ||[[http://docs.python.org/3/library/sndhdr.html|sndhdr]] ||Determine the type of a sound file. || ||[[http://docs.python.org/3/library/ossaudiodev.html|ossaudiodev]] ||Access to OSS-compatible audio devices (mainly important for Linux / FreeBSD) || ||[[http://docs.python.org/3/library/winsound.html|winsound]] ||Access to the basic sound-playing machinery provided by Windows platforms. || == Beyond the default modules == Alternatively, you might want to learn about audio programming in Python. There is a veritable forest of stuff out there, but here are some good starting points. For a complete overview have a look at [[PythonInMusic|PythonInMusic]]. === Platform independent === ||[[http://nsound.sourceforge.net|Nsound]] ||C++ library with Python module for audio synthesis. || ||[[http://pypi.python.org/pypi/pyaudiere/0.2|PyAudiere]] ||A high-level audio interface for Python. (deadlink) || ||[[http://pydub.com|Pydub]] ||A high-level audio interface for Python. Uses ffmpeg for formats other than WAVE || ||[[http://people.csail.mit.edu/hubert/pyaudio/|pyAudio]] ||Python bindings for [[PortAudio|PortAudio]] audio input and output || ||[[http://www.speech.kth.se/snack/|Snack]] ||Playback, recording, file and socket I/O, waveforms and spectrograms. "Last release 2004-12-01. Dead?" || ||[[http://sourceforge.net/projects/audiotools/|Python Audio Tools]] ||Programs for CD-ripping and conversion between audio file formats. || ||[[https://pypi.python.org/pypi/musicplayer|musicplayer module]] ||Part of a [[http://albertz.github.com/music-player/|music player]]. It uses FFmpeg for decoding and [[PortAudio|PortAudio]] for output. It supports gapless playback and high sample rates (96kHz or 192kHz). It also has the functionality to calculate the [[ReplayGain|ReplayGain]] value and do loudness normalization, to calculate the [[AcoustId|AcoustId]] fingerprint, to get the metadata (via FFmpeg) and to calculate a visual representation for a sound file. || ||[[http://python-sounddevice.rtfd.org/|sounddevice]] ||This module provides bindings for the [[http://www.portaudio.com/|PortAudio]] library (using [[https://cffi.rtfd.org/|CFFI]]) and a few convenience functions to play and record [[http://www.numpy.org/|NumPy]] arrays containing audio signals. || || [[http://simpleaudio.readthedocs.org/en/latest/|simpleaudio]] || Simple, dependency-free audio playback for Python 3 || || [[https://github.com/mytja/libwinmedia-py|libwinmedia]] || Tiny and simple audio and video playback for Windows and Linux. Uses [[https://github.com/harmonoid/libwinmedia|libwinmedia]] library. || === Platform dependent === http://gstreamer.freedesktop.org/modules/gst-python.html http://pyalsaaudio.sourceforge.net/ http://pypi.python.org/pypi/audiosocket/ - pure Python solution to play audio on Windows === Modules relying on closed source === [[http://pysonic.sourceforge.net/|pysonic]] - A wrapper around the [[http://www.fmod.org|FMOD]]-library offering plenty of options including 3D sound and effects. FMOD is a popular closed, but free for own use, that is used in many commercial game titles. ---- [[CategoryDocumentation|CategoryDocumentation]]