zoukankan
html css js c++ java
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是大端(低地址存高位)
LE是小端(低地址存低位)
这都是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,...
查看全文
相关阅读:
Android组件化框架设计与实践
浅谈Android进阶之路
Android APP 性能优化的一些思考
有关 Hybrid 开发模式实践总结
开发人员必备的技能——单元测试
有关Android插件化思考
人生的意义到底是什么?
Asp.Net Core 3.1学习-读取、监听json配置文件(7)
Asp.Net Core 3.1学习-依赖注入、服务生命周期(6)
Asp.Net Core 3.1学习- 应用程序的启动过程(5)
原文地址:https://www.cnblogs.com/jlmgary/p/6743590.html
最新文章
[java]Comparable和Comparator
[go]反射
循环队列-双端和单端
[go]指针
nginx使用手册+基本原理+优缺点
缓存问题[雪崩、击穿]
数据结构:优先队列和堆(JS篇)
Vue3.0新版API之composition-api入坑指南
vue 开发规范
提高首屏页面加载速度,解决vue-cli打包后单个文件过大的问题
热门文章
学习笔记:flutter项目搭建(mac版)
前端页面如何实现下拉刷新
性能优化:虚拟列表,如何渲染10万条数据的dom,页面同时不卡顿
reset.css
学习笔记:javascript中的Generator函数
强迫症!一行代码拿到url特定query的值
对于WebP格式入门解读
解读 Android TTS 语音合成播报
我所理解的Android组件化之通信机制
我所理解的HTTP协议
Copyright © 2011-2022 走看看