
audio
文章平均质量分 87
一只青木呀
life,just smile
展开
-
Android Audio系统框架
Android Audio系统框架转载 2022-06-08 10:16:50 · 4450 阅读 · 3 评论 -
Audio-PCM设备的创建
前言Linux内核版本:4.1.15主芯片:IMX6ULLcodec芯片:WM8960一、PCM编码PCM (Pulse Code Modulation) 是通过等时间隔(即采样率时钟周期)采样将模拟信号数字化的方法。PCM使用等间隔采样方法,将每次采样的模拟分量幅度表示为N位的数字分量(N = 量化深度),因此PCM方式每次采样的结果都是N bit字长的数据。CODEC 的本质是 ADC 和 DAC,那么采样率和采样位数就是衡量一款音频CODEC 最重要的指标。比如常见音频采样率有 8K、原创 2022-05-29 13:59:58 · 1636 阅读 · 0 评论 -
六、Audio-ALSA架构中的codec
一、codec简介处理器如果既想“听到”外界的声音,又想向外界传达自己的“心声”,那么就需要同时用到 DAC 和 ADC 这两款芯片。那是不是买两颗 DAC 和 ADC 芯片就行了呢?答案肯定是可以的,但是音频不单单是能出声、能听到就行。我们往往需要听到的声音动听、录进去的语音贴近真实、可以调节音效、对声音能够进行一些处理(需要 DSP 单元)、拥有统一的标准接口,方便开发等等。将这些针对声音的各种要求全部叠加到 DAC 和 ADC 芯片上,那么就会得到一个专门用于音频的芯片,也就是音频编解码芯片,英文名原创 2022-05-28 21:13:55 · 3239 阅读 · 1 评论 -
五、Audio-ALSA架构中的platform
一、Platform驱动的作用ASoC被分为Machine,Platform和Codec三大部件,Platform驱动的主要作用是完成音频数据的管理,最终通过CPU的数字音频接口(DA〉把音频数据传送给Codec进行处理,最终由Codec输出驱动耳机或者是喇叭的音频信号。在具体实现上,ASoC又把Platform驱动分为两个部分: snd_soc_platform_driver和snd_soc_dai_driver。其中,platform_driver负责管理音频数据,把音频数据通过dma或其他操作传送至原创 2022-05-27 21:29:43 · 1063 阅读 · 0 评论 -
Audio-音频传输接口(I2S、PCM、PDM)
1、音频接口使用场景I2S和PCM(TDM)接口传输的数据是PCM编码格式的音频数据。PDM接口传输的数据是PDM编码格式的音频数据。2、I2S接口I2S(Inter-IC Sound)总线有时候也写作 IIS,I2S 是飞利浦公司提出的一种用于数字音频设备之间进行音频数据传输的总线。和 I2C、SPI 这些常见的通信协议一样,I2S 总线用于主控制器和音频 CODEC 芯片之间传输音频数据。因此,要想使用 I2S 协议,主控制器和音频 CODEC 都得支持 I2S 协议。I2S 接口需要 3原创 2022-05-26 16:04:09 · 45947 阅读 · 3 评论 -
四、Audio-ALSA框架中的machine驱动
machine简介ASoC被分为Machine、Platform和Codec三大部分,其中的Machine驱动负责Platform和 Codec之间的耦合以及部分和设备或板子特定的代码,再次引用上一节的内容: Machine驱动负责处理机器特有的一些控件和音频事件(例如,当播放音频时,需要先行打开一个放大器)﹔单独的Platform和Codec驱动是不能工作的,它必须由Machine驱动把它们结合在一起才能完成整个设备的音频处理工作ASoC的一切都从Machine驱动开始,包括声卡的注册,绑定Platf原创 2022-05-25 21:37:49 · 2979 阅读 · 0 评论 -
三、Audio-ALSA 中的platfrom、machine、codec
一、Linux ALSA 音频系统框架● ALSA COREalsa 核心层,向上提供逻辑设备(PCM/CTL/MIDI/TIMER/…)系统调用,向下驱动硬件设备(Machine/I2S/DMA/CODEC)● ASoC COREASoC:ALSA System on Chip,是建立在标准 ALSA 驱动上,为了更好支持嵌入系系统 和 应用于移动设备的音频 codec 的一套软件体系,它依赖于标准 ALSA 驱动框架。由三大部分组成,分别是 Machine、Platform、Codec。原创 2022-05-24 09:51:58 · 1437 阅读 · 1 评论 -
一、Audio-音频简介
一、音频简介音频是我们最常用到的功能,音频也是 linux 和安卓的重点应用场合。处理器要想“听到”外界的声音必须要把外界的声音转化为自己能够理解的“语言”,处理 器能理解的就是 0 和 1,也就是二进制数据。所以我们需要先把外界的声音转换为处理器能理 解的 0 和 1,在信号处理领域,外界的声音是模拟信号,处理器能理解的是数字信号,因此这 里就涉及到一个模拟信号转换为数字信号的过程,而完成这个功能的就是 ADC 芯片。同理,如果处理器要向外界传达自己的“心声”,也就是放音,那么就涉及到将处理器能理原创 2022-05-23 20:34:24 · 4493 阅读 · 0 评论 -
二、Audio-Linux ALSA整体框架
一、音频架构简介ALSA是Advanced Linux Sound Architecture 的缩写,目前已经成为了linux的主流音频体系结构在内核设备驱动层,ALSA提供了alsa-driver,同时在应用层,ALSA为我们提供了alsa-lib,应用程序只要调用alsa-lib提供的API,即可以完成对底层音频硬件的控制.想了解更多关于alsa这一开源项目的信息和只是请查看一下网站:https://www.alsa-project.org/alsa-lib:在上图中可以看出ALSA对上曾提供a原创 2022-05-23 20:31:12 · 2242 阅读 · 1 评论