Python is dominating as a programming language thanks to its user-friendly feature. In a recent survey by Analytics India Magazine, 75% of the respondents claimed the importance of Python in data science. In this article, we list down 7 python libraries for manipulating audio.
(The list is in no particular order)
Pyo is a Python module written in C for digital signal processing script creation. It contains classes for a wide variety of audio signal processing types by which the user will be able to include signal processing chains directly in Python scripts or projects and to manipulate them in real time through the interpreter.
The tools in pyo module offer primitives, like mathematical operations on the audio signal, basic signal processing (filters, delays, synthesis generators, etc.), but also complex algorithms to create sound granulation and others creative audio manipulations.
pyAudioAnalysis is an open Python library that provides a wide range of audio-related functionalities focusing on feature extraction, classification, segmentation, and visualization issues.
With the help of this library, you can extract audio features and representations, classify unknown sounds, apply dimensionality reduction to visualize audio data and content similarities, perform supervised and unsupervised segmentation, detect audio events and exclude silence periods from long recordings and much more.
Dejavu Project is an open-source audio fingerprinting project in Python. It can memorize recorded audio by listening to it once and fingerprinting it. Then by playing a song and recording microphone input or on a disk file, Dejavu attempts to match the audio against the fingerprints held in the database, returning the song or recording being played.
Dejavu excels at the recognition of exact signals with reasonable amounts of noise. There are two ways to recognize audio using Dejavu. You can recognize by reading and processing files on disk, or through your computer’s microphone.
Mingus is a package for Python used by programmers, musicians, composers, and researchers to make and investigate music. It is an advanced, cross-platform music theory and notation package for Python with MIDI file and playback support.
It can be used to play around with music theory, to build editors, educational tools and other applications that need to process and/or play music. At the core of Mingus is music theory, which includes topics like intervals, chords, scales, and progressions. These components are tested and can be used to generate and recognize musical elements using convenient shorthand.
hYPerSonic is a python/c framework for building and manipulating sound processing pipelines which are designed for real-time control. It is low-level where every byte counts and it includes objects for oscillators, filters, file-io, soundcard, and memory operations. The library currently works on Linux and OSX.
Pydub is a simple and easy high-level interface based on ffmpeg and influenced by jquery. It manipulates audio, adding effects, id3 tags, slicing, concatenating audio tracks. Pydub supports python version 2.6, 2.7, 3.2, and 3.3.
Loris is an open source sound modeling and processing software package based on the Reassigned Bandwidth-Enhanced Additive Sound Model. It supports modified resynthesis and manipulations of the model data, such as time- and frequency-scale modification and sound morphing. Even though it is a C++ library, the Loris programmers’ interface supports Python programing language and SWIG interface files are provided so that the API can be easily extended to a variety of other languages.
Note: A short reminder to all Data Science folks to check out Machinehack’s latest hackathon – Predicting The Costs Of Used Cars – Hackathon By Imarticus Learning clicking here to participate and win exciting prizes.