Platform: AIO-3399J
OS: Android 7.1
Kernel: v4.4.83
在开发完音频驱动后,通过tinyplay、tinycap测试音频驱动的播放和录音功能正常,但使用Android自带的APP进行播放和录音时,音频文件在播放时出现声音断断续续,一卡一卡的或类似“爆破”(Pop-Click)杂音的现象。开发音频的硬件抽象层的tinyalsa_hal的动态库audio.primary.rk30board.so,来修改pcm_config结构体参数的rate、period_size和period_count来改变dma的传输数据量。
1、Android下Tinyalsa的编译和使用方法
1、. build/envsetup.sh
2、mmm external/tinyalsa/
3、编译Android源码,将生成的tinyplay、tinycap和tinymix等工具打包到/system/bin/目录下
4、通过串口在开发板上测试播放和录音功能:
root@rk3366:/ # tinyplay /sdcard/3.wav -D 1 -d 0 -p 1024 -n 3
root@rk3366:/ # tinycap /sdcard/test.wav -D 1 -d 0 –p 1024 –n 3
2、添加firefly-rk3399-nougat/hardware/rockchip/audio的Android.mk
MY_LOCAL_PATH := $(call my-dir)
#false
AUDIO_FORCE_LEGACY=false
ifeq ($(strip $(AUDIO_FORCE_LEGACY)), true)
include $(MY_