Page 1 of 1

Beat interaction

PostPosted: November 8th, 2009, 1:24 pm
by HyperCannon
I was wondering if it would be possible to add tempo functionality to Xion. Not by a automatic song tempo detector (unless it can be done), but by reading the songs info about beats per minute.
Most people can figure out the tempo of a song using a digital counter and tapping/counting in their heads, then add that into the info. Also some songs that were made with programs like FL Studio will come with the info.
It could be used the best in animations. The tempo can determine the speed of the frames so that its right on the beat.
Also it could be made so if there is no info on a song then the tempo rule is ignored on an animation but doesnt stop it from running normally.
It could also be made a text property.
Personally, I would use this alot as I am a audiophile and musician and I like having things that move with the beat to the music :P

PostPosted: November 8th, 2009, 6:51 pm
by logokas
Technically the beat itself is audible via bass level frequencies, so all you have to do, is create an animation that's tied to the bass frequency meter, and you get a somewhat accurate beat indicator.

PostPosted: November 9th, 2009, 3:35 pm
by HyperCannon
I know that, but that only gives an indication of how loud the bass is.
Something that can make an animation go as normal, but the speed set by the tempo, is different to an animation where the frames tell you the volume.

PostPosted: November 9th, 2009, 9:01 pm
by logokas
True. I never said it was completely accurate.

The problem is that in order to get an accurate BPM, the entire audio source must be analyzed 100%. Any prediction method is bound to have errors, and a full track analysis will require resource and most importantly time. This is why media players never have this feature. Something basic can possibly be implemented, but i wouldn't get my hopes up if i were you.

PostPosted: November 10th, 2009, 8:26 pm
by HyperCannon
All you would need to do is track the tempo once with either a counter (which will have error unless you are a musician) or a program (something like the counter in FL Studio, except free) then you add that to the song's info tag under Beats Per Minute.

As I say, it wouldnt need to be a feature that anyone would have to used, but it would just be something thats there if you feel like it.

Re: Beat interaction

PostPosted: November 11th, 2009, 11:35 pm
by Cliff Cawley
HyperCannon Wrote:I was wondering if it would be possible to add tempo functionality to Xion. Not by a automatic song tempo detector (unless it can be done), but by reading the songs info about beats per minute.
Most people can figure out the tempo of a song using a digital counter and tapping/counting in their heads, then add that into the info. Also some songs that were made with programs like FL Studio will come with the info.
It could be used the best in animations. The tempo can determine the speed of the frames so that its right on the beat.
Also it could be made so if there is no info on a song then the tempo rule is ignored on an animation but doesnt stop it from running normally.
It could also be made a text property.
Personally, I would use this alot as I am a audiophile and musician and I like having things that move with the beat to the music :P


I have a few questions for you about this:

If the BPM was driving the speed of the animation, would you be expecting a particular frame of the animation to be synched with the 'start' of the beat?

You mentioned that some applications encode the BPM in the Tags information. If this is the case, how would I determine the start time of the BPM to use? If the BPM value is saved as a constant value for the entire song, this would seem like you'll never be able to properly match the animation up to the beat.

Perhaps all you're asking for is the ability to set the animation speed, based on the average BPM of the current song? So for fast average BPM songs, the animation frames are really flying, but for low average BPM songs its slow?

Cliff :)

Re: Beat interaction

PostPosted: November 13th, 2009, 9:30 am
by HyperCannon
Perhaps all you're asking for is the ability to set the animation speed, based on the average BPM of the current song? So for fast average BPM songs, the animation frames are really flying, but for low average BPM songs its slow?


Yea this

Re: Beat interaction

PostPosted: November 13th, 2009, 3:53 pm
by Cliff Cawley
HyperCannon Wrote:
Perhaps all you're asking for is the ability to set the animation speed, based on the average BPM of the current song? So for fast average BPM songs, the animation frames are really flying, but for low average BPM songs its slow?


Yea this


In that case, what should the BPM determine? If BPM were 120, that means 1 beat every 500ms. What should Xion do with that and the animation?

Should it:
1) change the frame every 500ms
2) make sure the whole animation plays in 500ms
3) play x amount of frames per 500ms
4) ... Something else ...

Which sounds more useful?

Cliff :)

Re: Beat interaction

PostPosted: November 14th, 2009, 12:43 am
by Lance
Cliff Cawley Wrote:Should it:
1) change the frame every 500ms
2) make sure the whole animation plays in 500ms
3) play x amount of frames per 500ms
4) ... Something else ...

Which sounds more useful?

Cliff :)


All of them Cliff. I would love you to pieces if you tracked BPM. I'm an audio dude myself and have dreamed of having this on a skin for a long time. I've read the rest of this thread and you guys seem to heading in a good direction. My only input is to suggest having all of the above options as they' re all equally as awesome.

Peace, Lance

Re: Beat interaction

PostPosted: November 18th, 2009, 10:37 am
by HyperCannon
Lance Wrote:All of them Cliff. I would love you to pieces if you tracked BPM. I'm an audio dude myself and have dreamed of having this on a skin for a long time. I've read the rest of this thread and you guys seem to heading in a good direction. My only input is to suggest having all of the above options as they' re all equally as awesome.

Peace, Lance


Yes please, that would be awesome

And yeay for audiophiles :D