FS_S5PC100平台上WM9714 ALSA音频移植

FS_S5PC100平台上WM9714 ALSA音频移植

来源:华清远见研发中心    

    一、驱动的移植

    这个驱动在内核中支持,我们只需要进行简单的配置就行了,配置如下:

    $ make menuconfig
    Device Drivers --->
      <*> Sound card support --->
        <*> Advanced Linux Sound Architecture --->
          <*> ALSA for SoC audio support --->
           SoC Audio for the Samsung S3C --->
             <*> SoC Audio for the Samsung S3C chips
             <*> SoC AC97 Audio support for SMDKC100 - WM9713
             SMDK Record Path Select (Input Stream is MIC) --->
                (X) Input Stream is MIC

    这里record path必须选择为MIC否则无法录音(华清远见研发中心原创,转载请注明出处)。

    二、ALSA工具移植

    我们要实现语音的录制和播放,在这里我们选择了alsa-utils,下面是它的移植过程,首先我们需要下载alsa工具的源码,包括alsa-lib和alsa-utils,在下载这两个源码的时候我们尽量让他们的版本移植,减少不必要的麻烦,下载网站如下:

    http://www.alsa-project.org/main/index.php/Download
    这里我们选择的版本是:
    alsa-lib-1.0.23.tar.bz2
    alsa-utils-1.0.23.tar.bz2

    1、alsa-lib移植

    1)解压代码
    $ tar xvf alsa-lib-1.0.23.tar.bz2

    2)配置
    $ cd alsa-lib-1.0.23
    $./configure --host=arm-none-linux-gnueabi 
        --prefix=/home/david/project/S5PC100/alsa/alsa-lib

    3)编译
    $ make

    4)安装
    $ make install

    2、alsa-utils移植

    1)解压代码
    tar xvf alsa-utils-1.0.23.tar.bz2

    2)配置
    $ cd alsa-utils-1.0.23
    $ ./configure --host=arm-none-linux-gnueabi 
    --prefix=/home/david/project/S5PC100/alsa/alsa-utils 
    --with-alsa-inc-prefix=/home/david/project/S5PC100/alsa/alsa-lib/include 
    --with-alsa-prefix=/home/david/project/S5PC100/alsa/alsa-lib/lib 
    --disable-alsamixer --disable-xmlto

    3)编译
    $ make

    4)安装
    $ make install

    3、开发板配置

    1)库的拷贝
    将alsa的库拷贝到目标板根文件系统的lib下
    $ cp alsa-lib/lib/libasound.* /source/rootfs-S5PC100/lib/

    2) alsa的配置文件拷贝
    除了库之外alsa的配置文件也需要拷贝到目标板根文件系统中,这里需要注意的是share目录在目标板的存放位置必须和在主机的存放路径移植,比如在主机上存放在/home/david/project/S5PC100/alsa/alsa-lib,那么我们就得把share放在目标板上的这个路径里
    $ cp alsa-lib/lib/share/ /source/rootfs-S5PC100/ /home/david/project/S5PC100/alsa/alsa-lib

    3) alsa-utils拷贝
    将alsa-utils/bin目录小的内容拷贝到目标板根文件系统中的bin下
    $ cp alsa-utils/bin/* /source/rootfs-S5PC100/bin/

    4、测试

    1)录音测试
    单声道录音:
    $ arecord -d 10 -t wav -c1 -r 22050 -f S16_LE test.wav
    立体声录音:
    $ arecord -d 10 -t wav -c2 -r 22050 -f S16_LE test1.wav
    2)放音测试
     $ aplay test.wav

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值