Quick Sign In:  

Forum: VirtualDJ Technical Support

Topic: Stem mapping Kontrol F1
Anyone know of a mapping for the kontrol F1 incoporating the stems and f/x. I'm not mapping savy so I can't do it.
much appreciated.
BC
 

Posted Tue 17 Oct 23 @ 1:57 am
I can make one in a week or so..
 

Posted Tue 17 Oct 23 @ 5:47 am
I can't thank-you enough.

Very Much Appreciated!

Thank-you, Thank-you,

BC
 

Posted Wed 18 Oct 23 @ 2:02 pm
I do have four F1's (one per deck) that I mapped and use exclusively for Stems (with Stems padfx Echo out at the bottom of each row). Might not be the best "code-wise" way to do some of these functions, but everything works as I want so I'm good with that. Feel free to grab ideas from it ;-)

<mapper device="TRAKTORF1" author="BeatAddict" version="850" date="2023-06-29">
<info>http://www.virtualdj.com/manuals/hardware/ni/f1.html</info>
<map value="FILTER1" action="nothing"/>
<map value="FILTER2" action="nothing"/>
<map value="FILTER3" action="nothing"/>
<map value="FILTER4" action="nothing"/>
<map value="SYNC" action="loaded_song 'rating' 0 ? loaded_song 'rating' 1 : loaded_song 'rating' 1 ? loaded_song 'rating' 2 : loaded_song 'rating' 2 ? loaded_song 'rating' 3 : loaded_song 'rating' 3 ? loaded_song 'rating' 4 : loaded_song 'rating' 4 ? loaded_song 'rating' 5 : loaded_song 'rating' 0"/>
<map value="QUANT" action="reanalyze"/>
<map value="CAPTURE" action="reanalyze multi"/>
<map value="SHIFT" action="shift"/>
<map value="REVERSE" action="slip_mode ? dump while_pressed : reverse"/>
<map value="TYPE" action="file_info"/>
<map value="SIZE" action="edit_poi"/>
<map value="BROWSE" action="browser_window 'folders,songs'"/>
<map value="PARAM" action="browser_scroll"/>
<map value="PARAM_PUSH" action="browser_enter & lock_cues on & stem "rhythm" 50% & stem "bass" 50% & stem "instru" 50% & stem "vocal" 50% & effect_active 1 0 & effect_active 2 0 & effect_active 3 0 & effect_active 4 1 & loop off"/>
<map value="PAD1" action="stem "rhythm" 50%"/>
<map value="PAD5" action="stem "rhythm" 30%"/>
<map value="PAD9" action="stem "rhythm" 15%"/>
<map value="PAD13" action="stem "rhythm" 0%"/>
<map value="PAD2" action="stem "Bass" 50%"/>
<map value="PAD6" action="stem "Bass" 30%"/>
<map value="PAD10" action="stem "Bass" 15%"/>
<map value="PAD14" action="stem "Bass" 0%"/>
<map value="PAD3" action="stem "Instru" 50%"/>
<map value="PAD7" action="stem "Instru" 30%"/>
<map value="PAD11" action="stem "Instru" 15%"/>
<map value="PAD15" action="stem "Instru" 0%"/>
<map value="PAD4" action="stem "Vocal" 50%"/>
<map value="PAD8" action="stem "Vocal" 30%"/>
<map value="PAD12" action="stem "Vocal" 15%"/>
<map value="PAD16" action="stem "Vocal" 0%"/>
<map value="STOP1" action="padfx "echo out" 60% 1bt "stemfx:Rhythm""/>
<map value="STOP2" action="padfx "echo out" 50% 1bt "stemfx:Bass""/>
<map value="STOP3" action="padfx "echo out" 80% 1bt "stemfx:Instru""/>
<map value="STOP4" action="padfx "echo out" 80% 1bt "stemfx:Vocal""/>
<map value="VOLUME1" action="param_multiply 0.5 & stem "rhythm""/>
<map value="VOLUME2" action="param_multiply 0.5 & stem "bass""/>
<map value="VOLUME3" action="param_multiply 0.5 & stem "instru""/>
<map value="VOLUME4" action="param_multiply 0.5 & stem "vocal""/>
<map value="LCD_DISPLAY" action="get_beat_num"/>
<map value="LED_SYNC" action="get_beat"/>
<map value="LED_QUANT" action="off"/>
<map value="LED_CAPTURE" action="off"/>
<map value="LED_SHIFT" action="shift"/>
<map value="LED_REVERSE" action="reverse"/>
<map value="LED_TYPE" action="off"/>
<map value="LED_SIZE" action="off"/>
<map value="LED_BROWSE" action="on"/>
<map value="LED_PAD1" action="padfx "echo out" 60% 1bt "stemfx:rhythm" ? blink 1bt 90% ? color 'red' :color 'black' : play ? stem "rhythm" & param_bigger 49% ? blink 1bt 5% ? color 'white': color 'darkred' : color 'black' : stem "rhythm" & param_bigger 49% ? color 'darkred'"/>
<map value="LED_PAD5" action="padfx "echo out" 60% 1bt "stemfx:rhythm" ? blink 1bt 90% ? color 'red' :color 'black' : stem "rhythm" & param_bigger 29% ? color 'darkred'"/>
<map value="LED_PAD9" action="padfx "echo out" 60% 1bt "stemfx:rhythm" ? blink 1bt 90% ? color 'red' :color 'black' : stem "rhythm" & param_bigger 14% ? color 'darkred'"/>
<map value="LED_PAD13" action="padfx "echo out" 60% 1bt "stemfx:rhythm" ? blink 1bt 90% ? color 'red' :color 'black' : stem "rhythm" & param_bigger 0% ? color 'darkred'"/>
<map value="LED_PAD2" action="padfx "echo out" 50% 1bt "stemfx:Bass" ? blink 1bt 90% ? color 'red' :color 'black' : play ? stem "Bass" & param_bigger 49% ? blink 1bt 5% ? color 'white': color 'darkblue' : color 'black' : stem "Bass" & param_bigger 49% ? color 'darkblue'"/>
<map value="LED_PAD6" action="padfx "echo out" 50% 1bt "stemfx:Bass" ? blink 1bt 90% ? color 'red' :color 'black' : stem "Bass" & param_bigger 29% ? color 'darkblue'"/>
<map value="LED_PAD10" action="padfx "echo out" 50% 1bt "stemfx:Bass" ? blink 1bt 90% ? color 'red' :color 'black' : stem "Bass" & param_bigger 14% ? color 'darkblue'"/>
<map value="LED_PAD14" action="padfx "echo out" 50% 1bt "stemfx:Bass" ? blink 1bt 90% ? color 'red' :color 'black' : stem "Bass" & param_bigger 0% ? color 'darkblue'"/>
<map value="LED_PAD3" action="padfx "echo out" 80% 1bt "stemfx:Instru" ? blink 1bt 90% ? color 'red' :color 'black' : play ? stem "Instru" & param_bigger 49% ? blink 1bt 5% ? color 'white': color 'darkmagenta' : color 'black' : stem "Instru" & param_bigger 49% ? color 'darkmagenta'"/>
<map value="LED_PAD7" action="padfx "echo out" 80% 1bt "stemfx:Instru" ? blink 1bt 90% ? color 'red' :color 'black' : stem "Instru" & param_bigger 29% ? color 'darkmagenta'"/>
<map value="LED_PAD11" action="padfx "echo out" 80% 1bt "stemfx:Instru" ? blink 1bt 90% ? color 'red' :color 'black' : stem "Instru" & param_bigger 14% ? color 'darkmagenta'"/>
<map value="LED_PAD15" action="padfx "echo out" 80% 1bt "stemfx:Instru" ? blink 1bt 90% ? color 'red' :color 'black' : stem "Instru" & param_bigger 0% ? color 'darkmagenta'"/>
<map value="LED_PAD4" action="padfx "echo out" 80% 1bt "stemfx:Vocal" ? blink 1bt 90% ? color 'red' :color 'black' : play ? stem "Vocal" & param_bigger 49% ? blink 1bt 5% ? color 'white': color 'darkyellow' : color 'black' : stem "Vocal" & param_bigger 49% ? color 'darkyellow'"/>
<map value="LED_PAD8" action="padfx "echo out" 80% 1bt "stemfx:Vocal" ? blink 1bt 90% ? color 'red' :color 'black' : stem "Vocal" & param_bigger 29% ? color 'darkyellow'"/>
<map value="LED_PAD12" action="padfx "echo out" 80% 1bt "stemfx:Vocal" ? blink 1bt 90% ? color 'red' :color 'black' : stem "Vocal" & param_bigger 14% ? color 'darkyellow'"/>
<map value="LED_PAD16" action="padfx "echo out" 80% 1bt "stemfx:Vocal" ? blink 1bt 90% ? color 'red' :color 'black' : stem "Vocal" & param_bigger 0% ? color 'darkyellow'"/>
<map value="LED_STOP1" action="padfx "echo out" 60% 1bt "stemfx:rhythm" ? padfx "echo out" 60% 1bt "stemfx:rhythm" : get_beat_num 1"/>
<map value="LED_STOP2" action="padfx "echo out" 50% 1bt "stemfx:bass" ? padfx "echo out" 50% 1bt "stemfx:bass" : get_beat_num 2"/>
<map value="LED_STOP3" action="padfx "echo out" 80% 1bt "stemfx:Instru" ? padfx "echo out" 80% 1bt "stemfx:Instru" : get_beat_num 3"/>
<map value="LED_STOP4" action="padfx "echo out" 80% 1bt "stemfx:vocal" ? padfx "echo out" 80% 1bt "stemfx:vocal" : get_beat_num 4"/>
<map value="SHIFT_TYPE" action="loaded_song 'comment' "NightClubDJ""/>
</mapper>


 

