ALSA语音库移植到OK6410

本文详细介绍了如何将ALSA语音库移植到OK6410平台,包括ALSA库和工具的简介、版本下载、移植步骤以及在单板上的测试过程,旨在帮助开发者在Linux环境下实现音频功能。
摘要由CSDN通过智能技术生成

ALSA语音库移植到OK6410

环境简介:

系   统   ubuntu12.04.1 LTS
单   板:OK6410-A  linux-3.0.1
编译器:gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72) 
时   间: 2015/5/21

一、ALSA语音库简介

   出于对安全性方面的考虑,Linux下的应用程序无法直接对声卡这类硬件设备进行操作,而是必须通过内核提供的驱动程序才能完成。在Linux上进行音频编程的本质就是要借助于驱动程序,来完成对声卡的各种操作。

   对硬件的控制涉及到寄存器中各个比特位的操作,通常这是与设备直接相关并且对时序的要求非常严格,如果这些工作都交由应用程序员来负责,那么对声卡的编程将 变得异常复杂而困难起来,驱动程序的作用正是要屏蔽硬件的这些底层细节,从而简化应用程序的编写。目前Linux下常用的声卡驱动程序主要有两种:OSS 和ALSA。

   最早出现在Linux上的音频编程接口是OSS(Open Sound System),它由一套完整的内核驱动程序模块组成,可以为绝大多数声卡提供统一的编程接口。OSS出现的历史相对较长,这些内核模块中的一部分 (OSS/Free)是与Linux内核源码共同免费发布的,另外一些则以二进制的形式由4Front Technologies公司提供。由于得到了商业公司的鼎力支持,OSS已经成为在Linux下进行音频编程的事实标准,支持OSS的应用程序能够在绝 大多数声卡上工作良好。

   虽然OSS已经非常成熟,但它毕竟是一个没有完全开放源代码的商业产品,ALSA(Advanced Linux Sound Architecture)恰好弥补了这一空白,它是在Linux下进行音频编程时另一个可供选择的声卡驱动程序。ALSA除了像OSS那样提供了一组内 核驱动程序模块之外,还专门为简化应用程序的编写提供了相应的函数库,与OSS提供的基于ioctl的原始编程接口相比,ALSA函数库使用起来要更加方便一些。

   ALSA官网: http://www.alsa-project.org/

       alsa-driver,alsa-firwware是内核开发者所接触的东西,对于已经正常运行硬件,通常意味着这一部分已经整合到内核当中,无需修改.
      而alsa-utils主要是测试一些小工具.
      因此对于一个应用程序开发者,或者嵌入式应用开发者,接触到主要是alsa-lib编译出来的 libasound.so等库
  

二、下载alsa-utils, alsa-lib, 版本要一致

        http://www.alsa-project.org/main/index.php/Download


            我使用的版本是alsa-lib-1.0.22 和 alsa-utils-1.0.22

三、移植alsa-lib-1.0.22


<span style="font-family:SimSun;font-size:18px;"># tar xvjf alsa-lib-1.0.22.tar.bz2
# cd alsa-lib-1.0.22
# ./configure  \
--host=arm-linux \ 
--prefix=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/lib/arm-alsa \
--enable-static \
--enable-shared \ 
--disable-python \
--with-configdir=/usr/share \
--with-plugindir=/usr/lib/alsa_lib

# make
# make install</span>
说明:
(1) 目标板类型<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值