Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

I have a .mp3 file. How can I seperate the human voice from the rest of the sound in C?

Is it even possible in C [I know it is possible in general -GOM player does it]? just let me get started... What do you say?

How exactly do you identify human voice distinguished from other sounds?

like image 291
Lazer Avatar asked Oct 15 '09 08:10

Lazer


Video Answer


2 Answers

Filters in mp3 players usually rely on the fact that the voice source (the performer) in a stereo recording studio is positioned at the center. So they just compute the difference between the channels. If you give them a recording where the performer is not positioned like that they fail - the voice is not extracted.

The reliable way is employing a voice detector. This is a very complex problem that involves hardcore math and thorough tuning of the algorithms for your specific task. if you go this way you start with reading on voice coding (vocoders).

like image 86
sharptooth Avatar answered Oct 02 '22 09:10

sharptooth


This exact topic was discussed here. It started out as a discussion of audio coding technologies, but on the linked page above someone said

That means no way to extract voice form steoro signal?

But it was pointed out that extracting the voice should be no more difficult than eliminating the voice.

I'll let you read further, but I suspect successful extraction may rely on the relatively narrow spectral distribution of the voice compared to instruments.

like image 26
pavium Avatar answered Oct 02 '22 08:10

pavium