Posted Fri 20 Oct 23 @ 7:48 pm
This is great, However, I have one F1, hoping PhantomDeejay or yourself can figure out how to use one unit to do two decks.
maybe using the knob to shift from deck 1 to deck 2.
Thank-you for the code
BC
 

Posted Fri 20 Oct 23 @ 11:57 pm
I do not have the Kontrol F1.. (looks like a stem controller)

Looking at the mapping.. One possibility, free up a button, say the CAPTURE button.. to toggle between deck 1 and deck 2, on the single Kontrol F1.
and change color from blue to red respectively, to represent the deck.

The consolidation that frees up the Capture button... would be to incorporates its current action into the
QUANT button: holding 1500ms ? reanalyze multi : reanalyze
(both types of reanalyzing done with same button, the addition Multi-BPM reanalyze now done with holding action of QUANT button)

NEW
CAPTURE mapping: toggle var '$MyActiveDeck'

the rest outlined:
set the LED_CAPTURE mapping for the colors
LED_CAPTURE mapping var '$MyActiveDeck' ? color 'blue' : color 'red'

then need to add a query to most, (if not all) of the other mappings

So change each [ORIGINAL MAPPING]
to
var '$MyActiveDeck' ? deck 1 [ORIGINAL MAPPING] : deck 2 [ORIGINAL MAPPING]


