I'm very happy to announce the release of pyo 1.0.1, available for python 2.7, 3.5, 3.6, 3.7 and 3.8.
Pyo is a Python module written in C to help real-time digital signal processing script creation. It provides a complete set of classes to build audio softwares, compose algorithmic musics or simply explore audio processing.It is available for Windows, macOS and linux. It is released under the LGPL 3 license.
Official web site: http://ajaxsoundstudio.com/software/pyo/
pyo's documentation: http://ajaxsoundstudio.com/pyodoc/
Latest sources and bug tracker: https://github.com/belangeo/pyo
The package is now uploaded to pypi.org and can be installed (for 32-bit or 64-bit) under MacOS, Windows and linux with pip. Just run the command:
python -m pip install pyo
For all the details and how to uninstall version prior to 1.0.0, see this page in the documentation:
- Audio server falls back to playback-only mode if jack server has no input ports. - Fixed setting value of ControlSlider from national keyboard layout. - Fixed segfault when CallAfter's callback results in deleting itself. - Fixed tkinter font size on MacOS (issue #163).
- Added a clear() method to Mixer object to delete all inputs at once. - Added new object: Binaural, 3D stereo spatialization. - Added a DC blocker inside the feedback loop of Harmonizer object. - Added setChannelNames(names) method to Spectrum and Scope objects. - Added beatToDur(beat, bpm) function.
Events framework (new framework to sequence events):
Set of tools to generate sequence of events. The purpose of the Event framework is to allow the user to generate a sequence of events with as few as possible parameters to specify. The Events object is the heart of the framework. An Events object computes parameters, generally designed with event generator objects, builds the events and plays the sequence.
See the Events framework examples in the documentation for different use cases.
- EventScale: Constructs a list of pitches according to its arguments. - EventGenerator: Base class for all event generators. - EventKey: An EventGenerator that allow to retrieve the value of another parameter. - EventSeq: Plays through an entire list of values many times. - EventSlide: Plays overlapping segments from a list of values. - EventIndex: Plays values from a list based on a position index. - EventMarkov: Applies a Markov algorithm to a list of values. - EventChoice: Plays values randomly chosen from a list. - EventDrunk: Performs a random walk over a list of values. - EventNoise: White, pink or brown noise generator. - EventCall: Calls a function, with any number of arguments, and uses its return value. - EventConditional: Executes one generator or the other depending on the result of a condition. - Events: Sequencing user-defined events to form musical phrases.
- let statment can now store a complex number. - Expr now can handle multiple input sources. - Expr now can generate multiple output signals. - constants (pi, twopi, e, sr) can be used without braces.
New example categories:
- How to use OSC with pyo - Utilities - Events framework - Evaluating prefix expression
Olivier Belanger firstname.lastname@example.org http://olivier.ajaxsoundstudio.com/
<P><A HREF="http://ajaxsoundstudio.com/software/pyo/">Pyo 1.0.1</A> - short Python DSP library. (27-Nov-19)