This application generates midi bifurcation diagrams generated from generated logistic map data.
Project description
bifurc2midi
This application generates midi bifurcation diagrams generated from generated logistic map data.
See instructions for installation on macOS for more detailed guide on getting started.
Installation
- Prerequisites:
- Python 3
- pip
Make sure pip is up to date:
python3 -m pip install --upgrade pip
- Install package from source code:
pip install .
- Now you can run the application from the command line e.g.
bifurc2midi --version
Usage
- For help:
bifurc2midi --help
- Run with default settings:
bifurc2midi
This will generate a midi file in the current working directory.
- Sending midi output to a specific device:
bifurc2midi --midi-out-device device_name
Where device_name
is the name of the midi device you want to send the output to. Use a device name
of 'default' to use the first available device e.g.
bifurc2midi --midi-out-device 'device_name'
- Enabling midi loopback driver on macOS (e.g. for use with DAWS):
- Open 'Audio MIDI Setup.app'
- Click 'Window' -> 'Show MIDI Studio'
- Double click 'IAC Driver' device
- Check 'Device is online' checkbox
- Click 'Apply'
- Make sure 'IAC Driver' enabled as a midi input device in your DAW
Development
-
Pre-requisites:
- Python 3
- pip
- virtualenv
-
Use the Makefile for local development:
- Activate a virtual environment:
make virtualenv
- Activate the virtual environment (not strictly necessary, if using the Makefile only):
source venv/bin/activate
- Install dependencies:
make install
Then you can:
- Run the application:
make run
Extra arguments can be passed by providing EXTRA_ARGS variable e.g.
make run EXTRA_ARGS="--help"
- Run tests:
make test
- Run linter:
make lint
make fmt
can be used to automatically fix some linting errors.
- Other useful make targets are provided too, see the Makefile for details. Or run
make
/make help
TODO
- Investigate improving blending of note transitions/overlaps
- Add tests, replace the placeholder test
- Run tests in github actions
- Release as a package
- Review what is settings/parameters are configurable
- Installation shell script
- Add support to specify the starting note
- GUI
- Realtime parameter tweaking as it sends midi to output
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 bifurc2midi-0.0.1.tar.gz
.
File metadata
- Download URL: bifurc2midi-0.0.1.tar.gz
- Upload date:
- Size: 9.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | baab410a55ce312e830443c4fc231c9dbef71a7567474647e229186f94d07663 |
|
MD5 | e906ee06967be005c02136ea8c5d8526 |
|
BLAKE2b-256 | 86ae2e68409e5ef49d559df6099129fa89720a2cc80bc37b627b40ab5f95468f |
File details
Details for the file bifurc2midi-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: bifurc2midi-0.0.1-py3-none-any.whl
- Upload date:
- Size: 9.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2ccf8cbbb87e53d8d85c46cc12af347ae8fa9796a4eca5c776c707463d161754 |
|
MD5 | c3139da87bde8ad31c476aefc78a1b3a |
|
BLAKE2b-256 | 97a44e48027cba085d99346c8fb9f5b311d433277dcaac2cdac81410e78fe754 |