Quick Sign In:  

Forum: VirtualDJ Technical Support

Topic: automatically play a song with a BPM slightly faster
Fjj70Home userMember since 2020
Hello everyone,

After searching for a solution for months/years, I'm hoping someone here can help me.

I would like to automatically play a song with a BPM slightly faster than the currently playing song and repeat this infinitely. Let's say a maximum of 4% faster...

I've tried two solutions that don't quite fit:

1. I created a filter folder with the filter
Top 20 BPM and Bpm Difference < 5
and then Load in AutoMix and Start AutoMix
It works nicely as it reloads the filter after 45s (see options > history_delay)

I have a few small problems with this filter:
a. when playing a medium range BM (from 80 to 140 BPM) it only gives me the top 20 songs and not all the songs that are slightly faster.
b. when playing a high BPM (eg 180 BPM) it also gives me slower songs (since I have less than 20 songs that are faster)
c. when playing a slow BPM (eg 60 BPM) it gives me songs that are too fast (65 BPM is more than 4% faster !)

So I tried something else ...

2. I created a custom_button with the following script
get_text "Bpm < `param_multiply 1.04 'deck master get_bpm'` and Bpm > `deck master get_bpm` " & param_cast 'text' & search

When I press this button I get a message like this in the search field
Bpm < 85.44 and Bpm > 82.16
I copy and paste this text into a filter folder and load in AutoMix

So, currently, nothing here is automatic !!!

I tried to use the quick_filter like explained in the following link:
https://www.virtualdj.com/forums/237300/Wishes_and_new_features/Search_Filter_for_double_half_BPM_(Diff).html?search=bpm%20difference&page=1

As an example, I added a custom_button with the following script
get_text "Bpm < `param_multiply 1.04 'deck master get_bpm'` and Bpm > `deck master get_bpm` " & param_cast 'text' & quick_filter & search ''
When I press this button I do not see any changes. It seems like the quick_filter is not recognized.

Can someone help ? Any hints are appreciated.

I am using VirtualDJ 2020 pc64 v8.4-64 b5504.1570

Thank you for your attention.
 

Posted Tue 29 Aug 23 @ 3:58 am
I'm sure that there's something in your process that you didn't told us. Because I cannot understand what you're after.
"Playing a song with BPM slightly faster" to me means "play a song with slightly increased pitch"
Therefore I don't get where automix, search and quick filters come into place.

If you want to have automix play from slower to faster tracks, then you can just sort the automix list by BPM.
If you want to randomly select songs from a list that are faster than the current one playing, you didn't told us how you do that part.

So, please describe as best as possible what you actually want to do.
 

Posted Thu 31 Aug 23 @ 11:39 am
locoDogPRO InfinityModeratorMember since 2013
search ''

is wrong, the script I wrote was

search '*'

or

get_text "`deck master get_bpm`-`deck master get_bpm & param_multiply 1.04`" & param_cast 'text' & search
 

Posted Thu 31 Aug 23 @ 11:53 am
Fjj70Home userMember since 2020
Thanks PhantomDeejay for your questions.

I like to play music automatically for hours and hours.
I want each "next song" to have a BPM slightly higher than "the current song playing".
Ideally one "next song" is randomly selected in a list of songs with BPM between the current BPM and 4% faster.

Let me try to rephrase how I did it:
Current song is as example 100 BPM. The filter folder with the filter
Top 20 BPM and Bpm Difference < 5
Will give me 20 songs between 105 BPM and let say 103 BPM in the browser window.
I richt click on that folder and choose the menu "Load in AutoMix". There are all in the AutoMix tab.
The shuffle function of the AutoMix will choose as example a song of 104 BPM.
After 45s, it will automatically re-"Load in AutoMix".
And then the filter folder will (automatically) give me 20 songs between 109 and let say 107 BPM.
The shuffle function of the AutoMix will choose as example a song of 108 BPM.
After 45s, ... (and so on and on and on ...)

It works almost as wanted until it reach high BPM (as example 180 BPM). Because I have only a few songs with a BPM higher than 180BPM : the filter folder will give me 20 songs between 185 and let say 177 BPM.

How can I prevent the filter folder to give me songs with a slower BPM than the current played song ?


To copy your phrase:
"I want to randomly select songs from a list that are faster than the current one playing and don't know how to get that list (to load it in the AutoMix)"

Hope I clarified enough.
 

Posted Fri 01 Sep 23 @ 7:50 pm
Fjj70Home userMember since 2020
Thanks LOCODOG for your answer.

I was missing something stupid but important.
The script works only when I select "Search field = BPM"

I am looking now how to load those search results in the AutoMix ... automatically (as I explained here above to PhantomDeejay).
I understood somewhere that scripts are not (yet) possible in filter folder (what a pity).

BTW, Thanks for your interesting lessons in the Script School.
 

Posted Fri 01 Sep 23 @ 8:07 pm