CoGeBeatDetektor

.lov.'s picture

A lightweight BPM detection plugin for Quartz Composer: http://code.google.com/p/cogebeatdetektor/

franz's picture
Re: CoGeBeatDetektor

sweeeet ! thxx lov.

dust's picture
Re: CoGeBeatDetektor

nice this looks very handy. i got a audio file player plug i'm going to share in a bit. it lets you change the tempo of your audio track keeping the same key or pitch as the original track as well as do some audio feedback and delay effects etc..

i would like to add output to this bpm detector. can you explain a bit whats its doing? it takes a low bpm and a high bpm. for instance if i put my high bpm to 140 and low to 70 i'm getting a 113 bpm. should i analyze my audio track at the lowest tempo setting then at the highest tempo settings then feed them both into the patch to get my current bpm ? or is this sort of providing an approximation of the bpm. meaning are you using it to tap in a tempo and you take the highest and lowest taps to get an approximate determination of bpm ?

i hope i explained my self i saw this and got excited as that is the next step for my plugin to report the current bpm, or well the next step is to get the audio player to play in the background so not to interrupt my graphics then it is to report the bpm.

thnks.. dust

cybero's picture
Re: CoGeBeatDetektor

Doesn't load when installed to User folder in 64 bit QC, does load in 32 bit mode. Thanks for sharing. Having problems compiling for 64 bit at present though.

.lov.'s picture
Re: CoGeBeatDetektor

Yeah, you should define the min and the max BPM for better accuracy.

.lov.'s picture
Re: CoGeBeatDetektor

Its why i wrote this on the plugins site: 10.5.8 or later, 32 bit, Universal Binary

:)

cybero's picture
Re: CoGeBeatDetektor

Walked straight into that window •~

Is there no possibility of compiling a 32 / 64 bit Universal Binary compilation?

Where can I find the vector, iostream and maps includes?

.lov.'s picture
Re: CoGeBeatDetektor

Some of the dependencies seems to not 64 compatible. I never took a deeper look into, just made a fast "port".

Those libraries are standard C++ (or C) libraries, don't really know, i've no experience with C or C++.

dust's picture
Re: CoGeBeatDetektor

here is a 32/64bit universal build. it seemed to build in 64bit ok in xcode 4. after looking at the source things make more sense. actually pretty interesting detection. only my internal mic is showing up, i was thinking a line in may produce better results but the accuracy from the internal mic honed right in after a bit to the right bpm like magic.

got to look more into whats going on. the approach i was thinking about was to take your buffer length (in a from file context) divide it by your sample rate to get the length of your track in seconds then count transient spikes of some lower frequencies in 15 second intervals to calculate a bpm. ? that was my initial thought, i have actually been pondering this for a few days. glad you posted.

@cybero here i'm uploading a 32/64 bit universal build. seems to build 64bit out xcode 4. you might want to flag your compiler language to compile objc++ in the build settings. just a guess ? std vectors are c++ not c so you would have to rename your file to .mm or change your compiler language settings to pull in those headers i'm thinking.

check the picture out. i put a record on @ 128 bpm. set max bpm to 160 and low 70 and the detector reports 128 bpm. ;) it wasn't really evident at first... i had to put on a track on with a steady rhythm and turn up the bass a bit until i started getting any positive results.

PreviewAttachmentSize
CoGeBeatDetektor.plugin 2.zip28.38 KB
coge.png
coge.png146.67 KB

.lov.'s picture
Re: CoGeBeatDetektor

Hah, thanks for the info, i'll check in Xcode4 and do a 32/64 bit build as soon as possible.

cybero's picture
Re: CoGeBeatDetektor

Thanks for sharing. the plugin works in 64 bit too now.

franz's picture
Re: CoGeBeatDetektor

It would be awesome that your patch also outputs a pulse at each beat....

gtoledo3's picture
Re: CoGeBeatDetektor

Also, a signal when beat has been confirmed would be nice, since it seems to take a little bit to engage. Building ability to select audio source manually instead of it going to system default would also be cool, but not a big deal.

Thanks for the plugin, it's cool.

.lov.'s picture
Re: CoGeBeatDetektor

The signal on each beats and manual source select are planned features. Actually, i'm very busy with the new CoGe release, after it released i'll have to work on the CoGe plugins ;)

franz's picture
Re: CoGeBeatDetektor

great news ! good luck with the release !

franz's picture
Re: CoGeBeatDetektor

I took the liberty to add a "Beat" port to your patch. It is now possible to trigger stuff on detected beats.

PreviewAttachmentSize
CoGeBeatDetektor_MOD.plugin.zip17.9 KB