Android底层开发之音频输入通道的软硬件分析

本文探讨了Android设备中音频输入通道的软硬件实现,包括基于3157模拟开关的硬件切换和rk616音频代码中的软件切换。在硬件实现中存在一些问题,如在使用BT SCO输入时,其他麦克风也可能输入。文章提出了理想的麦克风输入处理方法,建议所有麦克风通道并行,由CPU控制通断。同时指出Android系统针对单独3.5mm Mic jack的处理方式尚不完善。
摘要由CSDN通过智能技术生成
               

Android底层开发之音频输入通道的软硬件分析

        我们都知道耳机Mic集成在一直的那种四段耳机Mic插头是Android设备上比较常用。但是也会有分开的情况,比较如果在普通的PC机中装Android系统,那么就是这种情况。所以就有必要对音频输入通道的软件硬件进行统一的分析一下,接下来分析一个实例。

        该设备的硬件连接为:基于3157的模拟开关实现的 通道切换。

 

        设备是完全靠硬件实现的,那么就没有软件的什么工作了。但是这并不是一个理想的实现方法,真下的实现方法应该是所有的Mic都是并行的,每个Mic通道都有一个使能管脚。让系统来控制让哪个Mic作为输入。其实rk616 audio代码中是有切换的代码的:

static int rk616_capture_path_put(struct snd_kcontrol *kcontrol,

                struct snd_ctl_elem_value *ucontrol)

{

        struct rk616_codec_priv *rk616 = rk616_priv;

        long int pre_path;

 

        if (!rk616) {

                printk("%s : rk616_priv is NULL\n", __func__);

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值