Just speculating out loud..


PS
Can also change the color of other unused button LEDs to also toggle the blue and red .. to more fully indicate which deck one is acting on (controlling) at the moment.

PSS
The above may work if you do not need to have access to stems on both decks at the same time. If you do need to change stems on both decks at the same time .. seems one may need to have halve the number of controls for each deck.. (since the number of buttons/sliders are the same)
Also one maybe able to add, double click, to the decreased number of buttons per deck, to get some of the functionality back.


-----------------
UPDATE:
Thought about it, a bit longer... maybe just add deck master to each of the lines of the mapping.. so that the actions will always be applied to the loudest (the master) deck.
Again this does not allow one to control both decks at the same time.
 

Posted Sat 21 Oct 23 @ 1:08 am
the editor timed out.. so

correction:
the line:
CAPTURE mapping: toggle var '$MyActiveDeck'
should be
toggle '$MyActiveDeck'


and additionally, for illustration, for example,
The new final new QUANT mapping would finally be:
var '$MyActiveDeck' ? deck 1 holding 1500ms ? reanalyze multi : reanalyze : deck 2 holding 1500ms ? reanalyze multi : reanalyze


---------
just some ideas that may help, as you ponder, for what will work best.

 

Posted Sat 21 Oct 23 @ 2:21 am
Any updates on this is coming along?

Thank-you
 

Posted Wed 01 Nov 23 @ 6:52 pm
Has the mapping been completed for the f1 controller yet?

Thank-you
 

Posted Fri 10 Nov 23 @ 2:57 am
SO it's been a while,
Is a complete mapping ready now? one controller but a mapping that can switch to each deck with the working colours?

Please advise,
 

Posted Fri 22 Dec 23 @ 4:43 pm
VDJ IWSPRO InfinityMember since 2014
Great Job, please one question. NI Traktor F1
Is it posible to write the correct code to set Stem Vocal on Deck over the Filter?
I try on FILTER 2 "stem_vocal_deck 1" but it doesn't work

i can't give the vocal on specific decks (works only on one deck (also default)

Thanks
 

Posted Sun 15 Dec 24 @ 2:24 pm