-
Alsa aplay S8 U8 S16_LE S16_BE U16_LE U16_BE格式
举个例子
aplay -r 16000 -f S16_LE -D hw:0,0 -c 2 -d 3 ~/Private/Private_Tools/02_ALSA_Learning/left_1k_right_400hz.wav
S是有符号 U是无符号
BE是大端(低地址存高位)
这都是PCM的一种表示范围的方法,所以表示方法中最小值等价,最大值等价,中间的数据级别就是对应的进度了,可以都映射到-1~1范围。
S8: signed 8 bits,有符号字符 = char, 表示范围 -128~127
U8: unsigned 8 bits,无符号字符 = unsigned char,表示范围 0~255
S16_LE: little endian signed 16 bits,小端有符号字 = short,表示范围 -32768~32767
S16_BE: big endian signed 16 bits,大端有符号字 = short倒序(PPC),表示范围 -32768~32767
U16_LE: little endian unsigned 16 bits,小端无符号字 = unsigned short,表示范围 0~65535
U16_BE: big endian unsigned signed 16 bits,大端无符号字 = unsigned short倒序(PPC),表示范围 0~65535
还有S24_LE,S32_LE等,都可以表示数字的方法,PCM都可以用这些表示。
上面这些值中,所有最小值-128, 0, -32768, -32768, 0, 0对应PCM描叙来说都是一个值,表示最小值,可以量化到浮点-1。所有最大值也是一个值,可以量化到浮点1,其他值可以等比例转换。
PCMU应该是指无符号PCM:可以包括U8,U16_LE,U16_BE,...
PCMA应该是指有符号PCM:可以包括S8,S16_LE,S16_BE,...
-
相关阅读:
机器学习入门-贝叶斯垃圾邮件过滤(原理)
机器学习入门-贝叶斯拼写纠错实例
机器学习入门-贝叶斯算法(原理)
机器学习入门-集成算法(bagging, boosting, stacking)
高并发网站技术架构
Nginx教程
Shell脚本部分语法
关于文本处理sort-cut-wc详解
vim操作命令
修改Linux基本配置
-
原文地址:https://www.cnblogs.com/jlmgary/p/6743590.html
Copyright © 2020-2023
润新知