Linux audio 音频

您所在的位置:网站首页 alderlake架构 Linux audio 音频

Linux audio 音频

2023-07-22 14:25| 来源: 网络整理| 查看: 265

Linux 音频、Android 音频

https://www.cnblogs.com/linhaostudy/p/8169383.html

 

https://www.jianshu.com/p/0f5fe8f51b66

简介

LINUX下音频驱动开发,要遵循标准的ALSA架构, 下面分别从硬件架构、软件架构、驱动程序,3个方面分析。

硬件架构

硬件上音频总线接口有很多,如I2S、PCM、TDM、SLIMBUS等,以I2S为例分析:

 

I2S接口.png

播放流程 使用I2C对CODEC做初始化配置。音频数据从外部flash读取到内存中。数据经过DMA送到I2S的TXFIFO。数据由TXFIFO送到CODEC硬件。在CODEC硬件里,数据从数字信号转变成模拟信号。模拟信号经过喇叭播放出来,就实现了声音的播放。 录音流程 与播放流程相反,在第5步,从模拟信号变成数字信号,其他都一样 软件架构-ALSA

安卓的整体音频架构

 

ALSA.png

 

从上到下分别是:

APP-HAL,安卓中的音频框架,用于适配LINUX内核。ALSA-lib,LINUX内核音频驱动框架。machine-codec驱动,硬件音频驱动程序。 驱动程序

按照ALSA驱动框架要实现的接口有:

 

 

driver.png

 

各个部分功能分别是:

DTS,音频硬件参数配置。如I2S,PCM,SLIMBUSCPU DAI,CPU上的音频接口驱动,等。platform,基于CPU的DMA接口封装,用于实现音频数据在内存和DMA之间流动。CODEC DAI,CODEC上的音频接口驱动。CODEC,CODEC自身驱动。I2C,实现CODEC的配置接口。machine,设备层面组装所有驱动,实现音频通路。

链接:https://www.jianshu.com/p/0f5fe8f51b66  



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3