-
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,...
-
相关阅读:
B. Random Teams(Codeforces Round 273)
Unity3d中的属性(Attributes)整理
Python 的 Flask 框架安装应用
动态SQL(章节摘要)
Linux系统PWM驱动【转】
嵌入式电路中的BUCK VS LDO【转】
git用法-打补丁【转】
展讯7731C_M Android6.0 充电指示灯实现(一)------关机充电实现【转】
Android 充电信息的获取【转】
2.Android硬件访问服务编写系统代码【转】
-
原文地址:https://www.cnblogs.com/jlmgary/p/6743590.html
Copyright © 2020-2023
润新知