Wishlist: Send track to another deck (or implement controls that would allow scripting this)

Bug #1117722 reported by rob
This bug report is a duplicate of:  Bug #408111: Requesting "instant doubles" function. Edit Remove
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Mixxx
Confirmed
Wishlist
Unassigned

Bug Description

It seems that there's no way to access information about the currently playing track (ie: file location of the mp3), or to tell a deck to load a specific track (ie: take the file location for the track currently playing on Channel1, and tell Sampler1 to load the same track).

I'd like to build controller functionality that would allow sending a track to a sampler, syncing playposition, etc., then switching to the sampler as the sound source - to free up the deck to cue up another song as the last one is playing out. All of this can be accomplished with existing controls, seemingly, except for figuring out what file is playing on Channel1, and telling Sampler1 to load the same track. Syncing, etc. can all be done in script with current controls.

A hack for now might be to always engine.LoadSelectedTrack into a sampler via an engine.connectcontrol linked to LoadSelectedTrack (I'm assuming this would probably work, haven't tested), but it seems like it would be cleaner to only load the track into a sampler when it was needed.

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

This is sometimes called "instant doubles".

Changed in mixxx:
importance: Undecided → Wishlist
status: New → Confirmed
tags: removed: wishlist
Revision history for this message
jus (jus) wrote :

If we are talking Instant doubles, then this wish is a dupe of https://bugs.launchpad.net/mixxx/+bug/408111

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

Whoops -- I knew we had that bug but LP search wasn't getting it because of the quotes in the title. Marking as dupe of that.

Revision history for this message
rob (another-rob) wrote :

Cool, thanks. In addition to a straight "instant double" function, it would be nice to have direct access to some functions along the lines of:

file=engine.getValue("[Channel1]", "file_currently_loaded")
and
engine.setValue("[Sampler1]", "load_file", file)

...with that, you could implement the rest of the instant double functionality however you like in a controller script.

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

Sure -- some of this is covered in Bug #1115376. The control system doesn't work the way you proposed in your comment (only numeric types are allowed) but we would do something similar that would achieve the same thing.

I wouldn't implement instant doubles in script though because the processing delay would mean the original and its double would be slightly out of sync or it would be mixed with different control values (gain, eqs, etc.) for a moment before the script had a chance to make them all identical to the original.

Revision history for this message
rob (another-rob) wrote :

Makes sense. Another reason I've been looking for this functionality is to set up a second deck with the same song on it, and mix loops/hotcues from the second deck over the song still playing on the first deck. I imagine that I could make that work with an instant double function as long as it's not implemented in a way that unloads the song from the first deck though.

Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/6902

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.