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.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


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.9.0.tar.gz (41.8 kB view details)

Uploaded Source

Built Distribution

audiowalkman-0.9.0-py3-none-any.whl (44.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for audiowalkman-0.9.0.tar.gz
Algorithm Hash digest
SHA256 f868a36e48df009c155a1044b64b9285d1e8038c5b54357413ff5f553fc29f65
MD5 e9395bb7b875e93b3a6e8544fda47857
BLAKE2b-256 6cb9bf1fec780c2b6b7f174d0f95fcc036c5ea07a35022666f8d3ecaae3db64b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: audiowalkman-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 44.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.13

File hashes

Hashes for audiowalkman-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ff582289f80d8e7a581cd1512c7e9b5f9fbd6ba00467ed3cc42b9edf9f7470a2
MD5 ad97a6de90d5ce14d466deedb7e00a53
BLAKE2b-256 48513b029007528b4f18938ce150cbcf40f13860123dfae522fc72b98fcb8a6a

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