Posts Tagged ‘Ableton Live’

tldr; I did lots of steps and connected lots of pipes together to control audio and visuals in real time with a MIDI controller + Ableton + Unity + MIDI-OX (this was the secret sauce)

Intro

(FYI: This is a really really long explanation of my process with no code and no links to download it. Its mostly a record for myself, but maybe there is something here that will help you!)

I’ve been doing Houdini tutorials and was inspired by complex shapes I could make through combining simple functions like Subdivision, Taper, Twist & Copy To Points.

2021-03-28 – Clawed Ball, Houdini

From this, I wanted to manipulate the object in real time with a MIDI controller and decided to re-create the Houdini functions in Unity. The tweet below is the result:

There are 2 things I’d like to talk about here:

  1. Tendril Ball – The visuals
  2. MIDI Control – Using a MIDI controller to manipulate Ableton Live (audio) & Unity (visual) simultaneously

Tendril Ball

It’s a ball made of tendrils, hence the name.

First, I started by creating a mesh of a cube.
I used this site: http://ilkinulas.github.io/development/unity/2016/04/30/cube-mesh-in-unity3d.html

Then I added a parameter to add subdivisions to the cube along the Y-Axis.

Cube mesh with subdivisions.

Then I added a Twist parameter. Each “layer” starting from the bottom is rotated clockwise.

Next, I added a Taper parameter. Each “layer” starting from the bottom get smaller until the size is 0 at the top.

I now have a single “tendril”.

Tendril: Twisted and tapered.

Then I needed to find a sphere without too many vertices on it. I ended up using a “cube sphere” from https://catlikecoding.com/unity/tutorials/cube-sphere/ with a Grid Size of 2. This resulted in a sphere with 26 vertices.

Emulating Houdini’s Copy to Points node, I instantiated one tendril per vertex on the sphere, resulting in the Tendril Ball below.

Tendril ball: Copy to points

I then exposed 3 parameters:

  1. Distance
  2. Length
  3. Twist Amount

MIDI Control

For many years now I’ve been trying to find a good solution to send MIDI from a controller to Ableton Live and Unity simultaneously. Finally I found the missing piece of the puzzle and I have actually been on their website multiple times without realising the answer was always there! This is probably the main reason I wanted to write this blog post.

The answer is MIDI-OX (http://www.midiox.com/). It lets me take a signal from my MIDI controller (Behringer X-Touch Mini) and split/send it to 2 virtual MIDI ports. I am on Windows 10 and I use loopBe30 for virtual MIDI ports.

MIDI-OX

In Ableton, I receive MIDI input from the virtual port “01. Internal MIDI”. I loaded a Wavetable synth and mapped the macros to the first 3 knobs on the X-Touch Mini.

In Unity, I receive MIDI input from the virtual port “02. Internal MIDI”. I used Minis by keijiro (https://twitter.com/_kzr) to receive MIDI input. I map they first 3 knobs on the X-Touch Mini to control the 3 values on my Tendril Ball (Distance, Length & Twist Amount).

Behringer X-TOUCH MINI Midi Controller: Amazon.co.uk: Musical Instruments
Behringer X-Touch Mini

And thats it!

Sorry, not sharing any code because this is part of long ongoing project of mine and this is just one small piece of a much larger execution. I don’t really expect anyone to read all this anyway!

The next problem to solve is using the Push 2. The knobs are endless/relative encoders. Turning a knob doesn’t send a value from 0-127. Instead it sends a value saying whether it increased (< 0.5) or decreased (>0.5). I need to do more research into 2’s Compliment). When I turn the knob in one movement, Unity (Minis) is only receiving one event even though I can see many events being triggered in MIDI-OX and in the Unity Input Debugger. So if I turn a knob from 0 to max in one go, in Unity its only incrementing the value by a small amount.

Annotation 2020-04-14 000719

Its been over 3 years since I posted anything here, but this was so frustrating, I thought I would post all the solutions in one place if it could potentially help you save a few hours of tearing your hair out.

Its Easter Monday. One of my tasks today, before the end of the long weekend was to create a soundscape for my friend Adam’s short animation. Sounds easy enough, but I wasted hours trying to get Ableton to load and export video.

I am running:

  • Windows 10 Home (1903) 64-bit
  • DirectX 12.0
  • Ableton Live 10.1.9
  • Laptop with:
    • NVIDIA Geforce GTX 1060
    • Intel Integrated Graphics 630

 

PROBLEM : Can’t load video in Ableton Live 10 using Windows 10
SOLUTION: Install Matroska Splitter and FFDShow.

When I tried to drag a video in to the timeline in Ableton, it would crash or show error messages like “The file could not be read. It may be corrupt or not licensed”.

See: https://help.ableton.com/hc/en-us/articles/209773125-Using-Video

The first option, CCCP did not work for me. Neither did K-Lite Codec Pack Mega.

Only Option 2, Matroska Splitter and FFDShow, solved this issue.

 

PROBLEM : Video not playing in Ableton Live 10 using Windows 10
SOLUTION: Set NVIDIA to Integrated Graphics

Now that I could load the video, it wouldn’t play in Live. Instead I would just get a black screen in the video player.

In my case, I have a laptop with:

  • NVIDIA Geforce GTX 1060
  • Intel Integrated Graphics 630

See: https://forum.ableton.com/viewtopic.php?t=232488

Open the NVIDIA Control Panel and select “Manage 3D Settings”.

Click on Program settings, and add Live into the list.

Set the preferred graphics processor to “Integrated graphics”.

 

PROBLEM : Can’t export video from Ableton Live 10 using Windows 10
SOLUTION: Set the Export PCM Bit Depth to 16

The final problem was that I couldn’t export the video. Live would export the WAV and then just crash.

See: https://forum.ableton.com/viewtopic.php?t=231960

  1. Click on File > Export Audio/Video
  2. Set the PCM > Bit Depth to 16
  3. Select the Video Encoder Settings as you wish
  4. Click Export
  5. Voila!

 

And that’s it. I hope this one consolidated is helpful to you. Seem like a lot of people have issues with Live and Video.

 

Cheers,

Your friendly neighbourhood Ben X Tan.