PortAudio - Portable Audio Library |
PortAudio is a cross platform audio I/O library proposed by Ross Bencina to the music-dsp mailing list. It provides a very simple API for recording and/or playing sound using a simple callback function. It is intended to promote the exchange of audio synthesis software between developers on different platforms. Example programs are included that synthesize sine waves and pink noise, perform fuzz distortion on a guitar, list available devices, etc.
This website is for implementations of the PortAudio library by Phil Burk of SoftSynth.com. Phil uses PortAudio as the basis for audio I/O in JSyn,.a real-time synthesis API for Java and 'C'.
For complete information, and for implementations on other platforms, please visit the PortAudio Home Page.
Implementation for DirectSound on Windows (BETA RELEASE, ONLY SUITABLE FOR TESTING)Implementation for SoundManager on Macintosh (ALPHA RELEASE, ONLY SUITABLE FOR TESTING)
The PortAudio API is described fully in the "portaudio.h" include file.
Here is a short tutorial on how to program using PortAudio.
If you find bugs in one of these implementations, or have suggestions, please e-mail them to Phil Burk.
If you make improvements to the library, please send them to the us so we can incorporate the improvements.
I also encourage you to join the PortAudio mail list maintained by Ross Bencina. See the home page above for more info.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: