PyAudio - Python bindings for PortAudio, the cross-platform audio I/O library

  •        437

PyAudio provides Python bindings for PortAudio, the cross-platform audio I/O library. With PyAudio, you can easily use Python to play and record audio on a variety of platforms.

http://people.csail.mit.edu/hubert/pyaudio/

Tags
Implementation
License
Platform

   




Related Projects

essentia - C++ library for audio and music analysis, description and synthesis, including Python bindings

  •    Jupyter

Essentia is an open-source C++ library for audio analysis and audio-based music information retrieval released under the Affero GPL license. It contains an extensive collection of reusable algorithms which implement audio input/output functionality, standard digital signal processing blocks, statistical characterization of data, and a large set of spectral, temporal, tonal and high-level music descriptors. The library is also wrapped in Python and includes a number of predefined executable extractors for the available music descriptors, which facilitates its use for fast prototyping and allows setting up research experiments very rapidly. Furthermore, it includes a Vamp plugin to be used with Sonic Visualiser for visualization purposes. Essentia is designed with a focus on the robustness of the provided music descriptors and is optimized in terms of the computational cost of the algorithms. The provided functionality, specifically the music descriptors included in-the-box and signal processing algorithms, is easily expandable and allows for both research experiments and development of large-scale industrial applications. If you use example extractors (located in src/examples), or your own code employing Essentia algorithms to compute descriptors, you should be aware of possible incompatibilities when using different versions of Essentia.

PortAudio - Cross-platform Audio I/O Library

  •    C

PortAudio is a free, cross-platform, open-source, audio I/O library. It lets you write simple audio programs in 'C' or C++ that will compile and run on many platforms. It provides a very simple API for recording and/or playing sound using a simple callback function or a blocking read/write interface. Example programs are included that play sine waves, process audio input (guitar fuzz), record and playback audio, list available audio devices, etc.

aubio - a library for audio and music analysis

  •    C

aubio is a library to label music and sounds. It listens to audio signals and attempts to detect events. For instance, when a drum is hit, at which frequency is a note, or at what tempo is a rhythmic melody. Its features include segmenting a sound file before each of its attacks, performing pitch detection, tapping the beat and producing midi streams from live audio.

ion.sound - JavaScript plugin for playing sounds and music in browsers

  •    Javascript

JavaScript plugin for playing sounds on user actions and page events. Today websites are full of events (new mail, new chat-message, content update etc.). Often it is not enough to indicate this events only visually to get user attention. You need sounds! This library, made for playing small sounds, will help you with this task. Also, new version of Ion.Sound is capable to handle browser games audio. It has full control of loading, playing and removing audio files. And audio-sprites support of course.

web-audio-api - Node.js implementation of Web audio API

  •    Javascript

This library implements the Web Audio API specification (also know as WAA) on Node.js. By default, web-audio-api doesn't play back the sound it generates. In fact, an AudioContext has no default output, and you need to give it a writable node stream to which it can write raw PCM audio. After creating an AudioContext, set its output stream like this : audioContext.outStream = writableStream.


WaveInApp - Live Audio Equalizer with wave effect

  •    Java

Our library can take audio from any source (audio players, streams, voice input) and animate it with high frame rate. Cool animation, designed specially for the library, responds to sound vibrations. The animation becomes intense when music plays, and once it is paused or stopped – waves calm down. The library is a part of implementation of music player.

gibberish - Fast, JavaScript DSP library that creates JIT optimized audio callbacks using code generation techniques

  •    Javascript

Gibberish is designed to be a fast audio API for the browser. It takes the low-level building blocks provided by genish.js and uses them to create higher-level synthesizers, effects, and sequencers. Gibberish proceses each sample of each synthesis block one sample at a time, enabling a variety of effects not typically possible in browser-based synthesis systems, most importantly single-sample feedback loops and audio-rate modulation of scheduling. Note that this branch is for version 3 of the library. See the master branch for the pre-June 2017 version that is currently used in Gibber. There is also a tagged release of the older version (2.0.0).

meyda - Audio feature extraction for JavaScript.

  •    Javascript

Meyda is a Javascript audio feature extraction library. Meyda supports both offline feature extraction as well as real-time feature extraction using the Web Audio API. We wrote a paper about it, which is available here. Please see the documentation for setup and usage instructions.

react-native-track-player - A fully fledged audio module created for music apps

  •    Java

Check Platform Support for more information. After trying to team up modules like react-native-sound, react-native-music-controls and react-native-google-cast, I've noticed that their structure and the way should be tied together can cause a lot problems (mainly on Android). Those can heavily affect the app stability and user experience.

libsoundio - C library for cross-platform real-time audio input and output

  •    C

C library providing cross-platform audio input and output. The API is suitable for real-time software such as digital audio workstations as well as consumer software such as music players.This library is an abstraction; however in the delicate balance between performance and power, and API convenience, the scale is tipped closer to the former. Features that only exist in some sound backends are exposed.

netAudio

  •    CSharp

A .NET audio, sound, and music playback library - a libVLC wrapper. netAudio allows the playback of MPEG files (MP3, etc), WMA, WAV, MP4, OGG, REAL, raw audio, FLAC, FLV, MIDI and SMF, Creative Voice and more. netAudio also provides advanced tag editing functionality via tagLib.

Ardour - Digital Audio Workstation

  •    C++

Ardour is a hard disk recorder and digital audio workstation application. It supports unlimited audio tracks and buses. Its features include Non-destructive, non-linear editing with unlimited undo, and anything-to-anywhere signal routing. It supports Standard file formats BWF, WAV, WAV64, AIFF, CAF and Windows VST plugins. Ardour can be used as an audio mastering environment. Its integration with JACK makes it possible to use mastering tools such as JAMin to process the audio data.

howler.js - Javascript audio library for the modern web.

  •    Javascript

howler.js is an audio library for the modern web. It defaults to Web Audio API and falls back to HTML5 Audio. This makes working with audio in JavaScript easy and reliable across all platforms. Additional information, live demos and a user showcase are available at howlerjs.com.

MusicBobber - Awesome Audio Widget for any Android Music App

  •    Java

You know, guys, we have become a bit obsessed with music recently. See yourself by checking our previous work on the Audio Visualization View library. Since we wanted to create a companion to our equalizer and add to the collection of Android widgets, the idea to develop a nice and convenient audio widget was born almost immediately. So if you have already developed a music player and you feel that you want to make it even better, then you’re welcome to use our library and enjoy the results. Our invention can facilitate the user’s interaction with a music player and nicely decorate his device screen. Moreover, it’s really easy to integrate! Read our Case Study: Audio Widget Overlay View by Cleveroad to ensure that and find more of useful information.

supercollider - An audio server, programming language, and IDE for sound synthesis and algorithmic composition

  •    C++

SuperCollider is a platform for audio synthesis and algorithmic composition, used by musicians, artists, and researchers working with sound. It is free and open source software available for Windows, macOS, and Linux. SuperCollider was developed by James McCartney and originally released in 1996. In 2002, he generously released it as free software under the GNU General Public License. It is now maintained and developed by an active and enthusiastic community.

The Sound Object Library

  •    C++

The Sound Object Library is an object-oriented audio processing library. It provides objects for synthesis and processing of sound that can be used to build applications for computer-generated music.

p5.js-sound - p5.sound brings the Processing approach to Web Audio and p5.js. Demos:

  •    Javascript

p5.sound brings the Processing approach to Web Audio as an addon for p5.js. Functionality includes audio input, playback, manipulation, effects, recording, sequencing, analysis and synthesis. The library is designed to be used in tandem with p5.js.This version of the library is updated most frequently. A stable version comes with p5.js. Here's the Change Log.

SoundManager - Simple sound and music player class for playing audio on Mac and iPhone

  •    Objective-C

SoundManager is a simple class for playing sound and music in iOS or Mac apps. NOTE: 'Supported' means that the library has been tested with this version. 'Compatible' means that the library should work on this iOS version (i.e. it doesn't rely on any unavailable SDK features) but is no longer being tested for compatibility and may require tweaking or bug fixes to run correctly.

DX7-Supercollider - My accurate Yamaha DX-7 clone. Programmed in Supercollider.

  •    SuperCollider

You don't need to open the DX7.afx file. It just needs to be in the same directory as the DX7.scd. Just open the DX7.scd in Supercollider and run the big chunk of code starting from the line 35 and it's ready to use. Then run the mainCaller functions for new notes and to close notes send zero velocity from the mainCaller functions. The only requirement is to install the SC3-Plugins Ugen library because I use the FM7.ar Ugen at the heart of all operation.

SoundJS - A Javascript library for working with Audio

  •    Javascript

SoundJS is a library to make working with audio on the web easier. It provides a consistent API for playing audio in different browsers, including using a target plugin model to provide an easy way to provide additional audio plugins like a Flash fallback (included, but must be used separately from the combined/minified version).A mechanism has been provided for easily tying in audio preloading to PreloadJS.