[In progress ]Q3D Audio Procedural Music Ride

Show us your works in progress and request feedback

Post » Mon Jun 06, 2016 3:45 am

Some of you might seen some tests i have posted before... this is the next more polished stage of it.

All started with this little test / test

so ... here it is...Current Progress Video

Milestones


[Trying to implement the road assembly from this Test]

[Custom 3D Ship obj]

[Background Effects]

[HUD&regular functions to be displayed (ie. scoring etc)]

[importing .ogg files to be played]

[Polishing the accuracy for Road Procedural Generation]

[Adding beat/snare detection blocks]

-> [A few more tests to be made to get a pre-rendered road before playing the audio..... i learned how C2 audio analyser effect its working and getting the frequencybitdataAt every 0.1 i have a good idea how to add a procedural pre-rendered before playing the audio.. even though normally we wold preload samples. In C2 doesn't exists that action... but it can be tricked ...so there i continue now ]


Il start with last one.
Current Events 28(from which 10 are for the 2d sprites and 5 or 10 global variables that i dont use anymore and forgot to delete them)

As always il try keep everything under 100 events. And using the default C2 plugins ... minus the Q3d one

another early test
Keep in touch.
B
75
S
22
G
68
Posts: 1,336
Reputation: 43,269

Post » Tue Jun 07, 2016 10:03 pm

This is interesting. Can you share the code on how to detect beats?
B
12
S
3
Posts: 211
Reputation: 1,477

Post » Wed Jun 08, 2016 12:07 am

Fireche wrote:This is interesting. Can you share the code on how to detect beats?



the code is based on the C2 default Audio Analyser example ... however in order to properly use it i had to understand how audio Api works and how beat detection is matematically calculated.

2 very good tutorials and reads i found where W3 audio Api and the info from gamedev for understanding the math behind it.

and of course the badlogic onset detection helps or maybe "helps" is to strong... but proves the above 2 documentation about the audio processing.

at the moment there is not much for me to share with you as code base since its not different then what audio analyser uses... but when im done with it i will release a tutorial about it since the links above are pretty hard to adapt to C2 plugin which is missing a few important calls... but that is another story and i dont want to sound as a broken record.

but on a short explanation im using the Audio.AnalyserGetFrequencyBinAt("audio",0,audio.CurrentTime) which gives you the exact beats for every 0.01-0.001(686968691 as C2 shows), of the song then its a matter of detecting the lows (bass beats ) and highs (Snares/overal volume hits). by substracting an average -60 dB for Lows and -20 for highs. but i need to retest it a few times ... cause for some songs the procedural Generation works good and for some its braking... its something that has to do on how the song is transformed in .ogg on 441000 Hz or 32000 Hz etc also i did not tested yet... but i think it will be better for using mono mixes instead of stereos but again its not yet proven.

then again im at the part of making a small "formula" to place the right beats in an array before playing the song and preLoad the samples in a song then i could generate any map or any song visually as Audacity does... but its to late here at this time so il see tomorrow about it...

dont mistake the Audio.AnalyserPeakLevel with the Snares or high pitch ... same goes for the Audio.AnalyserRMSLevel its not the bass... Those are just the overall High and Medium dB of the song. they are not again... beat detection functions. they probably will help later on but at this current stage they did nothing but to make me look at the audio plugin in a wrong way. but then again its also my mistake not reading before using it haha... so yea... a lot of stuff to be read and applied before i have a near functional C2 beat detection using only the Already existing Audio Plugin... i dont have the time or skills to implement an already existing .js that does all this for us... so thats the story so far :D and hope the code and links helped you :)

also let me know if you do some testings and if you manage to create something related with the audio plugin that might help me also :P


Edited: in the current progress video the unaligned shape of the so called road... is the actual real waveform i compared the audacity form and the c2 2d audio form(proving im on the right track)... which i altered using the cos formula so its looking a bit smaller.
B
75
S
22
G
68
Posts: 1,336
Reputation: 43,269


Return to Works in Progress/Feedback Requests

Who is online

Users browsing this forum: Tinimations and 1 guest