PortAudio Audio I/O Library
www.portaudio.com
4
Leaving SiteNav
External Link Disclaimer
You are about to visit www.portaudio.com. This website is not operated by us. We are not responsible for its content or privacy practices.
About this website
PortAudio is a free, cross-platform, open-source audio I/O library that provides a uniform API for recording and playing sound across multiple platforms. Originally developed by Phil Burk and Ross Bencina, PortAudio has become the standard portable audio library since 2000. Key features: unified C API for audio input and output supporting blocking (read/write) and callback-based audio processing paradigms. Cross-platform support on Windows (WASAPI, DirectSound, ASIO, WDM-KS), macOS (CoreAudio), Linux (ALSA, JACK, PulseAudio, OSS), and other Unix systems. Multiple host APIs selectable at runtime, enabling ASIO for low-latency professional audio on Windows or CoreAudio on macOS. Callback architecture with real-time audio processing via user-provided callback function called at audio interrupt level for zero-latency processing. Blocking I/O mode via read/write functions for simpler programming models and integration with non-real-time code. Sample format support including 8/16/24/32-bit integer, 32-bit float, and custom formats with automatic conversion. Adjustable buffer sizes and latency settings from sub-millisecond (ASIO) to high-latency for stable playback. Full-duplex (simultaneous record and play) and half-duplex operation. Multiple device support with device enumeration, channel count, and sample rate queries. Stream time tracking and synchronization for sample-accurate timing. Thread-safe API for multi-threaded applications. Used by Audacity, JACK, SDL, SFML, and hundreds of audio applications. Bindings available for Python (sounddevice, pyaudio), Ruby, Haskell, and more.
Statistics
4
Views
0
Clicks
0
Like
0
Dislike