at now is theren’t a simple script that shiw time elapsed or remaining about a sample in play? is very strange :(
Posté Fri 29 Oct 21 @ 3:28 pm
no the script is dead currently (as many columns are not available anymore from script or to search)
and many virtual decks change behavior (deck 'sampler' is not a valid thing anymore) so using deck sampler get_loaded_song is not a workaround anymore
initially all columns were available for everything in every contexts, then progressively things were removed : columns, display, availability for some actions, in some context, selection only by script ... some were added too, but finally there still stay too few including many too incoherent ones under certain conditions, or just not reacheable
this are just limitations
i.e. order available in browsed songs as well as "will play at" and "message"
Pos available for samples but not readable, and not display in grid view
"will play at" available for history
and what is funny, everything still exist internally,
i.e. you can sort by bitrate but not select it in search but search by bitrate still possible via script
no "play time" in history which still display if it was selected before function was removed
and many virtual decks change behavior (deck 'sampler' is not a valid thing anymore) so using deck sampler get_loaded_song is not a workaround anymore
initially all columns were available for everything in every contexts, then progressively things were removed : columns, display, availability for some actions, in some context, selection only by script ... some were added too, but finally there still stay too few including many too incoherent ones under certain conditions, or just not reacheable
this are just limitations
i.e. order available in browsed songs as well as "will play at" and "message"
Pos available for samples but not readable, and not display in grid view
"will play at" available for history
and what is funny, everything still exist internally,
i.e. you can sort by bitrate but not select it in search but search by bitrate still possible via script
no "play time" in history which still display if it was selected before function was removed
Posté Fri 29 Oct 21 @ 3:32 pm
Quote :
initially all columns were available for everything in every contexts, then progressively things were removed
Let me know when you find the build in which this was possible, as I'm pretty sure it never was.
Posté Fri 29 Oct 21 @ 3:35 pm
locodog wrote :
something a little strange with the sampler
with regard to the default sample, probably needs a video because it's ...off...
...
also sampler_ verbs don't seem to be able to cast to in any way, name or number, [didn't try path]
with regard to the default sample, probably needs a video because it's ...off...
...
also sampler_ verbs don't seem to be able to cast to in any way, name or number, [didn't try path]
yeah is correct!! but sampler_position why doesn’t work if a play a sample in browser_window ‘songs’ (samples are inside a Sampler bank that are in folder list)????
Posté Fri 29 Oct 21 @ 3:52 pm
@Adion early versions up to 8.2 were far less limited (don't remember exactly, but I annotated later as "since one of the V8.2")
The list (which is totally obsoleted now) was finalized with build b42?? (was about to try to script columns in browser) and sporadically updated, specially with additions such as order(6525), singer writable, Title (remix) and other alias found (this are tries and error results, no official list may miss a lot)
but yes, you are totally right, some fields always been specific such as "From" "Mode" "Pos" so that not "all columns" but "all common columns" or "all non context specific columns"
it was an abusive term
This is the reason why the list was started
long way to create:
in every contexts choose selectable columns one by one and tag it as usable
in every contexts try every discovered columns one by one and mark those that also responding
then for every column try to remove spaces and shorten if possible and swap "Has" and "is" to detect shor aliases in the style of tooltips in translation file, not forgetting entries found in examples and skins
tested with get_browsed_song and browser_sort
7 * 121 * 2 = 1694 cells
with almost as many fails attempts
yes it took so me time
The list (which is totally obsoleted now) was finalized with build b42?? (was about to try to script columns in browser) and sporadically updated, specially with additions such as order(6525), singer writable, Title (remix) and other alias found (this are tries and error results, no official list may miss a lot)
but yes, you are totally right, some fields always been specific such as "From" "Mode" "Pos" so that not "all columns" but "all common columns" or "all non context specific columns"
it was an abusive term
This is the reason why the list was started
long way to create:
in every contexts choose selectable columns one by one and tag it as usable
in every contexts try every discovered columns one by one and mark those that also responding
then for every column try to remove spaces and shorten if possible and swap "Has" and "is" to detect shor aliases in the style of tooltips in translation file, not forgetting entries found in examples and skins
tested with get_browsed_song and browser_sort
7 * 121 * 2 = 1694 cells
with almost as many fails attempts
yes it took so me time
Posté Fri 29 Oct 21 @ 5:10 pm
i have mapped: sampler_position 1 and param_invert & param_cast ‘percentage’
but can i convert this % in time remain about sample 1??
but can i convert this % in time remain about sample 1??
Posté Sun 31 Oct 21 @ 12:41 pm
not really,
what about loop samples ? pitched samples ?
but with some hack retrieving needed info from various places :
browser_window sampler & browser_scroll top & browser_scroll 2 & browser_scroll -1 & param_multiply 'get_browsed_song length ms' 'sampler_position 2 & param_invert & param_mod 1' & param_cast
will return remain of playing sample in slot #2 or 0 if not playing
(took #2 in a way to see the 2 places where slot is needed
for slot #1 only a shorter script can apply - top being slot #1
browser_window sampler & browser_scroll top & param_multiply 'get_browsed_song length ms' 'sampler_position 1 & param_invert & param_mod 1' & param_cast & debug & get_browsed_song bpm & param_cast & debug & get_bpm & param_cast & debug
would need to take care about bpm too with pitched samples, but don't know how to get this info
what about loop samples ? pitched samples ?
but with some hack retrieving needed info from various places :
browser_window sampler & browser_scroll top & browser_scroll 2 & browser_scroll -1 & param_multiply 'get_browsed_song length ms' 'sampler_position 2 & param_invert & param_mod 1' & param_cast
will return remain of playing sample in slot #2 or 0 if not playing
(took #2 in a way to see the 2 places where slot is needed
for slot #1 only a shorter script can apply - top being slot #1
browser_window sampler & browser_scroll top & param_multiply 'get_browsed_song length ms' 'sampler_position 1 & param_invert & param_mod 1' & param_cast & debug & get_browsed_song bpm & param_cast & debug & get_bpm & param_cast & debug
would need to take care about bpm too with pitched samples, but don't know how to get this info
Posté Sun 31 Oct 21 @ 6:21 pm
trying to set color dynamically using 3 variables myred mygreen myblue (affected to a slider)
debug script:
set zero `get_text '0.0'` & set mycompositecolor 0 & param_add "get_text ' `get_var myred & param_equal 0 ? get_var zero` `get_var mygreen & param_equal 0 ? get_var zero` `get_var myblue & param_equal 0 ? get_var zero``' " "get_text '`color' " & param_cast text & debug & debug text & set mycompositecolor & param_cast & debug & debug set & & param_cast & get_text `get_var mycompositecolor` & param_cast text & color & debug & debug color
what is strange :
this is working correctly once only, and every time the script is modified
all other calls restore the first set of value ( does not apply variables anymore but reset color to initial one)
what is more strange:
set multiple buttons all will work but all buttons will have their own first value set as default, every button setting their own default color
in every case working or not, there is something to investigate with these working mode
debug script:
set zero `get_text '0.0'` & set mycompositecolor 0 & param_add "get_text ' `get_var myred & param_equal 0 ? get_var zero` `get_var mygreen & param_equal 0 ? get_var zero` `get_var myblue & param_equal 0 ? get_var zero``' " "get_text '`color' " & param_cast text & debug & debug text & set mycompositecolor & param_cast & debug & debug set & & param_cast & get_text `get_var mycompositecolor` & param_cast text & color & debug & debug color
what is strange :
this is working correctly once only, and every time the script is modified
all other calls restore the first set of value ( does not apply variables anymore but reset color to initial one)
what is more strange:
set multiple buttons all will work but all buttons will have their own first value set as default, every button setting their own default color
in every case working or not, there is something to investigate with these working mode
Posté Mon 01 Nov 21 @ 6:05 am
'set' caches the action it uses, it is not really expecting an external parameter as action that is changing
Posté Mon 01 Nov 21 @ 7:00 am
OK, can get very strange things with that ;) , specially some int ==> HEX and color ==> int
for now the old " custom_button_name " hack can workaround the set being one shot
so that color can be set to things like that " get_text `custom_button_name 3 & param_cast text 9` & color "
for now the old " custom_button_name " hack can workaround the set being one shot
so that color can be set to things like that " get_text `custom_button_name 3 & param_cast text 9` & color "
Posté Mon 01 Nov 21 @ 12:44 pm
Some time ago now, I requested that the sampler have assignable trigger modes to either individual pads or pages, rather than being a global setting - so that (for example) a page of video clips can be in on/off mode, but a page of cowbell samples can be in stutter mode.
Having to change mode manually when switching between different types of bank is tedious.
As it's not been implemented, I was wondering if such a thing could be scripted?
So the script would check to see which bank is loaded and change the trigger mode to suit.
Having to change mode manually when switching between different types of bank is tedious.
As it's not been implemented, I was wondering if such a thing could be scripted?
So the script would check to see which bank is loaded and change the trigger mode to suit.
Posté Mon 01 Nov 21 @ 6:33 pm
I do not see any elegant way
problem is bank --> mode association
if for example it is a tag in first sample (user field or alike) detection can be done using browsed_song and mode set using sample_mode
would needs a rsi lookin for bank change or custom skin with dedicated "is_using" sampler script for instance in some multibutton
badly this solution changes browser window and focus to sampler first sample
maybe assigning a color to a mode could be a solution ?
problem is bank --> mode association
if for example it is a tag in first sample (user field or alike) detection can be done using browsed_song and mode set using sample_mode
would needs a rsi lookin for bank change or custom skin with dedicated "is_using" sampler script for instance in some multibutton
badly this solution changes browser window and focus to sampler first sample
maybe assigning a color to a mode could be a solution ?
Posté Mon 01 Nov 21 @ 7:13 pm
hi! i have malped a button: get_browsed_folder & param_equal ‘Recordings’ ? browser_window ‘songs’ & browsed_title ‘Sequencer8’ ? get_text ‘full’ : get_text ‘Ready’
but with this script i have text ‘full’ only if i have in browser_window ‘songs’ focus on ‘Sequencer8’ track, i would that check in Folder ‘Recordings’ there is a ‘Sequencer8’ track or sample, and if there is…..get_text ‘full’, indipendently where is focus….can you help me?
but with this script i have text ‘full’ only if i have in browser_window ‘songs’ focus on ‘Sequencer8’ track, i would that check in Folder ‘Recordings’ there is a ‘Sequencer8’ track or sample, and if there is…..get_text ‘full’, indipendently where is focus….can you help me?
Posté Wed 03 Nov 21 @ 7:23 am
Independent on focus : NO
with focus out of Recordings and Sequencer8 : Yes, with the help of a filter but focus will move too
try a filter folder in the style of
and name it " Sequencer8 "
then in script
with focus out of Recordings and Sequencer8 : Yes, with the help of a filter but focus will move too
try a filter folder in the style of
File Path ends with \Sampler\Recordings\ and (Title is Sequencer8 or File Name starts with Sequencer8)
and name it " Sequencer8 "
then in script
browser_gotofolder 'filters://Sequencer8.vdjfolder' & repeat_start rswt 100ms -1 & get_text "`get_status`" & param_contains 'Searching' ? : repeat_stop rswt & file_count & param_cast & debug & param_equal 0 ? goto_last_folder & get_text Ready : goto_last_folder & get_text Full
Posté Wed 03 Nov 21 @ 9:32 am
Sorry i didn’t quite understand how this script work :( but it could be easer if in browser_folder ‘Recordings’ if i have 8 file with title contains ‘Sequencer’ take me a variable = 1 (and with this variable = 1 i write full) or i have variable = 0 (and with variable = 0 i write Ready)
Posté Wed 03 Nov 21 @ 5:26 pm
Yes It's a little bit complicated:
1) You need to create a filterfolder which displays only files with title "Sequencer8" stored in "Sampler\Recordings\" folder and name it Sequencer8 :
// only in Recordings with title being Sequencer8
File Path ends with \Sampler\Recordings\ and Title is Sequencer8
- previous filter was more complex taking care of filename too -
2) then the script :
It will call the peviously created filterfolder and see whenever there is a file or not :
// change focus to result of filter
browser_gotofolder 'filters://Sequencer8.vdjfolder' &
// wait for filter ends its search action
repeat_start rswt 100ms -1 & get_text "`get_status`" & param_contains 'Searching' ? : repeat_stop rswt &
// get the number of files
file_count & param_cast &
// debug can be remove, just to see if everything went ok
debug &
// depending on result
param_equal 0
// restore initial focus and do action when READY
? goto_last_folder & ACTIONS WHEN READY
// restore initial focus and do action when FULL
: goto_last_folder & ACTIONS WHEN FULL
1) You need to create a filterfolder which displays only files with title "Sequencer8" stored in "Sampler\Recordings\" folder and name it Sequencer8 :
// only in Recordings with title being Sequencer8
File Path ends with \Sampler\Recordings\ and Title is Sequencer8
- previous filter was more complex taking care of filename too -
2) then the script :
It will call the peviously created filterfolder and see whenever there is a file or not :
// change focus to result of filter
browser_gotofolder 'filters://Sequencer8.vdjfolder' &
// wait for filter ends its search action
repeat_start rswt 100ms -1 & get_text "`get_status`" & param_contains 'Searching' ? : repeat_stop rswt &
// get the number of files
file_count & param_cast &
// debug can be remove, just to see if everything went ok
debug &
// depending on result
param_equal 0
// restore initial focus and do action when READY
? goto_last_folder & ACTIONS WHEN READY
// restore initial focus and do action when FULL
: goto_last_folder & ACTIONS WHEN FULL
Posté Wed 03 Nov 21 @ 6:17 pm
now i have understand and it work, thanks!
what is wrong in this script:
button: get_browsed_folder & param_contains ‘Recordings’ ? browser_scroll ‘top’ & repeat_start ‘scorri’ 100ms & browser_scroll +1 & browser_scroll ‘bottom’ ? repeat_stop ‘scorri’ : nothing : browser_gotofolder ‘Sampler\Recordings’ & browser_window ‘songs’ & browser_scroll ‘top’
doesn’t work correctly, i would that if i’m already in folder ‘Recordings’, focus scroll down all files; i’m not in folder ‘Recordings’….focus goes to folder ‘Recordings’ and scroll down all files in this folder, can you help me correct script? thanks a lot
what is wrong in this script:
button: get_browsed_folder & param_contains ‘Recordings’ ? browser_scroll ‘top’ & repeat_start ‘scorri’ 100ms & browser_scroll +1 & browser_scroll ‘bottom’ ? repeat_stop ‘scorri’ : nothing : browser_gotofolder ‘Sampler\Recordings’ & browser_window ‘songs’ & browser_scroll ‘top’
doesn’t work correctly, i would that if i’m already in folder ‘Recordings’, focus scroll down all files; i’m not in folder ‘Recordings’….focus goes to folder ‘Recordings’ and scroll down all files in this folder, can you help me correct script? thanks a lot
Posté Thu 04 Nov 21 @ 7:20 am
In fact you just wanna iterate all files in Recordings whatever the focus can be
(sort of scan the folder)
1) the folder name is internal 'Sampler://Recordings'
2) browsing functions are not instant, you may want them to end before you can use folder content
3) the number of iterations is well known, bottom-top = file_count
focus the content can be either browser_window ‘songs’ or browser_enter
(sort of scan the folder)
1) the folder name is internal 'Sampler://Recordings'
2) browsing functions are not instant, you may want them to end before you can use folder content
3) the number of iterations is well known, bottom-top = file_count
focus the content can be either browser_window ‘songs’ or browser_enter
repeat_stop scorri & browser_gotofolder 'sampler://recordings' & repeat_start scorri 100ms -1 & get_text "`get_status`" & param_contains 'Browsing' ? : repeat_stop scorri & browser_enter & browser_scroll top & file_count & param_cast & repeat_start scorri 100ms & browser_scroll +1I added a security loop stop at start as long list can take time and multiple press would do strange things restarting the same loop multiple time
Posté Thu 04 Nov 21 @ 10:34 am
yeah work! but there isn’t a ‘nothing’ after ‘Browsing’ ?
right?
right?
Posté Thu 04 Nov 21 @ 3:47 pm
yes, nothing or "nothing" keyword both does nothing, equivalent in 99% of the situations
side effects can appear using the keyword in rare case or may be needed in some other
because nothing keyword does not actually do nothing it alters the status of parameter
side effects can appear using the keyword in rare case or may be needed in some other
because nothing keyword does not actually do nothing it alters the status of parameter
Posté Thu 04 Nov 21 @ 4:23 pm