Silence detection

BlitzMax Forums/BlitzMax Programming/Silence detection

banky(Posted 2005) [#1]
Hi all

I want to implement a simple lip-sync system, so I need to detect the silence in an audio file, I mean, if I have an audio file with a voice saying "Hello, my name is David", I need to know that my player character will be talking while the "Hello" word is playing, and after that, my player character will stay quiet until the next word "my" and so on.

Any ideas on how to do that?

Thanks in advance and sorry for my english,
Banky


SillyPutty(Posted 2005) [#2]
hmmm, like beat detection ?

I would like to know this too.


ImaginaryHuman(Posted 2005) [#3]
Could you maybe make some kind of list of timing steps, intervals at which you want the character's mouth to move, which you work out by hand beforehand, so then at runtime you only have to play back through the sequence of timed events, rather than try to analyse the audio signal in realtime?


Perturbatio(Posted 2005) [#4]
I *think* skidracer mentioned somewhere else that there was going to be an overhaul of the audio system allowing access to the stream (or to allow streaming audio).
Not sure on the eta of this.

I do recall however a while ago now that someone did this with a talking head in B3D. Unfortunately I can't remember who it was that did it or where I encountered it.


Shambler(Posted 2005) [#5]
The problem I see here is that there is little or no silence between words when one is speaking normally.

[edit] if there is a silence you could detect it by checking if the waveform does not change much ( how much would have to be experimented with ) over several samples.