全志R系列音频模块使用文档

 5 E币 
成为会员,免费下载资料
文件大小:2.55 MB 上传者:淡定哥 时间:2021-01-06 11:36:34 下载量:11
  1. 概述
    1.1. 编写目的
    介绍 Tina 平台音频模块的使用方法。
    1.2. 适用范围
    适用于 Tina SDK。 1.3. 相关人员
    音频相关开发人员。
    初始版本,整合全志R40/R16/R6/F35/R18 内容
    相关术语

  2. 模块整体介绍
    linux 中的音频子系统采用 ALSA 架构实现。ALSA 目前已经成为了 Linux 的主流音频体系结构。在内核设备驱动层,ALSA 提供了 alsa-driver,同时在应用层,ALSA 为我们提供了 alsa-lib,应用程序只要调用alsa-lib 提供的 API,即可以完成对底层音频硬件的控制。
    2.1. 驱动架构
    Tina SDK 对各个平台的音频设备驱动均采用 ASOC 架构实现。ASoC 是建立在标准 alsa 驱动层上,为了更好地支持嵌入式处理器和移动设备中的音频 codec 的一套软件体系,ASoC 将音频系统分为 3 部分:
    Codec,Platform 和 Machine。

  3. Codec 驱动
    asoc 中的一个重要设计原则就是要求 Codec 驱动是平台无关的,一般提供以下特性:
    Mixer 和其他的音频控件;
    Codec 的 ALSA 音频操作接口;
  4. Platform 驱动
    它包含了该 SoC 平台的音频 DMA 和音频接口的配置和控制(I2S,PCM,AC97 等等);一般不
    包含与板子或 codec 相关的代码。
  5. Machine 驱动
    单独的 Platform 和 Codec 驱动是不能工作的,它必须由 Machine 驱动把它们结合在一起才能完成整个
    设备的音频处理工作。

    接口使用描述
    应用程序使用 alsa-lib 的接口使用音频驱动。在 Tina SDK 中,提供了 3 个应用程序 amixer,aplay,arecord用于音频的测试。
    Mixer 控件接口
    对音频通路、功放音量等 mixer 控件(control)接口的操作可通过对 amixer 进行封装来实现。如下所示为获取/设置音量的接口封装 demo。

Record 接口

展开
折叠
1086
评论
共 0 个
内容存在敏感词
    易百纳技术社区暂无数据
相关资料
关于作者
易百纳技术社区
淡定哥
贡献资料 93
易百纳技术社区 我上传的资料
登录查看
我赚取的积分
登录查看
我赚取的收益
登录查看
上传资料 赚取积分兑换E币
易百纳技术社区
删除原因
广告/SPAM
恶意灌水
违规内容
文不对题
重复发帖
置顶时间设置
结束时间
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-资料模块

审核失败

失败原因
备注
易百纳技术社区