kendryte / k230_sdk

Kendryte K230 SDK
BSD 2-Clause "Simplified" License
165 stars 35 forks source link

[help]: audio recorded on CanMV-k230 can't be heard #19

Closed yf13 closed 10 months ago

yf13 commented 10 months ago

Help

I can capture .wav via app/sample_audio.elf -type 1 -filename pdm.wav from big core console, but when playing it on Ubuntu host with play pdm.wav command, nothing can be heard. Meanwhile, I can hear other audio playing correctly on Ubuntu so it is might not be my host settings issue.

gh-sxp commented 10 months ago

CanMV-k230 does not support pdm and can be replaced with i2s.You can capture .wav via app/sample_audio.elf -type 0 -enablecodec 1 bitwidth 16 -filename i2s.wav from big core console.

gh-sxp commented 10 months ago

For more detailed usage methods, please refer to the documentation: https://github.com/kendryte/k230_docs/blob/main/zh/01_software/board/examples/K230_SDK_CanMV_Board_Demo%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97.md

yf13 commented 10 months ago

@gh-sxp thanks for the information, however, -type 0 still doesn't work here. Here I didn't use external mircophone when recording as I assume there is one microphone (B4013AM423-093) on CanMV board. am I correct?

gh-sxp commented 10 months ago

Currently there's no on-board microphone on CanMV-K230 V1 board. the mic is not mounted yet. To test the audio recording, i would suggest you to use an external headphone with mic input. or you can mount a mic to board by yourself.If you use an external headphone with mic input,you can insert headphones to try and see if you can record the sound input from the headphones. If you still cannot record sound, you can unplug and plug the headphones during the recording process.

yf13 commented 10 months ago

Thanks! I thought that B4013AM MIC is mounted. After retrying a headphone w/ mic , I can hear it now.

May I ask if the B4013AM is also mounted, which option should we use to record via it? Since in this case, there will be two MICs available.

gh-sxp commented 10 months ago

If two mics are available and you only want to record one, you can specify the parameters channels and monochannel. Record microphone audio using the following command: app/sample_audio.elf - type 0 -enablecodec 1 -bitwidth 16 -channels 1 -monochannel 0 -filename mic.wav Record headphone audio using the following command: app/sample_audio.elf -type 0 -enablecodec 1 -bitwidth 16 -channels 1 -monochannel 1 -filename headphone.wav

yf13 commented 10 months ago

@gh-sxp thanks for the information.