PCM格式分析
分析PCM编码文件的头信息
- 头文件一般情况下共44个字节,格式如下表
内容 | 长度 |
---|---|
“RIFF” | 4 |
后续字节长度 | 4 |
“WAVE” | 4 |
“fmt “ | 4 |
“fmt size” | 4 |
PCM标识(01 00) | 2 |
通道数 | 2 |
采样率 | 4 |
每秒字节数 | 4 |
每个采样点字节数 | 2 |
量化比特数 | 2 |
“data” | 4 |
实际负载长度 | 4 |
Tips:
- 后续字节长度 = 文件大小 - 8
- 每秒字节数 = 采样率 x 通道数 x 量化比特数 / 8
- 每个采样点比特数 = 通道数 x 量化比特数 / 8
- 实际负载长度 = samples x 通道数 x 2
- 举个栗子
- 00-03 “RIFF”
- 04-07 转换为10进制 = 106818 = 文件大小 - 8 (字节)
- 08-0B “WAVE”
- 0C-0F “fmt “
- 10-13 18(通常是16,这里多了ExtraParamSize)
- 14-15 pcm = 1
- 16-17 mono = 1, stereo = 2
- 18-1B 采样率 = 16000
- 1C-1F 每秒字节数 = 32000
- 20-21 每个采样点字节数 = 2
- 22-23 量化比特数 = 16
- 24-25 ExtraParamSize(if PCM, then doesn’t exist) 很好奇为什么pcm=1的情况下还有这样一个字段
- 26-29 “data”
- 2A-2D 实际负载长度 = 99250
或者去官网查看更详细的内容 点我传送至官网——>
PCM格式分析
https://baifabaiquan.cn/2023/02/17/PCM格式分析/