Ingreso rápido:  

Forum: Wishes and new features

Tema: Proposal for better use of BPM editor
Hello together,
this proposal is not for DJs with electronic dance music, where the beats are automatically and exactly analyzed.
This proposal is for live played tracks, where the beat is not stable and also the Virtual DJ-"multiple BPM analyzis" will fail.

Im forced to analyze a lot of songs manually, so any impreovement will help me. My workflow is:

Im checkig the first beat of the track, the red marker will be moved to this position. The grid (light grey bar, mid grey bar, dark grey bar and the black bar) is in sync with the first beat marker. If i move the marker, then the grid will be moved, too - like a magnet, this is good.
After this im checking the last beat of the track, right before the end and i see that the grid is not in sync with the basedrum, so i will move the grid there and the entire BPM value is going to as example 120.42 BPM. I will also set a new grid marker there to mark the "last beat".
Now im checkig the middle part of the song. The grid is not in sync with the basedrum. So i set a new grid marker there and move the beat grid bars on the left side of this marker until the beat matches. On the left side the BPM value is going now to as example 119.21
But now comes the bad part:
Im scrolling to the end of the song where the last beat marker is. This marker is stilll over the basedrum in sync, but, the grid does not match to the marker anymore. The grid is moved away because i have moved it in the middle of the track. Also the BPM Value of the second half of the track stays on 120.42 BPM, but, theoretically, it should change to 121.63

So moving the grid at the middle marker destroys the grid at the next marker.

My proposal is: If i move the middle marker, the grid on the left side and on the right side of this marker should align like a magnet to the next marker.

Why? Let set as example 10 markers into one track. Moving the 3rd marker destroys all the grid positions behind it - and - you need to realign all the grids behind it. If the grid will follow the markers like a magnet, then i can just insert a new marker into the track and it will not destroy all other grid positions behind.
 

Mensajes Mon 10 Aug 20 @ 7:21 pm
To me it seems your working method is wrong. You should not be jumping around from beginning, to the end and then to the middle.

Work from left to right, beginning to end, as the song would play on a time line.

The following is how the Denon system works in Engine Prime.
Start from the left and move right. When you see a drift, place a marker (which locks the grid to the beat and also prevents everything left of that marker from moving). Keep working to the right, and place a marker each time the grid begins to drift.

It works well, but it's tedious - as is the VDJ method. I really think VDJ should be smart enough now to do things like this automatically.

We may need to fine tune at the end of the process, but not have to do everything manually. This is 2020 :-)
 

Mensajes Mon 10 Aug 20 @ 7:31 pm
My method is much faster because i do not need to scroll thru the entire track and check every x beats if there is a drift.

With my method i will find the worst points faster and will align a lot of beats with a single action and in best case with 3 markers only.
With your method i need to check every 4 beats for gliches and you will detect 50 beats later and 12 markers later that you have found the worst point of the track. so you have wasted 12 markers and you are on the half first, after the worst point you have so check the next beats because they are still misaligned, so you can spend additional 12 markers until the end.
 

Mensajes Mon 10 Aug 20 @ 8:15 pm
tl;dr but i think you're describing a process that's similar to quick sort, going more and more granular. With quicksort though you go all the way through every item (which would be audio sample here i guess), whereas here you just go as detailed until it fits. Basically, this could allow you to BPM-map a song properly with potentially the least amount of manual checks. The downside however is, that you may not know the amount of beats/bars between any two points. This is required for this "grid-alignement" to work.
I think BPM detection is too good to warrant implementing a complex procedure like this one.
 

Mensajes Tue 11 Aug 20 @ 9:18 am
Quote :
The downside however is, that you may not know the amount of beats/bars between any two points. This is required for this "grid-alignement" to work.

You do not need to know the amount of beats/bars between two points, if you move the middle marker, it should align the grid procentually. If i make the part on the left side 2ms shorter, then the right side will be 2ms longer.

Quote :
I think BPM detection is too good
Wrong. Please read my first words of this topic:
Quote :
this proposal is not for DJs with electronic dance music, where the beats are automatically and exactly analyzed. This proposal is for live played tracks, where the beat is not stable and also the Virtual DJ-"multiple BPM analyzis" will fail!.

Quote :
to warrant implementing a complex procedure like this one.
This is not complex. The code exists already, you can see it if you move the grid on the left side of a marker (if its not the first beat marker). You just need to do the same with the grid on the right side of the marker (if its not the last marker).
 

Mensajes Tue 11 Aug 20 @ 11:48 am
Oh boy, where do i start?

Quote :
You do not need to know the amount of beats/bars between two points, if you move the middle marker, it should align the grid procentually. If i make the part on the left side 2ms shorter, then the right side will be 2ms longer.

If the BPM is variable or VDJ doesn't properly detect it, it will most likely not count the correct amount of beats/bars. You NEED this information, otherwise this method of BPM mapping does not work.

Quote :
Wrong. Please read my first words of this topic

I don't think you understood me correctly. I didn't say it's perfect, i am saying that it's good enough for a vast amount of music that makes it not worth implementing what you've proposed. If there was a huge demand for this, i think we'd already have something like this.

Quote :
This is not complex. The code exists already, you can see it if you move the grid on the left side of a marker (if its not the first beat marker). You just need to do the same with the grid on the right side of the marker (if its not the last marker).

I doubt your ability to judge programming expenses for features with as high of a standard as Atomix'. Yes, some foundation is there, but there is also foundation for fully fledged OBS-style compositing, or balls-to-the-wall audio mastering like Adobe Audition, or Video editing like Premiere. I know all of these are not central to DJing, but not having the feature you've proposed won't stop you from being able to play those songs. If you use your ears, you can even make seemless loops and everything, safe for some beat effects. I don't think this is a stupid feature and that it shouldn't be in VDJ, but i also think that it's just not worth the payoff. Be it Atomix in terms of money, or the DJs having to wait on other more requested features.
 

