Compare sound on prerecorded audio file to microphone input - audio

I am looking into an interesting project where I have to compare the sound on a prerecorded audio file to one that is inputed through a microphone.
Unfortunately, I do not even know where to start. Any feedback, pointers, constructive thoughts are highly appreciated.

Related

How can you repair damaged sound file?

I have a problem with my wav file. We played with our band (#bataty on instagram😁)in a club and we asked soundman to record the audio of our show. He gave us a record in wav but we cant play it anywhere.
Is the file damaged? Can somebody help me please?
https://drive.google.com/open?id=11ODe-3MUOIkbDomzNBnzt3DnSTr9j8qx
Your audio file isn't broken. It plays fine. It's just silent.
Your sound tech made a mistake and didn't record anything but silence.

Make microphone record system audio output

So, yesterday, i was calling with my friend and i wanted to play him an sound from a game, but i had no idea how, because he couldn't hear mine sound. So, is there a way to direct all the system audio to record on the microphone? And also keep the normal output so i can hear it. Thanks for help!
And also, please make your answer noob-friendly, because i am pretty bad with this, thanks!
Other stuff:
I want to direct the output into the microphone, not just the calling program (it's Skype by the way).
Please don't answer that i should put the output to the speakers and record it like it, because i don't even have speakers... just headphones.

Can FFMPEG or any other project detect an audio file contains only noises?

I have a batch of audio files which recording people's voice. But some of this audio files record only noises or microphone burst. I want to detect these files and jump over them while processing my program.
I'm not sure whether ffmpeg can do this. If yes, could you guys provide me a link of that method? If not, do you know if there is some other software can do this? Or do you have any solution or suggestion to this problem?
Thank you.
I would approach this by looking at peak values and duration. SOX is a program that allows shell scripting which could batch analyze this. There is a large user base and forum as well.
Here is a link to a forum topic discussing it's use on batch discovering peak values and outputting information to a .csv file.

Determining the quality of mp3 audio streams

I have built a source client using Portaudio and LAME which streams the microphone input to an Icecast server to be listened to online via the HTML5 tag. I have managed to (supposedly) get the quality of the stream to MP3 320kbps at 44.1kHz and am looking for a way to confirm this using tests and or benchmarks.
I have an indication that these stats are somewhat correct from looking at stream inspectors in software such as iTunes and VLC, but I am looking to get a more in-depth data set.
What I basically want is to be able to test how much of the original file is being lost over the stream and if or how much the quality changes depending on environmental conditions of the broadcaster or streamer.
Does anyone know of any tools, frameworks to get some hard numbers or representations of this data?
If VLC tells you the stream is 320kbit CBR, then it is.
It sounds like what you're looking for is a comparison of the actual audio content. This is highly subjective. MP3 is built to use features of how our hearing works to save bandwidth. For example, quiet sounds are masked by loud sounds. High frequencies are harder to hear and are simply rolled off.
You can compare the spectral analysis between the original PCM-sampled waveform and the MP3 decoded waveform, but this doesn't tell you how humans interpret that sound. For that, you would have to survey humans.

Voice Detection in C#

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.
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.

Resources