feature: serato-style "flips"

Bug #1768113 reported by Owen Williams
This bug affects 1 person
Affects Status Importance Assigned to Milestone

Bug Description

This weekend I learned about a feature that Serato has that could be implemented in Mixxx (if we want). Consider this is a rough proposal and placeholder for something that would make a good GSOC project.

As I understand it, "flips" are a fancy word for a type of user-created "macro" that reedits a track in terms of activating cuepoints, enabling or disabling loops, even activating rolls or censor mode at predetermined times. Once a recording is made, the user can load the "macro", press play, and the track will play back with all of those controls automated. Examples given to me:

* Cutting out a long breakdown of a song automatically
* Playing the second verse, then the first, then skipping to the third
* Looping the opening 4 times and then playing as normal
* activating the censor button on all the naughty words

I believe these macros are created in serato in realtime. You press a record button, and then play back the track and activate all the controls as you want. It will then quantize the operations if you want and save them.

When loading a track, you're presented with a list, similar to the list of presaved hotcues or loops, and if you select a flip it will activate.

I can think of ways in which this feature could be scaled up or down as needed. We could go all-in on some crazy automated javascript-creation thing where we can automate the whole mixxx interface.... or we could just have a CSV file that defines timecodes and operations.

* what happens when the user triggers operations while the macro is executing? What if I bail out of a loop early or hit a hotcue button?
* what happens if the user engages slip mode?
* where do we fit these operations in the UI?
* do we need to support multiple loop storage first? (I think we do, and should!)

This is a pretty advanced feature but the DJ telling me about it said it was very useful and some DJs do some crazy remix work with it. I think it's feasible to implement in Mixxx!

Be (be.ing)
Changed in mixxx:
status: New → Incomplete
status: Incomplete → Confirmed
Revision history for this message
Jan Holthuis (holthuis-jan) wrote :

For reference, here's some documentation about the data format that Serato uses for saving these "Flips": https://github.com/Holzhaus/serato-tags/blob/master/docs/serato_markers2.md#flip-entries

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers