Author Topic: About the beatdetector...  (Read 54931 times)

CubicCarrot

  • Posts: 8
Re: About the beatdetector...
« Reply #25 on: 25 Jul '02 - 02:20 »
Hello All,

I didn't really stop development on the Cubic Carrot Beat Counter, but I did have to pause it since I'm still studying.  The page you are referring too is quite old.  Current Beat Counter available is version 1.0.13, which I might upload to that site one of these days.  Next version of the SDK may well be released one of the coming weeks (because at last I'm finding some spare time).

Source however is not available. I still want to sell the SDK and Beat Counter so I have some certainty I'll be able to finish my studies.

Sven De Smet
Cubic Carrot Software
benedict.de.smet@skynet.be

CubicCarrot

  • Posts: 8
Re: About the beatdetector...
« Reply #26 on: 25 Jul '02 - 03:14 »
If you want to try out the SDK, grab a download:

http://users.skynet.be/bk264570/BCsdk092.zip

Note however that this is not the latest version (which I'll release in one of the coming weeks) and seems to be a lot more difficult to implement.  I think it would be a waste of time to try implementing version 0.9.2 now.  Next version will contain its own wrapper class (at least for Delphi), so there's no need to worry about that.  The new dll will consist of only 5 functions, and should be almost too simple to implement.

Note also that this SDK is not free (NOT FREE).

You may also want to download Beat Counter 1.0.13:
http://users.skynet.be/bk264570/BeatC10D.exe

The results of the new SDK will be comparable to the results of Beat Counter 1.0.13.

Kind regards

Sven

Ryzer

  • Posts: 73
Re: About the beatdetector...
« Reply #27 on: 25 Jul '02 - 09:23 »
That's good.
Is it also so easy to implant the DLL in a Visual Basic App?
Cause I have lots of trouble with implanting DLL's.
An example would be nice (if you have knowledge of VB6)...


CubicCarrot

  • Posts: 8
Re: About the beatdetector...
« Reply #28 on: 25 Jul '02 - 12:45 »
VB might be a problem (because importing DLLs in VB is indeed generally a problem).  I may have to wrap the DLL in an OCX for that.  I'll try to write an example for VB, but I have close to no experience in VB - and I haven't got it installed for the moment.

Ryzer

  • Posts: 73
Re: About the beatdetector...
« Reply #29 on: 25 Jul '02 - 15:17 »
The Bass DLL works perfectly with VB, so I hope it will be the same with your cool new DLL.

Largie

  • Posts: 110
Re: About the beatdetector...
« Reply #30 on: 25 Jul '02 - 16:54 »
Quote

I didn't really stop development on the Cubic Carrot Beat Counter, but I did have to pause it since I'm still studying.  The page you are referring too is quite old.  Current Beat Counter available is version 1.0.13, which I might upload to that site one of these days.  Next version of the SDK may well be released one of the coming weeks (because at last I'm finding some spare time).

Source however is not available. I still want to sell the SDK and Beat Counter so I have some certainty I'll be able to finish my studies.


Study money is always good! :) I'm current trying to develope a beatdetector myself written in VS C++ 6.0...

Do you have any relevant info (pdf, docs, tips) on how you calculate the bpm, and detect the signal? I'm starting to study next month, and I have contacted one of the math geeks ;) from the school I am starting at... And he wanted formulars and stuff just for getting started?

Please help cubic! ;)

Ryzer

  • Posts: 73
Re: About the beatdetector...
« Reply #31 on: 26 Jul '02 - 12:35 »
Largie, that's great.
Is it gonna be a freeware beatcounter? I surely hope so!  :)

Keep us informed on this forum...

Thnx

Largie

  • Posts: 110
Re: About the beatdetector...
« Reply #32 on: 27 Jul '02 - 01:56 »
Quote

Largie, that's great.
Is it gonna be a freeware beatcounter? I surely hope so!  :)

Keep us informed on this forum...


It should be freeware... But I have not decided yet... I have also others that program it for me... So maybe a opensource solution with upload possiblities of new versions by others etc...

Ryzer

  • Posts: 73
