I'm looking for a simple C# real-time voice detection library. The input should be an audio stream, and the output should be "human voice" or "not a human voice". I have no knowledge in speech recognition or signal processing, and I'll appreciate any kind of assistance.
问题:
回答1:
Take a look at the answer for "Detecting audio silence in WAV files using C#". I am assuming the input is a WAV file. If not please provide the format of the audio stream, or if you are intending on taking input from the microphone directly. If you can measure the amount of silence in an audio stream and you know the duration of the audio stream then you can calculate the amount of talk time. The link in the answer is dead, but if you go to codeproject.com and search on "C# wave form" you will get a hit on a number of projects that show you how to interpret and manipulate wav files. Detecting silence may be a little subjective if there is background noise. You will need to pick a minimum volume threshold for silence where anything below it is considered silence.