cancel
Showing results for 
Search instead for 
Did you mean: 

Voice active detection of Speex encoding on STM32F4.

nhandt3
Associate II
Posted on June 18, 2014 at 12:07

Hi all,

I develop the SPEEX encoding on STM32F4 follow the application note : ''Vocoder demonstration using a Speex audio codec

on STM32F101xx and STM32F103xx microcontrollers'' and it's ok. I can play realtime with Speex encoding and decoding. Look at Speex, it have the opption: VOICE ACTIVE DETECTION and it always go with VBR (variable bitrate operation) opption. Now, my task is detect voice and i think about SPEEX. Have anyone know the value or flag that show the input stream is Voice or noise...

Thanks in advance.

PS: I see the name of author of application note is Joys. If he can read it, please help me.

Regards,

Nhan 
2 REPLIES 2
sevketkahya
Associate II
Posted on July 22, 2014 at 10:29

Hi Nhan,

I'm sorry, I couldn't help you but I think you can help me 🙂

I have just tried to implement the same vocoder solution mentioned in that Application Note. However, I took several errors and I couldn't make it. 

The error  I struggle now is that when it calls the speex_decoder_ctl in Speex_Init(), it falls to HardFault_Handler(). Can you help me about this.

Besides, I am curious about something, STm32f101 is  Cortex-M3 but STM32F4 is Cortex-M4. Does the code written in assembly especially for M3 work on M4?

Any help will be appreciated

Edit: I figured out that eventhough speex_encoder_init() function works like a charm,speex_decoder_init() function returns Null. That's why programme always goes HardFault_Handler().

I couldn't solve it yet and I am still waiting for your help.

Best Regards

Kahya

 

nhandt3
Associate II
Posted on September 11, 2014 at 09:44

Hi Kahya,

Sorry about too lately feetback. You should try to change stack size and heap size to pass Speex_Init(). 

At the first time, I didnot know the vocoder still run on cortex M4, but I try to put it, and it's ok, my project was finish.

I hope to help you although 2 month pass. 🙂 

Good to know you.

Regards,

Nhan