Re: About the beatdetector...
« Reply #33 on: 27 Jul '02 - 07:44 »
Cool,
I would like to help with the beatdetector if you want me to...
I could help with testing the DLL in VB6 and make examples for it.  :)

At least if you want me to help?

Largie

  • Posts: 110
Re: About the beatdetector...
« Reply #34 on: 27 Jul '02 - 14:02 »
Quote

I would like to help with the beatdetector if you want me to...
I could help with testing the DLL in VB6 and make examples for it.  :)
At least if you want me to help?


I was almost counting on it Ryzer! ;) Hehe... I have found a programmer through the www.rentacoder.com, and he wanted to help me with the project.

I have also found a new version (on linux of caz) of a beat detector:

http://sourceforge.net/projects/bpmdj/

There are also other projects there that has been started, but no files has been released...

Now I'm waiting for my coder to come back from vication... Then we'll start...

Ryzer

  • Posts: 73
Re: About the beatdetector...
« Reply #35 on: 27 Jul '02 - 18:29 »
Nice, a rented programmer...

I'll check the stuff out. Just upload the newest sources so I can download them to test the stuff...

Now trying to install VC++... but CD gives error: file not found... Disc is kind of old  ;)

Ryzer

  • Posts: 73
Re: About the beatdetector...
« Reply #36 on: 27 Jul '02 - 18:33 »
R U running linux, Largie?
Cause I can't open that stuff... then I need to go into my RedHat, and I hate linux  ;D

Ryzer

  • Posts: 73
Re: About the beatdetector...
« Reply #37 on: 28 Jul '02 - 21:34 »
I tryd to use the DLL in VB using the following small code:

Code: [Select]

Private Declare Function BeatGetBpmFromFile Lib "BeatCnt.dll" (FileName, minBeatsPM, MaxBeatsPM, Progress, Certainty)


Private Sub Command1_Click()
Call BeatGetBpmFromFile("E:\afro medusa - pasilda.mp3", 100, 150, Progress, Certainty)
End Sub


Result: Program crashes when I push the button.
Anyone knows how I should use it in VB?

Kruzemo

  • Posts: 83
Re: About the beatdetector...
« Reply #38 on: 29 Jul '02 - 00:08 »
is that actual code from your program? if it is, your problem may be something VERY simple.  Usually, when passing any variables to external functions, you need to declare the variable types.

for example say something like "filename as string" or "progress as integer" or whatever

Code: [Select]
Private Declare Function BeatGetBpmFromFile Lib "BeatCnt.dll" (FileName as string, minBeatsPM as long, MaxBeatsPM as long, Progress as long, Certainty as long)

i dont know if those are the correct types for your program, but you get the idea  :)

secondly, make sure the variables are declared as a matching type or you will get a type mismatch error  ;D

that solves the crashes 9 times out of 10  ;)

Ryzer

  • Posts: 73
Re: About the beatdetector...
« Reply #39 on: 29 Jul '02 - 10:02 »
Thnx,
but it still crashes.  :(

Do you maybe know how to use the code on page2 in VB?

Largie

  • Posts: 110
Re: About the beatdetector...
« Reply #40 on: 29 Jul '02 - 13:15 »
Quote

I tryd to use the DLL in VB using the following small code:

Code: [Select]

Private Declare Function BeatGetBpmFromFile Lib "BeatCnt.dll" (FileName, minBeatsPM, MaxBeatsPM, Progress, Certainty)

Private Sub Command1_Click()
Call BeatGetBpmFromFile("E:\afro medusa - pasilda.mp3", 100, 150, Progress, Certainty)
End Sub



VB does not handle pointers, and Progress and Certainty is values set by pointers (in c++).

So you need to know away to get these pointers to work in VB. Maybe you're chasing a ghost, maybe it works, my vb skills sux ;D

Ryzer

  • Posts: 73
Re: About the beatdetector...
« Reply #41 on: 29 Jul '02 - 13:56 »
A solution would be to write a  OCX in C++ for VB...

Largie

  • Posts: 110
Re: About the beatdetector...
« Reply #42 on: 29 Jul '02 - 14:46 »
Quote

A solution would be to write a  OCX in C++ for VB...


Or make a DLL based on the same style BASS is using, handels etc that are always returned as long...

I would make such a dll for you, but the SDK is not quick enough that it is worth using... Try download the programs that Carrot published earlier in the thread, and see for yourself!

Ryzer

  • Posts: 73
Re: About the beatdetector...
« Reply #43 on: 29 Jul '02 - 15:44 »
There are lots of things you can do with that DLL, even if it is so slow...

1) Create a playlist and let the DLL count the DLL before you are gonna use it.

