Ive been trying to decide on what to take in school and I ran into this conversation in my thread and I decided I would be interested in this since anything code related I know can be done in my jobs which require that.
I am wondering if THIS course is the direction to take to go toward doing what these guys are talking about
Heres the conversation:
Realising that my max for live DJ app for grid controllers has grown beyond the original scope. I've been using it for chopping and mashing up samples on a few gigs, as well as straight DJing. Also thinking I'd like to be able to chop and mess with more than one sample at a time, and the way I've laid it out is pretty specific to me. So, I've started building an interface where you can lay out the controls how you like, depending what you're doing. Then be able to preset, save and recall the layouts.
the MIDI Remote Scripts are written in Python. but there's no easy way to have a user interface for them. you'd have to include an OSC library and then use an external app or max for live device to talk to the python script. they're also not so easy for the user to add into Ableton, at least not as easy as dragging a Max for Live device onto a track.
all the API stuff I've built already, and I'd like the UI to be a Max for Live device. many benefits in the way the UI objects save their values with the Live Set and allow you to create device presets.
Hmm I would've thought you could script stuff for the GUI in it? You should be able to play around with what the user sees in ableton? Although debugging is a different ballgame, live is definitely easier for that. I would've thought doing stuff directly with python rather than with live/or js to parse to python would be cleaner but that's just how I see it. I haven't done any scripting for ableton, only heard of a few people doing it.
I would recommend learning JS over doing it in live - as it's always good to learn new skills and your live chops must be insane by now! so good to try something else. Although JS is still a wild west for programming, it's still transferable. I think you would get a real kick/enjoy doing some C++/openframeworks/using maximilian. Processing is a fun starting point for that and I have a lot of resources if you're ever interested.
unfortunately no MIDI Remote Script has a GUI. definitely none of the ones included with Ableton. i'd assumed there was a reason for that. and there'd be no clear way to open and close the GUI. unless you talked to it through OSC or network protocol from another app or max for live device. or included a library to observe the keyboard and hardcoded a key command. it may be possible you could include a GUI library in the Python script and open it up by pressing a button on a controller. it's one of the things that puts me off them. no way to change functionality or layout on screen for more advanced editing.
unfortunately you get little control over what the user sees in ableton through the API. apart from switching between the native views, zooming and resizing them. no way through the API to open a dialog window or floating window. the only option for that, and for GUI that mimics Live's, is using max for live and the included [live...] gui objects. opening subpatchers as floating windows.
i think i may dive into openframworks one day, and would likely enjoy the challenge... but i haven't found a need in anything i've done yet. especially as all of it is tied to Live in some way. partly because I don't think I'd enjoy trying to program a whole audio engine and GUI. just piggyback on top of Ableton's work and add the extra things I want ehehh.
i think it'd likely have to be some kind of audio-visual project. or something quite interactive musically, using sensors, kinect etc.
offer of resources and help much appreciated! hope that day will come sometime soon
Damn ok I would've thought you could script to and from parts of ableton including the GUI elements. All of the scripting/API feels pretty secretive eh, had a look around but there's not enough info on it. Shame.
Yeah it's more of removing unnecessary layers, although if there's so little on the python API it'll be much more enjoyable doing it in JS. It's also hilariously flexible (sometimes one can make mistakes somewhere and it'll compile and you won't know where it's fucking up but it'll do it's thing in a weird way and you'll be scratching your head
Cool, yeah it's plenty fun for visual stuff. Next time i'm in Bristol will bring laptop and can have a hack day if you're interested
yeahhhhhh. i think they did a really good, progressive thing in opening up some of the program to an API. but i really do want full access to everything, and it can get frustrating ehehh. and maynneee wait till you try and do anything with the Control Surface side of the API. like discovering what controllers are connected, or slightly altering or expanding the behaviour of a Launchpads python script. completely undocumented. head banging against walls trying to work out functions and what the arguments to a function are. i really think it's just a time thing though, they are trying to push it, but don't have the resources at the mo.
my one reason for wanting to do some stuff in python is that they haven't allowed access to everything in the python api to the max for live api. for example on the Push controller (using the python API) you can scroll through the Live Browser, load clips/samples onto track clip slots or into Simpler/Sampler midi instruments. you can't do that through Max for Live. so there's no way in my DJ device that you could scroll through the Browser, full of your tracks, and press one button to load it onto a track, "Deck A" or "Deck B". so you can't yet mimic the behaviour of Traktor, Serato or CDJs in that way. you also can't set, delete or change Warp Markers. which would be very handy for visualising CuePoints or Loop points. like you have on CDJs.
yeeee, living with Kate now, and got Andy over at the mo. welcome to crash on the couch anytime
I wonder if it's a case of thinking that max users didn't want too much of djing paradigms/they thought of it more as instrument or effects building? Max was never known for sequencing stuff per se. Differing expectations maybe? Shame. Aha yeahhh I know alllll about headbanging against undocumented APIs. Many hours spent googling trying to find someone somewhere that has the missing piece of the puzzle.
Fo' sure will have to crash on the couch at some point
Need to have a plot and see if I can make another Bristol trip this year.
aye yeah - http://julienbayle.net/ableton-live-...emote-scripts/