-
card, device必须对应hdmi的声卡号和设备号,可以使用aplay -l查看对应的hdmi设备,可能会有出现多个hdmi设备
即Intel 82801AA-ICH的声卡号是0(card 0),设备号是0(device 0)。即hw:0,0 -
确定当前可以使用的hdmi设备的方法如下:
#. cat /proc/asound/cards 查看nvidia设备对应的ID号(假设=1)
#. alsamixer -c 1 打开声音设置,其中<S/PDIF>即为HDMI输出,“MM”代表静音,alsa在每次重启声音设备时都会默认为静音,所以必须首先打开音量再进行后续的操作。
#. alsactl store 保存上述配置
播放:
#. aplay -D hw:1,7 /usr/share/sounds/alsa/test.wav "hw后的1代表声卡号,7代表设备号,需要根据aplay -l的输出来确定这两个数字"找到对应的hdmi输出口。
录音:
1)查看录音设备
输入arecord –l
C:\Users\Administrator>adb shell
/ # arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: xxsndcard [xx-snd-card], device 1: TDM_Capture (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: xxsndcard [xx-snd-card], device 2: DMIC_Capture (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: xxsndcard [xx-snd-card], device 3: AWB_Record (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
通过如上命令可以得到可用于录音的设备,比如card x device x
2)录音
根据上面的信息,如果我们要用TDM_Capture 录音,可以输入如下命令
arecord -Dhw:0,1 -d 10 -f cd -r 44100 -c 2 -t wav test.wav
参数解析
-D 指定了录音设备,0,1 是card 0 device 1的意思,也就是TDM_Capture
-d 指定录音的时长,单位时秒
-f 指定录音格式,通过上面的信息知道只支持 cd cdr dat
-r 指定了采样率,单位时Hz
-c 指定channel 个数
-t 指定生成的文件格式
播放: $ aplay musicdemo.wmv
录音: $ arecord -c 2 -r 44100 -f S16_LE musicdemo.wmv