TDAbleton - TouchDesigner Ableton Connection

Got it, never done a lot more than checking out the sample projects for the old one so looking forward to this!

Note to anyone using the experimental version…

If you get an error on startup about stripsegments parameter, it means you need the latest TD release. I incorporated a newly developed feature.

Posted version 1.3.2

  • Project saved in TD official instead of experimental to avoid startup msgs

Thanks Ivan!

would it be possible to song/info/time into the time path to get TD to follow Ableton on the time line?

Version 1.4.0 posted.

This will probably be the last version before this starts going in the palette and updated in TouchDesigner releases.

Changes:

  • MIDI now has Python callback option
  • All output DAT tables now have header row
  • You can now strip MIDI OSC address prefixes
  • Improved error messages
  • abletonPackage now has help/version parameters

Version 1.7.0 posted in top post.

I haven’t been updating here, as TDAbleton can now be found in the palette, but figured I’d do an early release here until next TD version comes out.

Notable new features:

  • Improved clip support in abletonTrack
  • Ableton LOM parameters now work better with expressions and exports
  • abletonDeviceParameters component shows all parameters on a device

Guess I should note that the format of the zip has changed for ease of integration into TouchDesigner installers.

Samples/TDAbleton/TouchDesigner folder has MIDI Remote Script. Copy it into your Ableton MIDI Remote Script folder.

Demo project is in Samples/TDAbleton/Demo Project. The best way to get tdAbletonPackage is from inside there: /project1/tdAbletonPackage.

Version 1.8.0 is up on the top post.

  • abletonClipSlot COMP for working with clip slots and MIDI clips (read/write notes)
  • various bug fixes and optimizations

Thank you Ivan for this great addon to TD!

I am trying to figure out, how to fire a scene in Ableton from TD.
Can someone give me a hint on how to achieve this?

Thanks.

@django

Good feature! I haven’t built a utility for that, but it is very easy to do using the powerful “RunRemoteCode” method of the tdAbleton component:

RunRemoteCode lets you run Python commands in the MIDI Remote Script. For a mind-blowing list of possibilities, see: julienbayle.net/PythonLiveAPI_do … ive9.6.xml

If you want to experiment with this stuff, the fastest and easiest way is the Ableton Console: derivative.ca/wiki099/index. … ment_Tools

Thank you Ivan, it works like a charm and the possibilities of running remote code are indeed mind blowing.

But I am not a 100% sure, how these commands translate.

To call “Live.Scene.Scene.fire()”, I have to run “op.TDAbleton.RunRemoteCode(‘SONG.scenes[0].fire()’)”

How would I call for example “Live.Application.Application.View.focus_view()”?

So, views are something I haven’t really dived into, but I can give you some starting points.

First, there are the convenience variables set up for you, listed in derivative.ca/wiki099/index. … ment_Tools
APP is used to access the Live application.

So to access the view, you’d just send “APP.view”. “Live.Application.Application.View” is actually the class name, so you have to look in the documentation for the property that holds an object of that class. In this case, it’s “view”.

The other thing is that in those rather inadequate Live Object Model docs, they list the arguments for functions under the title:

This has two arguments and arg2 is a string that apparently identifies a view. This is where it gets into territory that you’ll have to experiment with. And for that, I highly recommend typing commands directly into the Ableton console until you find something that works.

Got it. Thanks again Ivan :smiley:

Would be dope to have a feature that will automatically open the live set associated with a touch file!

Hi,

Thanks for all the work that has gone into this.

I have been going through the Wiki and getting somewhere . Connection is established.
I can see the action of a clip being triggered manually in Ableton in the ‘abletonTrack1’ base as well as tempo data flowing both ways etc

I have streams of data flowing in that I am using to affect visuals, I would like to have that data also trigger clips or samples in Live. I am yet to get this going. I have created TDA midi devices to try and trigger MIDI clips, no luck yet , but i think this is the right direction - but how to trigger audio clips?

In the end do these (midi and audio clips/samples) need to be treated seperately or is there a simple way to fire clips?

thanks,

juddy

derivative.ca/wiki099/index. … letonTrack
If you get the latest version, you’ll find these features very helpful for triggering clips from Python.

derivative.ca/wiki099/index. … onClipSlot
This one has similar features, with more direct control of clips

I put the latest features in the Talk: (aka discussion) sections while they’re still in the experimental stage.

OK , thanks Ivan,

cheers,

With V1.80, calling ‘op.TDAbleton.SongInfo’ hangs TouchDesigner. I can poke that dictionary with len(), and access other attributes, but when I attempt to access ‘tracks’ seems to be the specific point of failure (like 'op.TDAbleton.SongInfo[‘tracks’]). Similarly, trying to use an ‘ExamineDAT’ on the TDAbleton Op, and turning on ‘Expand Classes’ with ‘Extensions’ enabled hangs TD. Using TD 2017.35550.

Are you trying to print SongInfo? Because it gets incredibly huge very quickly and can take multiple minutes to print out. If you want to print, try op.TDAbleton.SongInfo[‘tracks’].keys(). You basically have to print keys for everything but the furthest branches of that dictionary.

If you’re not trying to print, post the code you’re using to access SongInfo. Also let me know if you’re using the demo song or your own.

Cool that you’re going deep :wink: