play audio files in performance contexts
Project description
walkman
Walkman is a minimalistic, robust software to trigger (audio) cues in performance contexts. It uses pyo as its backend and pysimplegui as its frontend. It can be configured by toml files.
Rationale
Live-electronic setups tend to be messy, difficult to maintain and difficult to test.
Furthermore many compositions with live-electronics make use of cue-based pattern, but in most of electronic music frameworks (Pd, Max/MSP, ...) no default implementation exists.
walkman
aims to improve the situation by providing a simple, declarative configuration language to setup programs based on cues.
The actual software is implemented in Python3, can be extended in python3 and can be tested with unit tests.
Installation
walkman is available on pip:
pip3 install audiowalkman
You can also use buildout to create an isolated environment. Please consult the respective README for more information.
Configuration file
# my_composition.toml
# ## General configurations ## #
[configure]
name = "my composition"
[configure.audio]
sampling_rate = 44100
[configure.input]
midi_control_list = [
# [midi control, midi channel]
[0, 1],
[1, 1]
]
[configure.input.channel_mapping]
# physical input -> input index
1 = 0
2 = 1
3 = [0, 1]
[configure.output.channel_mapping]
# output index -> physical output
0 = 1
1 = 2
2 = 4
3 = [5, 6]
[configure.module.sound_file_player]
replication_count = 1
[configure.module.sound_file_player.0]
# We can set values passed to '__init__'
auto_stop = false
# And we can also override the default values of
# 'initialize' method.
[configure.module.sound_file_player.0.default_dict.decibel]
value = -6
midi_control_index = 0
midi_range = [-120, 0]
# ## Cues ## #
[cue.1.sound_file_player.0]
path = "jungle_rain.wav"
decibel = -12
loop = true
[cue.2]
sound_file = false
[cue.2.harmonizer.0]
# Move in 10 seconds from decibel -20 to decibel 0
decibel = [[0, -20], [10, 0]]
factor = 4
Usage
walkman my_composition.toml
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file audiowalkman-0.8.0.tar.gz
.
File metadata
- Download URL: audiowalkman-0.8.0.tar.gz
- Upload date:
- Size: 41.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.8.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3a172227cf5f8e749feba6fc498518cf18febf1434a8d525f122e4f3cfb6eef7 |
|
MD5 | 751c10b3679ac5b5c194c9fd9f5dd4a7 |
|
BLAKE2b-256 | ece01f7177cdffd07a941505fa1d48276f58e4e3159e621ac070c5d1b891605f |
File details
Details for the file audiowalkman-0.8.0-py3-none-any.whl
.
File metadata
- Download URL: audiowalkman-0.8.0-py3-none-any.whl
- Upload date:
- Size: 44.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.8.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7f9be70df41e6a562a090a11345afd2d725c63542c5afaa15e48e7a15423aed4 |
|
MD5 | a723f3542c0753e5b269d67def201f26 |
|
BLAKE2b-256 | 5f698b511289aa89638fe9226bbb6be553177ebf569d3ef8631809dfd70c2a60 |