Stem Deck Reset upon loading next stem track
![DJ ALX](https://s.gravatar.com/avatar/78fed18fbea52c82b6dc10baa5447bbb?s=480&r=pg&d=https%3A%2F%2Fcdn.auth0.com%2Favatars%2Fdj.png)
As stated in the subject, is there a way to reset the stem deck controls each time i load a song in the same deck?
For example if last song leaves the deck with certain stems muted, certain fx on or off, certain filters at a given position, when i load the next song I have to reset the stem mutes, stem volumes, the FX mutes and FX volumes and filters.
This not only slows down a performance but it can be a show stopper when you have to act fast.
Please help.
Best Answers
-
I would add this to the S3Stems.qml🙂
1 -
Your code already contains this code passage that caused an error🙂
AppProperty { id: stemMuted_1; path: "app.traktor.decks." + deckIdx + ".stems.1.muted" } AppProperty { id: stemMuted_2; path: "app.traktor.decks." + deckIdx + ".stems.2.muted" } AppProperty { id: stemMuted_3; path: "app.traktor.decks." + deckIdx + ".stems.3.muted" } AppProperty { id: stemMuted_4; path: "app.traktor.decks." + deckIdx + ".stems.4.muted" }
1
Answers
-
I quickly created a small example for you in QML.
Maybe you can do something with that.
If not, you'll have to wait until December 6th.AppProperty { id: stemMuted_1; path: "app.traktor.decks." + deckIdx + ".stems.1.muted" } AppProperty { id: stemMuted_2; path: "app.traktor.decks." + deckIdx + ".stems.2.muted" } AppProperty { id: stemMuted_3; path: "app.traktor.decks." + deckIdx + ".stems.3.muted" } AppProperty { id: stemMuted_4; path: "app.traktor.decks." + deckIdx + ".stems.4.muted" } AppProperty { id: stemVolume_1; path: "app.traktor.decks." + deckIdx + ".stems.1.volume" } AppProperty { id: stemVolume_2; path: "app.traktor.decks." + deckIdx + ".stems.2.volume" } AppProperty { id: stemVolume_3; path: "app.traktor.decks." + deckIdx + ".stems.3.volume" } AppProperty { id: stemVolume_4; path: "app.traktor.decks." + deckIdx + ".stems.4.volume" } AppProperty { id: stemFilterOn_1; path: "app.traktor.decks." + deckIdx + ".stems.1.filter_on" } AppProperty { id: stemFilterOn_2; path: "app.traktor.decks." + deckIdx + ".stems.2.filter_on" } AppProperty { id: stemFilterOn_3; path: "app.traktor.decks." + deckIdx + ".stems.3.filter_on" } AppProperty { id: stemFilterOn_4; path: "app.traktor.decks." + deckIdx + ".stems.4.filter_on" } AppProperty { id: stemFilter_1; path: "app.traktor.decks." + deckIdx + ".stems.1.filter_value" } AppProperty { id: stemFilter_2; path: "app.traktor.decks." + deckIdx + ".stems.2.filter_value" } AppProperty { id: stemFilter_3; path: "app.traktor.decks." + deckIdx + ".stems.3.filter_value" } AppProperty { id: stemFilter_4; path: "app.traktor.decks." + deckIdx + ".stems.4.filter_value" } AppProperty { id: stemFxSendOn_1; path: "app.traktor.decks." + deckIdx + ".stems.1.fx_send_on" } AppProperty { id: stemFxSendOn_2; path: "app.traktor.decks." + deckIdx + ".stems.2.fx_send_on" } AppProperty { id: stemFxSendOn_3; path: "app.traktor.decks." + deckIdx + ".stems.3.fx_send_on" } AppProperty { id: stemFxSendOn_4; path: "app.traktor.decks." + deckIdx + ".stems.4.fx_send_on" } AppProperty { id: stemFxSend_1; path: "app.traktor.decks." + deckIdx + ".stems.1.fx_send" } AppProperty { id: stemFxSend_2; path: "app.traktor.decks." + deckIdx + ".stems.2.fx_send" } AppProperty { id: stemFxSend_3; path: "app.traktor.decks." + deckIdx + ".stems.3.fx_send" } AppProperty { id: stemFxSend_4; path: "app.traktor.decks." + deckIdx + ".stems.4.fx_send" } AppProperty { id: deckLoadedSignal; path: "app.traktor.decks." + deckIdx + ".is_loaded_signal"; onValueChanged: { if (value) { stemMuted_1.value = false; stemVolume_1.value = 1.0; stemFilterOn_1.value = false; stemFilter_1.value = 0.5; stemFxSendOn_1.value = false; stemFxSend_1.value = 1.0; stemMuted_2.value = false; stemVolume_2.value = 1.0; stemFilterOn_2.value = false; stemFilter_2.value = 0.5; stemFxSendOn_2.value = false; stemFxSend_2.value = 1.0; stemMuted_3.value = false; stemVolume_3.value = 1.0; stemFilterOn_3.value = false; stemFilter_3.value = 0.5; stemFxSendOn_3.value = false; stemFxSend_3.value = 1.0; stemMuted_4.value = false; stemVolume_4.value = 1.0; stemFilterOn_4.value = false; stemFilter_4.value = 0.5; stemFxSendOn_4.value = false; stemFxSend_4.value = 1.0; } } }
1 -
Oh wow nice! I will try this immediately.
in what QML file do i insert the code? the stem or deck qml or any other?
Also, do i place the code anywhere in the qml?
Thank you!
0 -
I would add this to the S3Stems.qml🙂
1 -
No, code doesnt seem to work.
I placed it at the end of the S2Stems.qml. Then i thought the last bracket wasnt needed, took it out but still didnt work.
I guess Ill have to wait till Dec 6th.
No problem.
0 -
Please upload your S3Stems.qml🙂
0 -
Here is my latest working S3Stems.qml
0 -
Your code already contains this code passage that caused an error🙂
AppProperty { id: stemMuted_1; path: "app.traktor.decks." + deckIdx + ".stems.1.muted" } AppProperty { id: stemMuted_2; path: "app.traktor.decks." + deckIdx + ".stems.2.muted" } AppProperty { id: stemMuted_3; path: "app.traktor.decks." + deckIdx + ".stems.3.muted" } AppProperty { id: stemMuted_4; path: "app.traktor.decks." + deckIdx + ".stems.4.muted" }
1 -
Other way of doing this is mapping all submixer commands to your deck load buttons.
2 -
If you use 3 or more stem/remix decks (i.e. decks with subchannels) at the same time, you have to replicate the active-deck structure of the S3 with modifiers you can use, so that the load button triggers the reset for the active deck only.
Hit the Performance Mod link in my signature and scroll down the S4-mod description text. At the bottom (before reaching the S3 mod) is a link for a skeleton-map for the S4. Make one for your S3 that looks just like it, so you have the right modifier conditions to use for the load function (browser knob).
2 -
I made a quick conversion:
Includes a modifier skeleton for you own mapping use that recognizes SHIFT and DECK layers in the following manner:
- Modifer#1 = 0: Deck A
- Modifer#1 = 1: Deck A (shift layer)
- Modifer#1 = 4: Deck C
- Modifer#1 = 5: Deck C (shift layer)
- Modifer#2 = 0: DeckB
- Modifer#2 = 1: Deck B (shift layer)
- Modifer#2 = 4: Deck D
- Modifer#2 = 5: Deck D (shift layer)
3 -
This works! You rock! Thank you!
2 -
Even though submix will be reset in the background, that doesn't affect your Track Decks. No worries.
0 -
But if you still worry then you can assign "Deck Flavor" modifier and set value to "Stem Deck".
0 -
Indeed!
I wont need it, its fixed now but yes I think what you say can work!
0
Categories
- All Categories
- 19 Welcome
- 1.5K Hangout
- 62 NI News
- 785 Tech Talks
- 4.1K Native Access
- 16.5K Komplete
- 2K Komplete General
- 4.3K Komplete Kontrol
- 5.7K Kontakt
- 1.6K Reaktor
- 378 Battery 4
- 845 Guitar Rig & FX
- 429 Massive X & Synths
- 1.3K Other Software & Hardware
- 5.8K Maschine
- 7.3K Traktor
- 7.3K Traktor Software & Hardware
- Check out everything you can do
- Create an account
- See member benefits
- Answer questions
- Ask the community
- See product news
- Connect with creators