A Python module written in C for digital signal processing, enabling real-time audio manipulation and synthesis within Python scripts.
Pyo is a Python module written in C for digital signal processing, enabling developers and musicians to create and manipulate audio signals in real time directly within Python scripts. It provides a wide range of DSP primitives, from basic filters and synthesis to complex algorithms like granular synthesis, and supports protocols like OSC and MIDI for external control. The module solves the problem of integrating high-performance audio processing with the flexibility and ease of Python programming.
Audio developers, musicians, researchers, and educators who need to implement real-time audio processing, sound synthesis, or experimental music composition within Python environments.
Developers choose Pyo for its seamless integration with Python, allowing complex DSP chains to be scripted and controlled in real time without leaving the Python ecosystem. Its combination of performance (via C), extensive feature set, and support for standards like OSC and MIDI makes it a unique tool for creative audio programming.
Python DSP module
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Enables live audio manipulation directly in the Python interpreter, as shown in examples where sounds are played and modified interactively without external tools.
Includes a wide range from basic filters to advanced granular synthesis, allowing for creative sound design with minimal external dependencies.
Supports standard protocols for seamless communication with hardware controllers and other software, enhancing interactivity in audio applications.
Available via pip for Python 3.9+ on Windows, macOS, and Linux, simplifying deployment across different environments without manual compilation.
Requires compiling from sources on some platforms, which can be challenging for users unfamiliar with C extensions or build systems, as noted in the README.
Focuses on the audio engine, so creating graphical interfaces necessitates additional libraries like PyQt or Tkinter, increasing development overhead.
Being Python-based, real-time audio processing might face latency due to Python's global interpreter lock, especially on lower-end or unoptimized systems.