cancel
Showing results for 
Search instead for 
Did you mean: 

STM32H747 discovery board audio recording issue

hareshel
Associate

I took the following code example from STM32h747 discovery git. Even though I have specified the number of channels as "2". The data at location 1, soon  is zero  which means R right channel data is always zero.

 

Please let me know if something is wrong.

 

Thanks,

Haresh E.L.

 

ALIGN_32BYTES (uint16_t inpBuf[AUDIO_IN_BUFFER_SIZE]) __attribute__((section(".RAM_D2")));

ALIGN_32BYTES (uint16_t outBuf[AUDIO_IN_BUFFER_SIZE]) __attribute__((section(".RAM_D2")));

 

uint32_t channel_nbr = 2;

 

AudioFreq_Ptr = AudioFreq+2; /* AUDIO_FREQUENCY_16K; */

 

AnalogAudioOutInit.Device = AUDIO_OUT_DEVICE_AUTO;

AnalogAudioOutInit.ChannelsNbr = channel_nbr;

AnalogAudioOutInit.SampleRate = *AudioFreq_Ptr;

AnalogAudioOutInit.BitsPerSample = AUDIO_RESOLUTION_16B;

AnalogAudioOutInit.Volume = AnalogVolumeLevel;

 

AnalogAudioInInit.Device = AUDIO_IN_DEVICE_ANALOG_MIC;

AnalogAudioInInit.ChannelsNbr = 2;

AnalogAudioInInit.SampleRate = *AudioFreq_Ptr;

AnalogAudioInInit.BitsPerSample = AUDIO_RESOLUTION_16B;

AnalogAudioInInit.Volume = AnalogVolumeLevel;

 

BSP_AUDIO_OUT_Init(0, &AnalogAudioOutInit);

BSP_AUDIO_IN_Init(0, &AnalogAudioInInit);

 

BSP_AUDIO_OUT_SetDevice(0, AUDIO_OUT_DEVICE_HEADPHONE);

 

BSP_AUDIO_IN_Record(0, &inpBuf[0], 2*AUDIO_IN_BUFFER_SIZE);

BSP_AUDIO_OUT_Play(0, &outBuf[0], 2*AUDIO_IN_BUFFER_SIZE);

 

while(1){

HAL_Delay(3);

}

1 REPLY 1
Maxime_MARCHETTO
Community manager
Community manager

Hello @hareshel,

This post has been escalated to the ST Online Support Team for additional assistance. We'll contact you directly.

Best regards,

Maxime


In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.