Closed DBraun closed 3 years ago
Thanks for this -- it's certainly an interesting feature!
That said, I think it might be better handled as a stand-alone tool or package that produces time-maps we can feed into pyrb.time_stretch
(or use outside of pyrb entirely). This will make it easier in the future to decouple updates in case the ASD format does change.
I also don't have ableton, or a machine capable of running it, so it's impossible for me to test this.
If you want feedback on the code in the PR, I'm happy to provide it, but I don't think we'll merge this.
That's a good call. Thanks for your feedback. I'll try to put it in a separate repo soon.
https://github.com/DBraun/AbletonParsing Here it is. It's been a long time since I tried to package up a real python module for distribution/peer review, so all feedback is welcome.
Reference Issue
N/A
What does this implement/fix? Explain your changes.
This adds a function
ableton_asd_to_time_map
for parsing Ableton.asd
warp files into atime_map
list to be used withpyrb.timemap_stretch
.Any other comments?
Example usage:
I wrote the code after reading https://github.com/jtxx000/extract-warp-markers. That project showed how to extract the BPM. I did some extra probing to find out how to get other fields such as
loop_start
,loop_end
,start_marker
,end_marker
,loop_on
. I think having that information could be really useful for other developers. Perhaps pyrubberband could handle looping one day.It's possible that this function could break if Ableton changes their ASD format... But I still think it's worth sharing. I'm using Ableton 10.1.30.