ALSA pcm接口的概念解释

PCM(数字音频)接口

PCM缩写: Pulse Code Modulation脉冲调制编码,我们理解为通过一定连续时间周期产生数字音频并带有音量样本的处理过程.

模拟信号被记录通过模拟到数字转换器,数字值(也就是某个特定时刻的音量值)获得来自ADC可以进一步处理,接下的图片展示的是个sine waveform

数字化过程:

正如你所看到的:数字音频的质量 取决于时间(录音的速率 )和电压的分辨率 (通常用一个线性整数值表示)

存储的数字信号能够被转换为电压(模拟)通过数字到模拟转换器 (DAC).

一个数字值被称为sample(样本),在一个特定的时间更多的样本被称为frames(frame是ALSA的术语)依赖于一定数量的转换器.一个frame可能包含一个sample(当只有一个转换器被使用 称为--mono )或更多samples样本(例如:stereo立体声 有信号来自于两个转换器录音来自同一个时间内).数字音频流(Digital audio stream)包含一些frames记录来自于一段范围持续时间周期(continuous time periods).

原文地址:

https://www.alsa-project.org/alsa-doc/alsa-lib/pcm.html

相关推荐
AOwhisky10 小时前
Redis 学习笔记(第四期):高可用与集群(哨兵 + Cluster + 容器化)
linux·运维·数据库·redis·笔记·学习·缓存
零陵上将军_xdr10 小时前
Shell脚本入门:从Hello World到变量的灵活运用
linux
C语言小火车11 小时前
嵌入式Linux应用开发技术栈完全指南
linux·运维·服务器
天南散修12 小时前
MT7916驱动中802.11转换为802.3
linux·网络·驱动开发·wifi·802.11
CriticalThinking13 小时前
在xshell中使用ssh隧道访问远程服务
linux·网络·ssh
爱装代码的小瓶子13 小时前
安工大题目分类(含解析和翻译)
linux·网络·c
是个西兰花14 小时前
linux:命名管道与共享内存
linux·运维·服务器·网络·c++
Snasph14 小时前
Linux 日志流水线深度解析:syslog() → journald → rsyslog → /var/log/syslog
linux·syslog·rsyslog
凡人叶枫14 小时前
Effective C++ 条款08:别让异常逃离析构函数
java·linux·数据库·c++·嵌入式开发
新时代牛马14 小时前
内核调试方法
linux·学习