Mensajes Tue 11 Aug 20 @ 1:22 pm
I see that you have not understood my method of beat analyzing. Its much faster then from left to right and i can add some markers later without destroying all grids on the right side. Its just not logical that the beat grid will be destroyed at any point if it will be slightly corrected at any other point. Ive set a beat marker at different points because i hear a bassdrum there. Why it needs to be destroyed later, if i will add some more markers? The bassdrum is still under the marker, but the beat grid is moved away.

This doesnt make sense, never:


The grid should snap to the markers, like its snapping on the left side:

(its always correct on this side)

If i move a grid bar in the middle, it does not have to detect any beat (the raw beat detection is already done by Virtual DJ autodetection or autodetection with multiple BPM). The main work is to align the slightly wrong detected beats. It doesnt need any knowledge about existing beats, it just have to spread existing grid bars to the new distance until the next marker (on the right side), like it is doing to the previous marker (on the left side).

Ive compared both methods with Michael Jackson, Billy Jean, this song is terrible for all analyzers, because its going fast, slow, fast slow, like a wave, mostly every 8 beats:
Method left to right: 48 markers (manually set) and 47 grid corrections (manually set).
My method until today: 48 markers (manually set) and 47 grid corrections (manually set), no improvement because i always need to repair the grids on the right side.
My method, if the right grids will snap like the left side grids: 24 markers (manually set) and 24 grid corrections (manually set). If i move a grid between two markers, it has to add a marker automatically, so at the end i have 48 markers in total again: 24 markers (manually set) and 24 markers (automatically set by each grid correction)
I just need a little bit more then half time.

In best cass, if there is just one big wave (slow, fast, slow), my method just needs 3 points, and the left to right method still needs 48 points.

I have to respect this if Atomix dont want program this, but i do not agree, if someone says my method is wrong or not usefull. 80% of my songs are from 1960 to 1990 and live played and i will never finish to analyze them all, because they are so many of them. Im just beginning at the highest rated songs. Ive written this proposal because its usefull and easy to program (yes, im programming, too, and i can estimate the efford). Maybe im alone with this type of music (there are so many EDM and techno DJs here), but ive showed it now and the best program with the best functions will make the race at the market. Ive decided to use this program already and i will live with or without this function. But it would be wrong to not propose it. Or it would be wrong to not describe it, if someone does not unterstand it.

(Please excuse my bad english language, my mother language is german)
 

Mensajes Tue 11 Aug 20 @ 4:04 pm
Tato100PRO InfinityMember since 2017
I agree you need to provide better metod for the BPM EDITOR, the 1st beat is great, but if I go to the meddle of the song, the grid is not good.
If I adjust the grid in the meddle of the song, all grid will move, left ot right.

I think you need to look in to Rekordbox grid, the provide the possibility to move the grid from that point to the right, so we can arrange all song if is needed.

Give us the opportunity to change the grid from X point to the right, without modify the left side.

If you already got the funtion please explain to me, becouse I don´t know how to do it.


Thank you
 

Mensajes Wed 08 Sep 21 @ 9:33 pm
Plain and simple the current state of BPM detection sucks !

Trying to adapt a single BPM to files in general won't ever be any good. It does not take much to be off.

When I first started to look at this my first thought was that will never work in general. But people want to adapt BPM detection in the general case. People do this quite easily. Not numerically but by feel.

I didn't let my negative thinking about a single BPM get in the way though. I researched many articles and implemented lots of code. I tried several programs to see what they came up with. They did not agree very often. With all the articles I read precision of the code was never mentioned. With the code I studied I could see easily inaccuracy was bound to occur. I threw away most of what I had learned and stated over. This time with precision in mind. New methods new code. So when I was ready I needed a way to test the accuracy. So first I downloaded from some files that only had beats with no other noise. I ran my code against them to test. Most were OK but see some files come up as 162,998 and it was supposed to be 163. What the heck. But we have talked about this before. There was some kind of pattern to it. I did not know what is was at the time and just made a mental note. So now I have some files that are supposed to be dead on accurate. I graphed it at high resolution and could see that it was indeed 162.998. Among other things it causes confusion. People have said that VDJ was wrong with the 162.998 answer because some other program came up with 163 and the tag says it is 163. Tags are not reliable and neither is a lot of the music. Geeze. I ended up creating my own exactly accurate BPM files. These are very useful and would like to put them up. They can be used to test the accuracy of any BPM detection program. They are large files so I don't know. Some talk about these strange patterns here:

https://www.virtualdj.com/forums/222409/VirtualDJ_Technical_Support/How_VDJ_Writes_BPM_to_ID3_tag.html?search=998&page=1.25

So I agree with GROOVINDJ. We need varying BPM detection and much better management from the computer. Trying to edit them manually is bound to drive you crazy and probably very error prone without some tools to help. My thing was to eliminate doubling and halving of BPM values and very accurated methods which is done. Completely variable BPM. Try to eliminate showing fractional BPMs to the user. Let the underlying code handle it. People don't think that way. There is a long way to go yet and don't know when I will get back to it. I just when through the process to answer some questions I had for a first pass.
 

Mensajes Mon 20 Sep 21 @ 3:17 am
By the way. I wish they would at least implement some simple things in the BPM editor like:

1) provide time information
2) being able to cancel changes without re-scanning,
3) varying BPM detection does not provide any feedback as far as I can tell and can fail on some simple files.
 

Mensajes Mon 20 Sep 21 @ 3:23 am