Skip to main content

play audio files in performance contexts

Project description

walkman

Build Status License: GPL v3 PyPI version Code style: black

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.module.audio_input.0]
input_channel_index = 1

[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

Tests

Automatic

The run-tests script setups a test environment and runs automatic unit tests.

./run-tests

Manual

Please consult the respective README.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

audiowalkman-0.17.0.tar.gz (48.7 kB view details)

Uploaded Source

Built Distribution

audiowalkman-0.17.0-py3-none-any.whl (54.6 kB view details)

Uploaded Python 3

File details

Details for the file audiowalkman-0.17.0.tar.gz.

File metadata

  • Download URL: audiowalkman-0.17.0.tar.gz
  • Upload date:
  • Size: 48.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.13

File hashes

Hashes for audiowalkman-0.17.0.tar.gz
Algorithm Hash digest
SHA256 92b7f504663eeb0db97f1cc70f413d46c5ea9564c9435f8f3b5797c9ea7ad107
MD5 e1c93d4b6d5957f96d2b6a048124ca0b
BLAKE2b-256 808092009364d2c92d9dacc45a993d03023e518c40d63ec72c92af928ca4be5b

See more details on using hashes here.

File details

Details for the file audiowalkman-0.17.0-py3-none-any.whl.

File metadata

File hashes

Hashes for audiowalkman-0.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2bc3cc6b73d1e7d2b54e938249321525bd7ffca6992c4341e9f318f36299376a
MD5 ef2e0e47f827c3e720dadfd10bb9c3ac
BLAKE2b-256 2dee56778566858fc2e42c7e38a87494a2f59a23ec255402efeb7bb5838f14f2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page