Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Automatic Processing Human Voice With Microcontro, eliminate noise,echo

Status
Not open for further replies.

safo2t

New Member
hi
i need help with my project
my project must do the following

Automatic processing realtime audio(human voice) with microcontroller (must eliminate noise and echo,distribute sound equally over speakers )

details:
there will be several microphones at different position

only the microphone that detect the strongest signal will enabled
and not to take signal from the others

the sound must processed automatically with microcontroller (not DSP )
to eliminate echo from speakers and suppressed noise.

notes
microphones & speakers are wire and wireless

can u help me with my project ...i want to understand it more .
any recommended microcontrollers ,topics, software,hardware
that would be great

if u know some projects similiar to this to get benifit from plz help
 

nsaspook

Well-Known Member
Most Helpful Member
hi
i need help with my project
my project must do the following

Automatic processing realtime audio(human voice) with microcontroller (must eliminate noise and echo,distribute sound equally over speakers )

details:
there will be several microphones at different position

only the microphone that detect the strongest signal will enabled
and not to take signal from the others

the sound must processed automatically with microcontroller (not DSP )
to eliminate echo from speakers and suppressed noise.

notes
microphones & speakers are wire and wireless

can u help me with my project ...i want to understand it more .
any recommended microcontrollers ,topics, software,hardware
that would be great

if u know some projects similiar to this to get benifit from plz help

You might want to research BSS. Getting even simple processing with a uC might be impossible but it might give you ideas on your project.
Blind Source Separation: Audio Examples
**broken link removed**

**broken link removed**

blind source separation matlab - Google Search
 

safo2t

New Member
You might want to research BSS. Getting even simple processing with a uC might be impossible but it might give you ideas on your project.

u mean i must use a DSP ??

my instructor told me thAT I dont need DSP ...and the microcontroller will be enough ..confusing!!
 

dknguyen

Well-Known Member
Most Helpful Member
dsPICs can do this. They have function libraries specific for this purpose too. I forget if those libraries are free though. Some are free and some aren't.

I agree...you would need a DSP (or something DSP-like like a dsPIC) for something like this.

EDIT: I checked and they aren't free, but evaluations are available for those libraries.

**broken link removed**
 
Last edited:

nsaspook

Well-Known Member
Most Helpful Member
u mean i must use a DSP ??

my instructor told me thAT I dont need DSP ...and the microcontroller will be enough ..confusing!!

Some simple things like compression, peak detection or noise limiting is possible if the audio rate is limited to below 3khz (telephone quality). So if all you want is to select the mic with the highest levels that would be possible. I have my doubts on how well it will work. Try some google searches. audio peak detection microcontroller - Google Search
 

audioguru

Well-Known Member
Most Helpful Member
I worked with high quality boardroom tele-conference systems. The best ones used DSP for eliminating long distance echo that occured because the mics and speakers at each end were active and the system was full-duplex. Without the echo cancellers then there would be long distance acousical feedback howling and severe echoes.
The DSP needed to be "trained' with pink noise before each conference so it knew the echoes. It sometimes got confused.

The many mics were controlled by an automatically switched mic mixer that detected somebody talking then it turned on only their mic. But it frequently turned on too late so the first consonant part of each word was missing "Six" sounded like "Ix". Its sensitivity was reduced so that it would not turn on when it heard a loudspeaker. The switched mic mixer also confused the DSP echo canceller.
 

safo2t

New Member
i found this at Microchip site

dsPIC30F

with those libraries

● Noise Suppression library

● Acoustic Echo Cancellation library

● Line Echo Cancellation library





is it good for what i want



is so..how i choose dspic30f.... there is a lot



i prefer some thing with ADC/DAC and USB
 

blueroomelectronics

Well-Known Member
When is it due? Have you programmed a micro controller before.

Here's a suggestion. Use your PCs sound card add a microphone & speakers. Write and debug your code on the PC. If you can't make it work on a PC then you have almost no chance of getting it working on an embedded computer.
 

Oznog

Active Member
I think your instruction didn't want you to find a DSP ASIC that already had this designed in and just hook up the mic and speaker and "call it done".

Yes, you MUST have a dsPIC for this. PIC, or even the PIC24 16-bit controllers which lack the DSP core of the dsPIC30F/33F series, do NOT have the power.

The dsPIC's DSP core is very powerful in that one assembly instruction can do what might take 20 or 30 (or more!) instructions in PIC18 instruction set when doing things like 16-bit digital filters.

The 33F is a better line, IMHO. It's somewhat faster, and much less power. 30F will actually need a heatsink at top speed! And it's got the handy DMA controller. But, they're the same instruction set and DSP core. The DSP library functions listed above will work on the 33F, you'll just need to change around how it talks to peripherals.

But, the 33F is 3.3v, 30F is 5v or 3.3v (albeit at an even more limited speed at 3.3v). You wanna check and see what your board's looking like. A lot of codec chips are 3.3v anyways.
 
Last edited:
Status
Not open for further replies.

Latest threads

Top