【LUBAN】【功能验证】如何测试MIC/SPK(录音和播放)功能

1、概述

在测试中,一般会把MIC和SPK一起来测试,因为一个录制音频,一个可以播放音频。
通常,我们会使用 aplayarecord 两个命令来测试。节选常用的参数例举如下:

-D, --device=NAME       select PCM by name
-c, --channels=#        channels
-f, --format=FORMAT     sample format (case insensitive)
-r, --rate=#            sample rate
Recognized sample formats are: S8 U8 S16_LE S16_BE U16_LE U16_BE S24_LE S24_BE U24_LE U24_BE S32_LE S32_BE U32_LE U32_BE
 FLOAT_LE FLOAT_BE FLOAT64_LE FLOAT64_BE IEC958_SUBFRAME_LE IEC958_SUBFRAME_BE MU_LAW A_LAW IMA_ADPCM MPEG GSM S20_LE 
 S20_BE U20_LE U20_BE SPECIAL S24_3LE S24_3BE U24_3LE U24_3BE S20_3LE S20_3BE U20_3LE U20_3BE S18_3LE S18_3BE U18_3LE 
 U18_3BE G723_24 G723_24_1B G723_40 G723_40_1B DSD_U8 DSD_U16_LE DSD_U32_LE DSD_U16_BE DSD_U32_BE

2、测试环境

2.1、硬件配置

D211开发板v4.0版本

2.2、驱动配置

依据原理图,修改target/d211/demo128_nand/board.dts配置文件如下:

&codec {
    pinctrl-names = "default";
    pinctrl-0 = <&spk_pins_d>, <&dmic_pins_a>;
    pa-gpios = <&gpio_a 7 GPIO_ACTIVE_LOW>;
    status = "okay";
};

3、测试方法

3.1、录制后并播放一个16bit的16K双声道音频

arecord  -c 2 -f S16_LE -r 16000 a.wav
aplay  -c 2 -f S16_LE -r 16000 a.wav

3.2、录制后立即播放

注意: 这样测试在播放中一般会有回声。

arecord -c 2 -f S16_LE -r 16000 -- | aplay -c 2 -f S16_LE -r 16000

你可能感兴趣的:(arm,物联网,mcu,c语言,linux)