[RK3288][Android6.0] 音频调试方法小结

Platform: ROCKCHIP
OS: Android 6.0
Kernel: 3.10.92

以rt5631为例,后续遇到再增加.

使用tinyalsa工具确定播放音问题是否在驱动层
1|root@rk3288:/data # tinycap  test.wav                                        
Capturing sample: 2 ch, 44100 hz, 16 bit
^CCaptured 167936 frames

root@rk3288:/data # tinyplay test.wav                                          
Playing sample: 2 ch, 44100 hz, 16 bit

查看codec寄存器和正常的对比

root@rk3288:/data # cat /sys/kernel/debug/asoc/RK_RT5631/rt5631.2-001a/codec_reg                         <
00: 0000
01: 0000
//省略...

查看i2s寄存器和正常的对比
root@rk3288:/data # cat /sys/kernel/debug/regmap/ff890000.rockchip-i2s/registers
00: 0000000f
04: 00000000
08: 00033f3f
0c: 00000000
10: 000f0010
14: 00000000
18: 00000000
1c: 00000000
20: 00000000
28: 00000000

查看播放或者录音时的sw/hw parameters:(注意,要在工作的时候才有效)
root@rk3288:/proc/asound/card0/pcm0p/sub0 # cat sw_params                      
tstamp_mode: ENABLE
period_step: 1
avail_min: 1
start_threshold: 1536
stop_threshold: 3072
silence_threshold: 0
silence_size: 0
boundary: 1610612736

root@rk3288:/proc/asound/card0/pcm0p/sub0 # cat hw_params                      
access: RW_INTERLEAVED
format: S16_LE
subformat: STD
channels: 2
rate: 44100 (44100/1)
period_size: 512
buffer_size: 3072

硬件部分用示波器量一下I2S是否有信号

你可能感兴趣的:(子类__Audio)