Android中使用ALSA声卡及alsa conf asound conf

               

1. 配置文件

总共有三个配置文件:

 1) /system/usr/share/alsa/alsa.conf :它指定了另外两个配置文件的路径

 2) /etc/asound.conf
 3) .asoundrc

可通过cat /proc/asound/cards查看当前系统有哪些声卡。

  

2. 第一步

cd到Android源码树根目录下:

cd /home/xxx/android/Android-2.0

从Android主页下载ALSA声卡的相关源码:

git clone git://android.git.kernel.org/platform/external/alsa-lib.git

git clone git://android.git.kernel.org/platform/external/alsa-utils.git

git clone git://android.git.kernel.org/platform/hardware/alsa_sound.git

这样下载完之后的各个包将会自动放到合适的地方。

3. 第二步

修改自己板子的BoardConfig.mk,使板子使用ALSA声卡,如下:
#HAVE_HTC_AUDIO_DRIVER := true
#BOARD_USES_GENERIC_AUDIO := true
BOARD_USES_ALSA_AUDIO := true
BUILD_WITH_ALSA_UTILS := true

如果是使用我们提供的Android-2.0那么这个BoardConfig.mk应该位于Android-2.0/build/target/board/generic

4. 第三步

重新编译Android

5. 第四步

在制作出来的根文件系统中添加/system/etc/asound.conf脚本配置声卡的工作参数,内容如下:
# #
# # Mixer devices
# #
ctl.AndroidPlayback {
        type hw
        card 0 # Can replace with drivers name from /proc/asound/cards
}
ctl.AndroidRecord {
        type hw
        card 0  #如果有多个Mic,可以指定一个Mic,则使用snd_pcm_open(.., "default",..)打开设备时,

                    #则只打开此设备,否则会从所有Mic进行录音
}

# #
# # Playback devices
# #
pcm.AndroidPlayback {
                type hw
                card 0
                device 0
}

pcm.AndroidPlayback_Speaker {
                type hw
                card 0
                device 0
}

pcm.AndroidPlayback_Speaker_normal {
                type hw
                card 0
                device 0
}

pcm.AndroidPlayback_Speaker_ringtone {
                type hw
                card 0
                device 0
}

pcm.AndroidPlayback_Speaker_incall {
                type hw
                card 0
                device 0
}

pcm.AndroidPlayback_Earpiece {
                type hw
                card 0
                device 0
}
               
pcm.AndroidPlayback_Earpiece_normal {
                type hw
                card 0
                device 0
}

pcm.AndroidPlayback_Earpiece_ringtone {
                type hw
                card 0
                device 0
}

pcm.AndroidPlayback_Earpiece_incall {
                type hw
                card 0
                device 0
}

pcm.AndroidPlayback_Bluetooth {
                type hw
                card 0
                device 0
}
               
pcm.AndroidPlayback_Bluetooth_normal {
                type hw
                card 0
                device 0
}

pcm.AndroidPlayback_Bluetooth_ringtone {
                type hw
                card 0
                device 0
}

pcm.AndroidPlayback_Bluetooth_incall {
                type hw
                card 0
                device 0
}

pcm.AndroidPlayback_Headset {
                type hw
                card 0
                device 0
}
               
pcm.AndroidPlayback_Headset_normal {
                type hw
                card 0
                device 0
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值