(转)WAVE PCM 声音文件格式
标准WAVE文件格式
偏移 |
长度(字节) |
变量名 |
描述 |
备注 |
0 |
4 |
ChunkID |
ASCII字符“RIFF”,大端形式 |
RIFF头 |
4 |
4 |
ChunkSize |
36+SubChunk2Size,即:4 + (8 + SubChunk1Size) + (8 + SubChunk2Size),指除文件前8字节后的字节数 |
RIFF头 |
8 |
4 |
Format |
ASCII字符“WAVE”,大端形式 |
RIFF头 |
12 |
4 |
Subchunk1ID |
ASCII字符“fmt ”,大端形式 |
Fmt子块 |
16 |
4 |
Subchunk1Size |
对于PCM文件为16。指除前8字节的Fmt块大小 |
Fmt子块 |
20 |
2 |
AudioFormat |
PCM=1,其他值指以某种形式压缩(见表2) |
Fmt子块 |
22 |
2 |
NumChannels |
单声道=1,立体声=2 |
Fmt子块 |
24 |
4 |
SampleRate |
取样率,取16000 |
Fmt子块 |
28 |
4 |
ByteRate |
SampleRate * NumChannels * BitsPerSample/8 |
Fmt子块 |
32 |
2 |
BlockAlign |
NumChannels * BitsPerSample/8,所有声道中一个样本数据的字节总数 |
Fmt子块 |
34 |
2 |
BitsPerSample |
8或16 |
Fmt子块 |
36 |
4 |
Subchunk2ID |
ASCII字符串“data” |
Data子块 |
40 |
4 |
Subchunk2Size |
NumSamples * NumChannels * BitsPerSample/8,指数据中的字节数 |
Data子块 |
44 |
* |
Data |
实际的声音数据 |
表2 Format Code 格式编码
格式编码 |
预处理符号 |
数据 |
0x0001 |
WAVE_FORMAT_PCM |
PCM |
0x0003 |
WAVE_FORMAT_IEEE_FLOAT |
Ieee float |
0x0006 |
WAVE_FORMAT_ALAW |
8bits ITU-T G.711 A-law |
0x0007 |
WAVE_FORMAT_MULAW |
8-bit ITU-T G.711 u-law |
0xFFFE |
WAVE_FORMAT_EXTENSIBLE |
注意:
1)WAVE文件默认的字节顺序是小端顺序,若是大端顺序用RIFX代替RIFF标识
2)取样数据必须是偶数字节
3)8位取样数据被存储为无符号数,从0到255.16位的取样数据被存储为补码,从-32768到32767
4)在wave数据流中可能有添加的子块。每一个子块有char SubChunkID[4],unsigned long SubChunkSize和SubChunkSize字节的数据
5)RIFF代表Resource Interchange File Format
转自:http://blog.csdn.net/foxwit/article/details/5802389
(转)WAVE PCM 声音文件格式相关推荐
- 音频编解码·格式篇(1)Wave PCM audio format(WAV)
音频编解码·格式篇(1)Wave PCM audio format(WAV) 作者:柳大·Poechant 博客:Blog.CSDN.net/Poechant 邮箱:zhongchao.ustc@gm ...
- PCM音频文件格式的头信息
一个裸的PCM格式音频数据,如果不带头信息,不知道其采样率等相关信息,就无法用播放器播放出来.下面是默认的头信息格式: //音频头部格式 struct wave_pcm_hdr {char riff[ ...
- 东进语音卡 java_东进语音卡的声音文件格式
转自东进论坛 语音卡只支持8K8bit a-law 单声道的 PCM.wave.mp3,您的立体声的mp3需要转换成单声道,8k 8bit的才能播放 问:怎么样把wav格式的文件转换成东进卡能播放的格 ...
- android 相机拍照声音文件格式,android4.1 添加相机快门声音开关
最近接到一客户需求,要为相机添加一个shutter sound的controlbtn,刚看到的时候,觉得很简单吧,不就是在布局中添加好控件,然后响应close和open事件调用相应的方法就行了.想想是 ...
- 计算机不使用的声音文件格式,爱国者的录音笔录了两个音频但是都没法播放,显示不支持文件格式,怎么办...
MP3格式转换软件的款式有很多种,电脑中的mp3格式转换软件要怎么使用呢?电脑上需要安装一个音频转换器来把其他格式的音频文件转换成MP3格式的音频文件,要使用哪款MP3格式转换软件呢?小可爱们不用发愁 ...
- 使用DirectSound进行PCM声音采集
msdn有directsound函数的讲解,网上有类似流程的例子.我就不说废话了哈,直接说一下步骤, 因为步骤清楚了,自然写起来就不那么费劲了.^ .^ 第一步:初始化 CoInitialize(); ...
- Android音频开发(五)如何存储和解析最简单的音频wav文件
我们大家都知道,无论是文字.图像还是声音,都必须以一定的格式来组织和存储起来,然后其它的软件再以相同的协议规则,相应的格式才能去打开解析这一段数据,例如,对于原始的图像数据,我们常见的格式有 YUV. ...
- 带你分析wav音频文件结构(实例+代码)
转载请注明出处,谢谢您!https://blog.csdn.net/ljrsunshine/article/details/89320026 对wav文件的一些探索,与大家一起学习 文章目录 RIFF ...
- Winamp输入模块编写详解
写给C/C++基础类的朋友: 很长时间都没有认真的来版上和网友们聊聊了,偶尔上来也是随便转转,仅处理一下版务.这些日子里来你们之中的有些人给我发了短消息,问道"嘿,哥们(大多数时候用 ...
最新文章
- SpringCloud Gateway 测试问题解决
- NanoPi NEO Air使用五:安装Xfce和xrdp,实现远程访问
- 糟糕!HttpClient 连接池设置引发的一次雪崩!
- 一文读懂“新一代人工智能地图” ,让AI真正走进用户的生活
- 世纪联华的 Serverless 之路
- Gitlab创建第一个项目
- 容器服务kubernetes弹性伸缩高级用法
- P1423 小玉在游泳(python3实现)
- 操作系统——生产者-消费者问题
- 买表(【CCF】NOI Online能力测试3 入门组)
- 深度学习各场景评估指标总结
- Winform分页控件支持表头全选操作实现之最优方法
- @程序员,你会教自己的孩子学习编程吗?
- P1980 [NOIP2013 普及组] 计数问题
- 回想过去几年的编程生活
- bugku之密码ok解题思路
- BZOJ——2563: 阿狸和桃子的游戏
- 银行数字化转型导师坚鹏:基于招商银行案例研究的银行APP运营
- 能 ping 通但端口不通时端口可用性探测说明
- 用JAVA写一个画图小程序(JAVA 大作业)
热门文章
- 数字认证是做什么的?数字认证有什么用?
- java计算机毕业设计技术旅游平台源码+mysql数据库+系统+lw文档+部署
- Hyper-V 2016 系列教程50 某德国制造型企业上线案例分享
- 【优化选址】基于人工蜂群算法求解无线网络传感覆盖优化问题含Matlab源码
- python鸭子类型与协议理解
- 第一不完全性定理证明标号分类 拆解汉译 知识背景——哥德尔原著英译拆解汉译之一
- 人工智能讲师AI讲师叶梓谈人工智能的应用人工智能项目咨询应用案例-8
- electron打包的一些问题
- TF-IDF的原理概述
- [ZUCC 计网]BB-quiz-数据链路层测试-2020