magenta / magenta-studio

Magenta Studio is a collection of music plugins built on Magenta’s open source tools and models
https://g.co/magenta/studio
Apache License 2.0
993 stars 152 forks source link

LogicProX support? #17

Open maxn0d3x opened 5 years ago

maxn0d3x commented 5 years ago

LogicProX support is possible? via plugin or standalone? is there any alternative way to convert it to use in LogicProX?

Oh, I found this 👍 Logic Pro X: Scripter API

mattetti commented 5 years ago

Unfortunately LogicProX doesn't have an API allowing code to read/write to the session. The scripter API that you found is a MIDI FX that allows you to modify/generate MIDI data on the fly, not to read other tracks or inject data asynchronously. A potential way to integrate with Logic would be to write an AU plugin that would monitor the signal input we want to observe, store it, analyze it and create a file that could then be dragged and dropped on another track. As you can see that's not the easiest thing to code or to use.

usdivad commented 5 years ago

Another possibility might be a VST/AU that has its own internal MIDI viewer/editor, which output-wise would essentially override the clip that's already on the track (kind of similar to what the plugin version of Melodyne does with audio). Not sure if that'd be the easiest thing to use either though.

In any case, a general purpose Magenta Studio plugin seems like it could be quite useful, and is definitely something I'd be interested in working on! Just putting that out there if anyone else is interested in tackling this together :grinning:

mattetti commented 5 years ago

Unfortunately, I'm afraid MIDI clips aren't references to local files but in-memory/project data, and it's not available to plugins. ARA 2 might be an option here for Logic (TBD) but the plugin format is very niche and poorly supported. The only way I know would work would be to use project/session/state buffer parsers for each DAW. Unfortunately there aren't any open source codecs/parsers.

I agree that it would be a nice feature, unfortunately, the VST/AU plugin protocols don't allow for out of buffer/event interactions with the DAW :(

usdivad commented 5 years ago

Ah yeah, I was imagining a kind of "scan in real-time during a playthrough" mode to get the initial input MIDI data (so keeping track of each MIDI event that's output from the track), but that might end up being even more cumbersome than just importing files...

ARA 2 could be an interesting route -- thanks for bringing that up!

maxn0d3x commented 5 years ago

So, What is the best way to leverage Magenta Music + Studio for Logic ProX users?? Give us some tips! just working on AbletonLive and extract midi file?

mattetti commented 5 years ago

Magenta Studio has a standalone version, you could use this version, export a MIDI track from logic and then import the output of the plugin. The flow isn't ideal but it is better than nothing 😁

cle5eland commented 2 years ago

Any movement here? I'm not super familiar with the technical details, but would love a plugin version for Logic if it's APIs have changed :)

mattetti commented 2 years ago

Nothing new, Logic won't let plugins do that, but someone could do what @usdivad mentioned and create a more complex plugin, but that's a large investment.

cle5eland commented 2 years ago

Got it! Thanks :)