A downloadable tool

Pensato is a Virtual Reality controller for performing music with Ableton Live.

Performers can load any Ableton Live set they wish into the VR environment which will react to the outgoing music.

Demo video: https://youtu.be/-42rTbgTBkg

Install instructions

Software Requirements:

Hardware Requirements:

  • Oculus Rift DK2
  • Leap Motion with VR mount

Installation Instructions:

  1. Install Python 2.7
  2. Extract pensato.zip to a location of your choice.
  3. Open up a command prompt and navigate to the Showtime-Python folder inside the extracted file location. Run the command python setup.py install to download the necessary Python libraries and install the server.
  4. The install script should copy some Python scripts into your Ableton Live folder, but if you have Live installed in a non-default location (C:\ProgramData\Ableton is the default), then copy the folder contents of Showtime_Live/Midi_Remote_Scripts to your Ableton Live Midi Remote Script directoy. Ableton have provided some handy instructions here.
  5. (Optional) If you are using LoopMIDI (used to increase the speed of communication between Live and Pensato) then start the program now.
  6. Run the LiveShowtimeClient.py server located at [Python_Installation_Directory]/Scripts/LiveShowtimeClient.py. Eg: C:\Python27\Scripts\LiveShowtimeClient.py
  7. (Optional) If you are using LoopMIDI then make sure to run the script with the flag --m 1 or the appropriate index for the LoopMIDI port. Eg: LiveShowtimeClient.py --m 1
  8. Start Ableton Live and go to Options->Preferences->MIDI/Sync. Set one of the control surfaces to "ShowtimeBridge". If ShowtimeBridge does not show up in the list of Control Surface scripts then make sure you have followed steps 3 and/or 4. The LiveShowtimeClient console should display some messages about registered methods.
  9. (Optional) If using LoopMIDI then set input to "loopMIDI Port" and set track, sync and remote to ON in the midi port section .
  10. Open the Ableton Live set that you wish to control with Pensato. A demo set is provided inside the "Ableton_pensato_demo" folder.
  11. If running Ableton Live on a separate computer rather than the VR machine, then edit config.json to point to the hostname or IP of the machine running the LiveShowtimeClient server and Ableton Live. Localhost is the default value.
  12. Run pensato.exe.


  • When entering Pensato, the orbs on the plinth in front of you will display all the clips and devices from an Ableton Live track when pressed.
  • The square buttons that appear above the orbs will trigger clips.
  • The sliders control instrument and effect device parameters. The up and down arrow buttons at the bottom of the device will scroll through more parameters.
  • If you add or remove tracks, clips or devices from Ableton Live whilst Pensato is running, you will need to restart Pensato in order to resync with Live's workspace.
  • Press R to recent the camera.
  • Press Esc to quit.


pensato_demo.zip 35 MB


Log in with itch.io to leave a comment.

Trying to get this set up, but when I run the LiveShowtimeClient.py server the window that pops up closes immediately. From the later steps it seems like this should be opening a window that persists. Any ideas?

Can you try running the script from a command prompt? Press Windows Key + R, type cmd.exe, type C:\Python27\Scripts\LiveShowtimeClient.py and see if there are any error messages. The window should stay up afterwards in case anything goes wrong.

line 946, in requireneeded =self.resolve(parse_requirements(requirements))File "C:\Python27\lib\site-packages\pkg_resources\__init__.py", line 833, in resolveraise DistributionNotFound(req, requirers)pkg_resources.DistributionNotFound: The 'netifaces' distribution was not found and is required by zeroconf

That looks as though the setup.py script didn't manage to install all the dependencies properly. Firstly I'd try running python setup.py install from inside the Showtime-Live-1.3 directory to try grabbing the server dependencies again. Let me know if you encounter any error messages during this step.

If that doesn't fix the problem and you're running Python 2.7.9 or higher, then try running C:\Python27\Tools\Scripts\win_add2path.py to add the Python scripts location to your path variable.

After that, try running pip install zeroconf in order to fix the dependencies for zeroconf. I also recommend running pip install netifaces to verify that zeroconf's dependencies installed correctly. You should now be able to run LiveShowtimeClient.py from any command prompt or the Windows run prompt (Windows key + R, LiveShowtimeClient.py).

Sorry about the hassle, the Ableton Live to Unity server is still quite experimental and it's currently my top priority to make it easier to install and use than the current system. Let me know if this fix works for you!