Living Looper
This repository is the Python CLI for the Living Looper, which can be used to export nn~ compatible Living Looper files.
For the instrument itself, see living-looper-sc
Python scripts
Using export.py, you can create your own Living Looper models from an nn~ compatible (causal) encoder-decoder model, e.g. RAVE.
- bring your own pretrained RAVE model
- clone this repo and create a Python environment with
nn_tildeandpytorch - run your RAVE model through
export.pyto produce a living looper.tsfile
NIME paper
This project was presented at NIME 2023. The full paper is available here
Models
A Living Looper instance includes a pretrained RAVE encoder-decoder and a living loop algorithm, both implemented with pytorch and exported as a TorchScript file. Plugins for music software define a real-time audio and GUI interface, but must load a .ts file which defines the sound and behavior.
You can make your own living looper .ts models from any nn~ compatible streaming encoder/decoder model (such as these) using the export.py script.
Repository Structure
export.py - Python script which converts a RAVE model to a Living Looper model
living-looper-sc/ - SuperCollider Quark with GUI
living-looper-core/ - common components of C++ Living Looper plugins.
living-looper-juce/ - JUCE plugin (WIP, not functional at present)
License
Some Living Looper models incorporate RAVE, which uses the Creative Commons Attribution-NonCommercial 4.0 International license.
The plugin components including living-looper-sc are licensed under GPLv3.
As I understand it, the above affects what you can do with the source code, for example, publishing your own fork is allowed, but selling a VST based on it is not. You are free to do anything you want with the actual plugins and trained models, including making commercial art installations or music releases.
Metadata
Release files for livinglooper 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| livinglooper-0.1.0.tar.gz | 33.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| livinglooper-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 68.1 kB
Release files / livinglooper-0.1.0.tar.gz
| Download URL | livinglooper-0.1.0.tar.gz |
|---|---|
| Size | 33.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b989183c130128b5d4475face19c525c9325cf1a7cac8491800970ca225446a2
|
|
BLAKE2b-256 checksum How to use checksums |
47637c022e59e676fcc117b4ae8dd89e9500c7acd4d419107b2209d86a216aa2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.7.1 CPython/3.9.13 Darwin/21.6.0
|
Release files / livinglooper-0.1.0-py3-none-any.whl
| Download URL | livinglooper-0.1.0-py3-none-any.whl |
|---|---|
| Size | 35.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e2a720baa02014090805b8c2b2e6551ed2e9a457c0c3cd9c4576579dab5e23b8
|
|
BLAKE2b-256 checksum How to use checksums |
e268cef86ee30a07e003ca8c2ead723d4162a3e48fa28a5cb8e1b8f979c6c1c1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.7.1 CPython/3.9.13 Darwin/21.6.0
|