2) Isn't it possible in bass.dll the pick a piece of the file and then put it into a file? So you can create a new file with some beats, then let the temponary file be scanned by the DLL, then delete the temp-file... The file doesn't need to be longer then 10-20seconds. So it is fast enough to let the BPM count when you loaded the file. (Offcourse: the user needs to set the starting and ending point of the new file for calculating the BPM.)
IN SHORT: select piece of file, save it, scan it, delete it.

Cause: Beat detection on the fly isn't so trustee I think

Largie

  • Posts: 110
Re: About the beatdetector...
« Reply #44 on: 29 Jul '02 - 17:18 »
Quote

Cause: Beat detection on the fly isn't so trustee I think


Realtime app is always the best... Now when listning to different pop music you have sometime a beat change, and maybe drums building the sound up.... Now a realtime beat counter will at these parts always be accurate! And average counter will sometimes show a much higher, or lower value.

If you ask Dj's if they want average BPM (like they have on their cd's) or variable BPM they'll say definity realtime!

Ryzer

  • Posts: 73
Re: About the beatdetector...
« Reply #45 on: 30 Jul '02 - 11:34 »

Quote

Isn't it possible in bass.dll the pick a piece of the file and then put it into a file? So you can create a new file with some beats, then let the temponary file be scanned by the DLL, then delete the temp-file... The file doesn't need to be longer then 10-20seconds. So it is fast enough to let the BPM count when you loaded the file. (Offcourse: the user needs to set the starting and ending point of the new file for calculating the BPM.)
IN SHORT: select piece of file, save it, scan it, delete it.


Then you can select a good part of the song and then calc the BPM out of it... this is just something to try out. If your new BPM detector is finished I will defenitly use yours!  :)

Largie

  • Posts: 110
Re: About the beatdetector...
« Reply #46 on: 30 Jul '02 - 12:15 »
Quote

Then you can select a good part of the song and then calc the BPM out of it... this is just something to try out. If your new BPM detector is finished I will defenitly use yours!  :)


(only the great men quote themself  ;D)

I have a romanian friend and math genious that have figured it out... And we are going to make it public... We have also talked about a playback sdk with scripting language, so users can without any knowledge add hp, lp, bp, br, beat detection, etc on the output. Just adding scripts... But first we will add the bpm feature.

(It is a great feature that also BASS should have, and also predesigned hp, lp, bp, br filters should be added to BASS. How about that Ian?)
« Last Edit: 30 Jul '02 - 12:15 by Largie »

Ryzer

  • Posts: 73
Re: About the beatdetector...
« Reply #47 on: 30 Jul '02 - 13:32 »
Do you have a DLL yet?

Largie

  • Posts: 110
Re: About the beatdetector...
« Reply #48 on: 30 Jul '02 - 17:41 »
Quote

Do you have a DLL yet?


No, no .... The beat detector project takes time... I guess we have an early prebeta version in 1-2 months or something that works relvative good.

I have started the work for a website that will be published the same day it is ready for beta testing...

There will be alot of documentation available on the subject, but I guess your'e just waiting for the complete and compiled sdk with vb support! :)

Ryzer

  • Posts: 73
Re: About the beatdetector...
« Reply #49 on: 30 Jul '02 - 18:19 »
No  ;D I'm waiting for you to say how I can help with the Beatcounter... I'm good in making sites ;) ... I hope you make the DLL like the Bass.dll and not like the one from Cubic Carrot, cause then I can't use it in VB  :(
I really need to start with C++  :D but I'm currently learning PHP, so 1 thing at the time! I'm already stating to put a ";" after my lines in VB and using "END IF" in PHP!!!  >:(