Sound

Blitz3D Forums/Blitz3D Beginners Area/Sound

AngelOnFira(Posted 2013) [#1]
Ello everyone! I know with Blitz you can do simple sound commands such as playing music, changing volume and pitch and other minor things. However, is there a way to do other specific things such as analyze sound (if you wanted to make a program like siri or a music analyzer) or register voice from a microphone to send voice if your playing an online game? Thanks for any replies!


_PJ_(Posted 2013) [#2]
For microphone voice-comms you will need to use some form of DLL, check in the userlibs forum section because I'm pretty much certain there has been a fair amount on this in the past.
When it comes to analysing sound, there's a HUGE difference between Siri and a music analyser.
Music analysers at their heart essentially just analyse the use and repetition of various frequencies of sound. These values can be read from the particular music file, provided you know how to ascertain the various information from the file Headers or (in the case of MP3's) 'Frames'. Things like Sampling frequency, Bitrate, number of channels, and byte-size are all important factors in being able to correctly read the sound data, and thereby retrieve the frequency of the soundwave at a given point.
However, voice-recognition requires a completely different outlook, since this concerns overall "groups of sounds, "phonemes" rather than the finer specifics of individual frequencies - to discern these phonemes would require:

a) "Training" to be particular to a voice/dialect
b) A database of sorts to correlate the phonemes with words/phrases
c) Some further logical coding in order to process the results

Both features are definitely not anything simple or straightforward, and would involve a lot of work indeed.


AngelOnFira(Posted 2013) [#3]
Dude... thats deep... thank for the insight!


AngelOnFira(Posted 2013) [#4]
Was considering making a new topic, but ill just put it here. Has anyone made a voice chat algorithm/program that can be implemented into something?

I don't really know what a dll is too much, so ill go a looking that up, but could someone point me in the direction of how one would go about this?


_PJ_(Posted 2013) [#5]
You could try having a look over this:

http://www.blitzbasic.com/Community/posts.php?topic=100226#bottom