Accesso rapido:  

Forum: VirtualDJ Skins

Topic: Script for unloading deck based on it being 'inactive'
I would like to add a modifier to an 'open browser' button which would unload the deck which is not playing OR no volume from the deck i.e. crossfader on other deck. Is this possible?

The icing on the cake would be to load a selected track into the empty deck and close the browser automatically....

I have tried some different commands with a custom button, but am getting nowhere fast. I don't really know the correct syntax but need something like:
check if deck is master or playing ? nothing : unload
I don't know how to do the first bit - checking condition of decks.

Almost completely frazzled now...
 

Inviato Sun 09 May 21 @ 11:02 pm
locoDogPRO InfinityModeratorMember since 2013
so your button + deck 1 play !? deck 1 unload : deck 2 play !? deck 2 unload : carry on for how many decks

personally I don't see the use, I did once, but it now feels like unnecessary hand-holding, I'm all up for making things easier, but if you can't remember 1 or 2 tracks ago, it probably time to drink some water and take 5 minutes.
 

Inviato Sun 09 May 21 @ 11:35 pm
NicotuxHome userMember since 2014
Do not see the use either but keeping the way locodog opened and to answer to the 1st question by the way (inactive)

things like that may do:
set "$loaded" 0 & deck all var "$loaded" !? masterdeck !? play !? load & toggle "$loaded" : is_audible !? stop & load & toggle "$loaded"

loads the browsed track to first inactive (empty or not audible) but master track

May empty and stop all the other unusefuly running decks:
set "$loaded" 0 & deck all var "$loaded" ? is_audible !? unload : : masterdeck !? play !? load & toggle "$loaded" : is_audible !? stop & load & toggle "$loaded"


close the browser ? I do not see what that mean
 

Inviato Mon 10 May 21 @ 12:23 am
Thanks guys, I'll try out your solutions.

Basically, I have a surface go 2 and am trying to get it looking good sat on my ddj1000.

Obviously the 10 inch screen is too small for the default skin, so I'm modifying one of my old ones.
I'm trying to achieve a more hands-off (mouse-off) approach by using the deck navigation buttons. As I only use two decks I was going to map the deck1/3 button to open the browser which will be almost full-screen and empty deck not being played. then I can navigate and select (load) my next track, which would then automatically return me to my oversized waveforms and main info screen...

That's the plan.... :)
 

Inviato Mon 10 May 21 @ 8:40 am
Another way; use the deck 3/1 button to eject track and open browser.. auto close browser once track is loaded. (replicate on right deck controls)

I hope this makes sense!
 

Inviato Mon 10 May 21 @ 8:58 am
NicotuxHome userMember since 2014
ok "open/close" browser is "browser_zoom"

"browser_zoom off" once loaded
and "browser_zoom on" after the unload before to select
 

Inviato Mon 10 May 21 @ 11:02 am
I don't see any practical reason to unload a deck if you are going to load it once again right afterwards.
The load action itself does exactly that. Unloads the current track and loads the next. So, there's no practical gain to unload the deck.

Also:
With buttons like DECK1/3 (and DECK2/4) that you can find on most controllers remember that remapping them is not really advised unless you know exactly what you're doing.
Those buttons work on hardware (firmware) level as well besides software level.
For instance, on several controllers those buttons are responsible for changing the hardware layer of the left/right deck. In other words they are responsible for whether the "play" button for instance on the left side of the controller will start deck 1 or deck 3.
Remapping the DECK1/3 button to any action, won't stop it from changing hardware layers since besides telling the software what's going on, it also operates on hardware level that you cannot "remap"
 

Inviato Wed 12 May 21 @ 6:52 am
Ah, not a good plan then, thanks for the warning! I would like to try and map the opening and closing of the browser to the hardware though, but not sure how...

I have decided to use a skin button for manual opening/closing of browser as well, as my skin has developed the capabilities of standalone virtual dj since I have added play/pause etc. Its changing..... I hope I can keep the uncluttered design so it looks good sat on the controller.
Time will tell :D (I'll post a screenshot soon)
 

Inviato Wed 12 May 21 @ 7:31 am
I'm not sure what exactly you're after, but you can map your "full" browser panel to use "browser_isactive" as a visibility query
This way, every time you turn the browser encoder on your controller the skin will enter "full" browser automatically (and will exit on load, or after 5 seconds of inactivity)

Also, if you have other conditions for your full browser, you can combine them
<panel class="MyFullBrowser" visible="browser_isactive ? on : browser_zoom ? on : ..." />

Where you replace the three dots with whatever you're using now for manual control
 

Inviato Wed 12 May 21 @ 6:23 pm
That sounds exactly the sort of thing I'm after, thank you! At the moment I have got a toggle switch(es) changing panels. To be able to enter browser and automatically close after loading using the DDJ1000 is exactly what I want to achieve :)
 

Inviato Thu 13 May 21 @ 5:47 pm
unload did not reset the vector based songpos circles.
will only work like "unload & load_skin"
 

Inviato Sat 22 May 21 @ 12:03 pm
NicotuxHome userMember since 2014
yes, all goto unload songpos... do not !!
but there are many side effect by using load_skin
- browser position lost
- fx GUI hiding
- init script executed again
...
better force reset manually (waiting for the bug to be fix) with something like this
goto_start & play & repeat_start rpt 32ms 1 & unload

edit: it looks being skin dependent, those using visual are not affected, the one using slider are
 

Inviato Sat 22 May 21 @ 4:18 pm