/Showtime-Live

Showtime plugin for Ableton Live

Primary LanguagePython

Showtime-Live

This repository is for a bridge connecting Ableton Live to a Showtime network.

Requirements:

Installation - All

  • Install using python setup.py install
  • If you have Ableton Live installed in a non-default location, then copy the contents of Showtime_Live/Midi_Remote_Scripts to your Ableton Live Midi Remote Script directoy. Ableton have provided some handy instructions here.
  • From a command prompt or terminal run ShowtimeLiveServer.py. it is installed as a script, so should be callable globally. If you are on Windows, you can locate the script in [Python_Install_Directory]/Scripts/ShowtimeLiveServer.py
  • If you're running a seperate Showtime stage node then you can specify its address at runtime. Use ShowtimeLiveServer.py --help to list the available commands.
  • Start Ableton Live and underneath Preferences/Options->Midi select "ShowtimeBridge" from the control surface dropdown, and "LiveShowtime Midi" or your loopMidi port (Windows only).

Installation - Windows

Rtmidi-python can't create a virtual midi port on Windows due to limitations in the Windows multimedia api. Instead, use a tool such as loopmidi to create a virtual loopback port. Run the ShowtimeLiveServer.py with the flag --listmidiports to print out a list of available midi out ports, then run the script with -m # where # is the midi port to use. IMPORTANT - Currently the --listmidiports command will crash. If you are using LoopMidi then try using numbers starting from 0 and increasing until the LoopMidi application shows a constant stream of data flowing through it. I've had the most success with midi index 1.

Current exposed methods

Troubleshooting

  • This is very much an alpha release, so there are quite a few bugs that are still hanging around and there's plenty of api calls that need to still be exposed from Live. If you restart the LiveShowtime client whilst Live is running, then unloading and reloading the ShowtimeBridge Preferences->Midi->Control Surfaces will refresh the connection.