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

相关推荐
java_logo2 小时前
MySQL Server Docker 容器化部署指南
linux·运维·数据库·docker·容器
誰能久伴不乏2 小时前
Linux文件套接字AF_UNIX
linux·服务器·c语言·c++·unix
a41324472 小时前
如何解决centos上oracle连接问题
linux·oracle·centos
h***34632 小时前
在linux(Centos)中Mysql的端口修改保姆级教程
linux·mysql·centos
星释2 小时前
Rust 练习册 97:Run-Length Encoding 压缩算法
java·linux·rust
2509_940880222 小时前
Linux(CentOS)安装 MySQL
linux·mysql·centos
可爱又迷人的反派角色“yang”2 小时前
LVS+Keepalived群集
linux·运维·服务器·前端·nginx·lvs
Nerd Nirvana2 小时前
15个提升开发效率的VS Code插件推荐
linux·vscode·开发工具·嵌入式软件开发·插件使用·智能采集设备·边缘终端
v***16022 小时前
Linux安装Redis以及Redis三种启动方式
linux·redis·bootstrap
AI视觉网奇3 小时前
vscode 远程失败
linux·服务器