Sign In:     


Forum: VirtualDJ Technical Support

Topic: stems_split and stems_split_unlink
Hi all,

My goal is to stems_split to any deck of my choice.

My workaround is combining stems_split and move_deck, or clone_deck [deck #], but unfortunately either breaks the "link" between the stems_split decks

I really like the linked decks feature and am trying all sorts of undocumented parameters with stems_split and stems_split_unlink to try to activate it or maintain it through moving deck.

Is there any parameter or other undocumented way to:
- stems_split to any deck other than the adjacent deck?
- maintain link through deck_move?
OR
- link two decks that haven't yet been linked with an undocumented verb or parameter?

I am knowledgeable enough about VDJScript and Skins to implement any suggested fixes. Please let me know if any of the above are currently possible.

Thanks!
 

Posted Fri 15 Nov 24 @ 5:11 am
Same request here, I would like to just clone_deck and link it to the same position, but can't find the linking part. I dont want to use stems_split because I want to keep the full audio on the original deck and have just a stem on the new one. My script is meant to be running during Automix, so that each new track gets split and the stem can go to a different audio channel Ive set for that deck. It works up until I pause or move the track position of the first deck, then the stem deck keeps playing. I guess I could map another button to manually sync the track position of the two decks but it would be nice to just keep them linked from the beginning. Otherwise can stems_split be used such that the original deck has its full audio?
repeat_start_instant "myScript" 1000ms & (var_equal "songname" "`deck 1 get_title`" ? nothing :  set "songname" "`deck 1 get_title`"  & clone_deck 3 & deck 3 only_Stem "Vocal") 
 

This feature was meant to be able to split stem parts of the song over two deck channels (as presented by controllers) for full deck manipulation of those parts (split) and also have the ability to maintain song stems structure as a whole sounding like the original (link). It was not meant to link two different songs (that's not a multi stem split of a track, that's a sync with probably slip mode usage and stem isolation) and most likely it won't work through a deck move as that is asking to move the linkage arbitrarily (although it should be possible in theory).

Loosely answering other questions

teslaaccord wrote :
Hi all,

Is there any parameter or other undocumented way to:
- stems_split to any deck other than the adjacent deck?


stemSplitLeftRight changes between vertical (e.g. split one part from 1 to 3 and keep the rest on 2, which works for keeping on one side of the fader) and horizontal (e.g. split from 1 to 2, which works for doing things with the stem parts on the opposite side of the fader), but that's about it.

The House Gecko wrote :
Otherwise can stems_split be used such that the original deck has its full audio?


Not sure how this makes sense, or maybe you should explain more (that's not a split, that's just the original track you started with).
 

The reason to have a copy of the track with just a stem is, in my case, for visuals on a livestream. For example I want to pipe the vocals to a lip syncing character, or possibly use just the beat for a visualizer's audio input, while the full track is still going to the audio capture of the streaming software. If there was a different feature to select an audio channel for a stem that would be ideal for this.
 

I have a windows plugin that could do this with some tweaks, basically branchfx with options to route to other decks, instead of wet/dry it duplicates the stem, stem is passed thru the fx so it makes no difference to the broadcast, it also sends to a receiver plugin on another deck.
 

Thanks for the quick responses! It sounds like linking decks would be useful for a lot of purposes and its already hidden inside the stems_split function so I hope the devs will consider adding it to the api. Im a programmer so I could give it a go if someone could point me in the right direction to start, either with exposing the functions code or the applications code, if thats even possible.
 

Also have a look at the get_spectrum_band script, it also allows to get spectrum of a specific stem for visualisation

Edit: or even get_level 'vocal'
 

branchFX just makes a copy of the sound buffer and passes a pointer to the receiver plugin, nothing clever about it.