3 ms·
How easy is it to integrate reaper with hardware? I find it really frustrating that the Ableton format is closed, so you can't write software to generate proje
by bravura 1y ago
How easy is it to integrate reaper with hardware?
I find it really frustrating that the Ableton format is closed, so you can't write software to generate projects for Ableton Push.
Want I want is the fastest path to making beats using physical interaction with MIDI hardware based upon loops and one-shots I have, without endless coding or fiddling. Open to purchasing new hardware.
- diggan 1y ago> I find it really frustrating that the Ableton format is closed Last time I checked, they're just plaintext XML, so while the format is proprietary, it's trivial to "reverse engineer", if you can even call it that. > Want I want is the fastest path to making beats using physical interaction with MIDI hardware based upon loops and one-shots I have, without endless coding or fiddling. Open to purchasing new hardware. If you're already using Ableton, this should be easy as long as your computer/audio interface has a midi out port, you basically just select what midi channel a Ableton midi track should use, and start sending stuff, no coding or fiddling required :)
- bravura 1y agoI'm aware that the format is undocumented XML, thank you for sharing anyway. I've found it painful enough to reverse engineer that it sucks the joy out of any Ableton programming. I honestly believe this is one of the most end-user unfriendly decisions in the digital music world. > If you're already using Ableton, this should be easy as long as your computer/audio interface has a midi out port, you basically just select what midi channel a Ableton midi track should use, and start sending stuff, no coding or fiddling required :) That requires clicking around in Ableton though, right? My goal is to generate like 100 different projects and jam on the effortlessly.
- diggan 1y ago> I honestly believe this is one of the most end-user unfriendly decisions in the digital music world. Eeeh, you're brushing past A LOT of decisions across the years, many much more unfriendly than "Lets dump undocumented but plain-text XML into a file and change the file-extension". At least some engineer as Ableton thought enough of us to let it be plain-text, that's pretty friendly compared to all the horribleness out there. > That requires clicking around in Ableton though, right? My goal is to generate like 100 different projects and jam on the effortlessly. Yeah, if you just wanna send midi out to one channel, I think you'd be able to do it with 2 or 3 clicks or something like that, unless you setup a template and you'll only have to do that once. Do you really have that many unique midi setups you switch frequently between? I have one "template" per setup, that I made once, that is used for a starting point for every project, where each one has a slightly different midi/audio in/out setup. But when I wanna jam, I essentially open up the template, then save-as, and it's ready for midi in/out and audio in/out, maybe something like that could work for you? Basically, instead of trying to aim to generate all combinations up-front, have one template as a starting point, go from there when needed.
- bravura 1y agoHave you reversed engineered the Ableton project format? I got frustrated the last time I tried, and currently LLMs tell me "Live updates break things constantly". Are my fears oversold? At the time I was doing it, I was trying to control all the parameters of Ableton native synths which was a headache. Now what I want to do is mainly create different kits of loops + one hits using ML, at the bare minimum. I have a background in audio ML so I imagine there would be other sorts of thing I might want to do later. But currently it's just one "template" with different filler sounds.
- diggan 1y ago> Have you reversed engineered the Ableton project format? I'm not sure I'd call it "reverse engineer" even, you'd do something like: $ mv DefaultLiveSet.als DefaultLiveSet.xml.gz $ gunzip DefaultLiveSet.xml.gz $ cat DefaultLiveSet.xml | head <?xml version="1.0" encoding="UTF-8"?> <Ableton MajorVersion="5" MinorVersion="10.0_370" Creator="Ableton Live 10.0d150" Revision=""> <LiveSet> <NextPointeeId Value="17335" /> <OverwriteProtectionNumber Value="2560" /> <LomId Value="0" /> <LomIdView Value="0" /> <Tracks> <MidiTrack Id="12"> <LomId Value="0" /> There isn't much more to it :) It wouldn't say it's the best structure/design, but it's all there in plain-text basically, so pretty easy to just read through it or search. > currently LLMs tell me "Live updates break things constantly". Are my fears oversold? Just stick with the same Ableton version for the duration of your work on those tracks, it's basically what you wanna do regardless of how complicated your project/setup is, as things do change between versions. But FWIW, none of the projects I've manually edited have broken, at least when I last moved from 11 to 12. > I was trying to control all the parameters of Ableton native synths which was a headache. For that you'd go for MIDI, but if you truly need 100 project files to run one by one, then generating those XMLs with whatever, changing the file-name and opening up in Ableton with the midi afterwards feels like it shouldn't be too hard.
- Octo-Shark 1y agoTouchdesigner TDA pretty much figured it all out a while ago, I use both together all the time.
- coldtea 1y ago>I've found it painful enough to reverse engineer that it sucks the joy out of any Ableton programming. I honestly believe this is one of the most end-user unfriendly decisions in the digital music world. It's supposed to be a DAW to sequence, record, and play live in. Not a target for programmatically generating songs. >That requires clicking around in Ableton though, right? My goal is to generate like 100 different projects and jam on the effortlessly. Does your goal involve a DAW?
- kristianbrigman 1y agoYou can do a lot of this in max (supported), and some in python (unsupported). Lots of hardware has decent hardware integration with live - a push might be interesting…
- AlecSchueler 1y agoVery simple, there's basically a scripting API that lets you touch most of what's going on in the editor or hardware interfacing with the hardware. It has official bindings for Lua and python as well as reaper's own language. https://www.reaper.fm/sdk/reascript/reascripthelp.html https://www.reaper.fm/sdk/reascript/reascripthelp.html That said I find myself more often leaning just to standalone scripts for that kind of thing and using the jack server on Linux to put them in between my hardware and reaper. That way it's quite portable if I want to switch out reaper and do something directly with a standalone synth for example and have things still work a little bit. I hear it a lot that people feel stuck on Mac or Windows for various software but for me the jack audio server keeps me tied to Linux!
- bravura 1y agoThis is very illuminating, thank you. I feel like a veil has been lifted from me. What sort of scripting are you doing? Do you mind sending me an email (in profile) if I have a few questions?
- diggan 1y ago> Do you mind sending me an email (in profile) if I have a few questions? Why don't you ask here so we can all benefit (maybe) from the answers? :) Besides, might be more people who can answer too, and no added pressure on parent!
- bravura 1y agoSure, I can describe some of the basics I'm trying to do. My goal is to autogenerate "projects" with loops and one hits, so I have like 100 candidate "songs" or "kits" to work with just using hardware and avoiding a DAW. And then to quickly jam on each song/kit to create an arrangement in hardware that I can save. Ending up with 20 scratch arrangements that I can load into a DAW and then produce / etc more carefully. I want to load a "kit" into the MIDI controller and trigger sounds by hitting buttons. That part seems clear to me with JACK. That I can basically drop straight into hardware and start working with my audio material. Now where I feel stuck is I'd like my knobs to do basic filtering, I'd like the loops to loop when I trigger them, and I'd like to be able to save my jammed arrangement to load into a DAW later. Saving it seems like I could just save MIDI. For filters, I am not sure which library I would use, and here is where it seems like I should be controlling a real DAW (so I get the same filter during my jam as in postproduction). For triggering a loop that goes and loops, I have to write that by hand? Apologies if what it sounds like what I want is: "I can use software to create 100 candidate Ableton projects with the clips pre-mapped and do a looped arrangement very quickly."