A40i/T3
内部集成
Audio Codec
是一款带耳机放大器的高品质立体声音频编解码器。用户可以使用文件系统内带的 ALSA 音频录制、播放、配置工具进行测试。
一、音频系统简单配置
1. ALSA
在 ALSA 的定义里,系统中的每一个音频设备都称作“声卡”。可以使用如下命令列出所有已连接的音频设备:
# cat /proc/asound/cards
0 [audiocodec ]: audiocodec - audiocodec
audiocodec
1 [sndhdmi ]: sndhdmi - sndhdmi
sndhdmi
#
可以看到此时系统中有2个声卡,声卡 0 audiocodec和声卡1 sndhdmi
。
或者通过下面的指令查看当前设备的声卡
# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: audiocodec [audiocodec], device 0: SUNXI-CODEC sun8iw11codec-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: sndhdmi [sndhdmi], device 0: SUNXI-HDMIAUDIO sndhdmi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
#
用amixer scontents查看有哪些参数可以控制(包含所有控制器的音量信息)
# amixer scontents
Simple mixer control 'Headphone',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Headphone volume',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 63
Mono: 59 [94%]
Simple mixer control 'PCM music volume',0
Capabilities: volume
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 255
Front Left: 255 [100%]
Front Right: 255 [100%]
Simple mixer control 'FM gain volume',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 7
Mono: 3 [43%]
Simple mixer control 'Phone Out Mixer LOMIX',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Phone Out Mixer MIC1 Boost',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Phone Out Mixer MIC2 Boost',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Phone Out Mixer ROMIX',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Phoneout Speaker',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'ADC gain volume',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 7
Mono: 3 [43%]
Simple mixer control 'HPL Mux',0
Capabilities: enum
Items: 'DAC' 'OMIX'
Item0: 'DAC'
Simple mixer control 'HPR Mux',0
Capabilities: enum
Items: 'DAC' 'OMIX'
Item0: 'DAC'
Simple mixer control 'LINEIN Mixer volume',0
Capabilities: volume
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 7
Front Left: 3 [43%]
Front Right: 3 [43%]
Simple mixer control 'LINEIN gain volume',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 7
Mono: 3 [43%]
Simple mixer control 'Left Input Mixer FML',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Left Input Mixer LINEINL',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Left Input Mixer LINEINLR',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Left Input Mixer LOMIX',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Left Input Mixer MIC1 Boost',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Left Input Mixer MIC2 Boost',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Left Input Mixer ROMIX',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Left Output Mixer DACL',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Left Output Mixer DACR',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Left Output Mixer FML',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Left Output Mixer LINEINL',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Left Output Mixer LINEINLR',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Left Output Mixer MIC1 Boost',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Left Output Mixer MIC2 Boost',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'MIC gain volume',0
Capabilities: volume
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 7
Front Left: 3 [43%]
Front Right: 3 [43%]
Simple mixer control 'MIC1 boost volume',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 7
Mono: 4 [57%]
Simple mixer control 'MIC2 Mux',0
Capabilities: enum
Items: 'MIC3IN' 'MIC2IN'
Item0: 'MIC2IN'
Simple mixer control 'MIC2 boost volume',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 7
Mono: 4 [57%]
Simple mixer control 'Right Input Mixer FMR',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Right Input Mixer LINEINLR',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Right Input Mixer LINEINR',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Right Input Mixer LOMIX',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Right Input Mixer MIC1 Boost',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Right Input Mixer MIC2 Boost',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Right Input Mixer ROMIX',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Right Output Mixer DACL',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Right Output Mixer DACR',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Right Output Mixer FMR',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Right Output Mixer LINEINLR',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Right Output Mixer LINEINR',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Right Output Mixer MIC1 Boost',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Right Output Mixer MIC2 Boost',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'codec hub mode',0
Capabilities: enum
Items: 'null' 'hub_disable' 'hub_enable'
Item0: 'hub_disable'
Simple mixer control 'digital volume',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 63
Mono: 63 [100%]
Simple mixer control 'phoneout volume',0
Capabilities: volume volume-joined
Playback channels: Mono
Capture channels: Mono
Limits: 0 - 7
Mono: 3 [43%]
#
2.speaker 放音测试,打开两个混频器、喇叭并设置音量。
root@A40i~/root$
amixer cset numid=15,iface=MIXER,name='Phone Out Mixer LOMIX Switch'
on
root@A40i~/root$
amixer cset numid=16,iface=MIXER,name='Phone Out Mixer ROMIX Switch'
on
root@A40i~/root$
amixer cset numid=48,iface=MIXER,name='Phoneout Speaker Switch' on
root@A40i~/root$
amixer cset numid=2,iface=MIXER,name='digital volume' 50
3.耳机放音测试
如果耳机与喇叭同时打开时,默认(声卡0)从喇叭输出。需拔出喇叭。
root@A40i~/root$
aplay -Dhw:0,0 /root/wo.wav
//
播放音频文件
wo.wav
Playing WAVE '/usr/bin/Rear_Center.wav' : Signed 16 bit Little Endian, Rate 22050 Hz, Stereo
这个命令使用了aplay
工具来播放音频文件,并指定了使用硬件声卡编号为0的设备进行播放。下面是对这个命令的解析:
aplay
: 这是一个用于播放音频文件的命令行工具,通常用于Linux系统。-Dhw:0,0
: 这是aplay
命令的一个选项,用于指定播放音频时使用的设备。其中hw:0,0
表示硬件设备号为0的第一个子设备,通常用于指定声卡设备。这个部分可以根据系统实际情况进行调整,例如如果要使用第二个子设备可以写作hw:0,1
,依此类推。/root/wo.wav
: 这是要播放的音频文件的路径和文件名。在这个例子中,音频文件是位于/root
目录下,文件名为wo.wav
。需要注意的是,这里的文件路径应该根据实际文件所在位置进行调整。
因此,这个命令的作用是使用声卡编号为0的设备来播放位于/root/wo.wav
路径下的音频文件。
当前系统中所有可用控制器的 amixer
命令
# amixer controls
numid=3,iface=MIXER,name='Headphone volume'
numid=47,iface=MIXER,name='Headphone Switch'
numid=49,iface=MIXER,name='PCM music volume'
numid=5,iface=MIXER,name='FM gain volume'
numid=15,iface=MIXER,name='Phone Out Mixer LOMIX Switch'
numid=18,iface=MIXER,name='Phone Out Mixer MIC1 Boost Switch'
numid=17,iface=MIXER,name='Phone Out Mixer MIC2 Boost Switch'
numid=16,iface=MIXER,name='Phone Out Mixer ROMIX Switch'
numid=48,iface=MIXER,name='Phoneout Speaker Switch'
numid=11,iface=MIXER,name='ADC gain volume'
numid=13,iface=MIXER,name='HPL Mux'
numid=14,iface=MIXER,name='HPR Mux'
numid=4,iface=MIXER,name='LINEIN Mixer volume'
numid=6,iface=MIXER,name='LINEIN gain volume'
numid=28,iface=MIXER,name='Left Input Mixer FML Switch'
numid=29,iface=MIXER,name='Left Input Mixer LINEINL Switch'
numid=30,iface=MIXER,name='Left Input Mixer LINEINLR Switch'
numid=27,iface=MIXER,name='Left Input Mixer LOMIX Switch'
numid=32,iface=MIXER,name='Left Input Mixer MIC1 Boost Switch'
numid=31,iface=MIXER,name='Left Input Mixer MIC2 Boost Switch'
numid=26,iface=MIXER,name='Left Input Mixer ROMIX Switch'
numid=41,iface=MIXER,name='Left Output Mixer DACL Switch'
numid=40,iface=MIXER,name='Left Output Mixer DACR Switch'
numid=42,iface=MIXER,name='Left Output Mixer FML Switch'
numid=43,iface=MIXER,name='Left Output Mixer LINEINL Switch'
numid=44,iface=MIXER,name='Left Output Mixer LINEINLR Switch'
numid=46,iface=MIXER,name='Left Output Mixer MIC1 Boost Switch'
numid=45,iface=MIXER,name='Left Output Mixer MIC2 Boost Switch'
numid=7,iface=MIXER,name='MIC gain volume'
numid=9,iface=MIXER,name='MIC1 boost volume'
numid=12,iface=MIXER,name='MIC2 Mux'
numid=10,iface=MIXER,name='MIC2 boost volume'
numid=21,iface=MIXER,name='Right Input Mixer FMR Switch'
numid=23,iface=MIXER,name='Right Input Mixer LINEINLR Switch'
numid=22,iface=MIXER,name='Right Input Mixer LINEINR Switch'
numid=19,iface=MIXER,name='Right Input Mixer LOMIX Switch'
numid=25,iface=MIXER,name='Right Input Mixer MIC1 Boost Switch'
numid=24,iface=MIXER,name='Right Input Mixer MIC2 Boost Switch'
numid=20,iface=MIXER,name='Right Input Mixer ROMIX Switch'
numid=33,iface=MIXER,name='Right Output Mixer DACL Switch'
numid=34,iface=MIXER,name='Right Output Mixer DACR Switch'
numid=35,iface=MIXER,name='Right Output Mixer FMR Switch'
numid=37,iface=MIXER,name='Right Output Mixer LINEINLR Switch'
numid=36,iface=MIXER,name='Right Output Mixer LINEINR Switch'
numid=39,iface=MIXER,name='Right Output Mixer MIC1 Boost Switch'
numid=38,iface=MIXER,name='Right Output Mixer MIC2 Boost Switch'
numid=1,iface=MIXER,name='codec hub mode'
numid=2,iface=MIXER,name='digital volume'
numid=8,iface=MIXER,name='phoneout volume'