RIFF wave文件頭,包括 RIFF 的head,和多個 chunk (fmt chunk、fact chunk、data chunk)
1、整體結構關係:
2、具體分析,結構佈局、各個字段大小如下:
Name | size(B) | |||
head | RIFF | 4 | ||
riff-size | 4 | 從下一個單元開始,全部數據大小。 | 不包括 "RIFF" 和 riff-size | |
WAVE | 4 | |||
chunk:fmt | fmt | 4 | ||
28 | pcmFmt | 4 | ||
compress | 2 | |||
channels | 2 | |||
sample rate | 4 | |||
byte rate | 4 | |||
block align | 2 | |||
sample deepth | 2 | |||
ext data size | 2 | 值總是2 | ||
ext data | 2 | |||
chunk:fact | fact | 4 | ||
chunk size | 4 | 從下一個單元開始,本chunk數據大小。 | 不包括 "fact" 和 chunk size 本身 | |
data | 可變大小 | 值總是456 | ||
chunk:data | data | 4 | ||
chunk size | 4 | 從下一個單元開始,本chunk數據大小。 | 不包括 "data" 和 chunk size 本身 | |
data | 可變大小 | 不定 | ||
other | 512 | or 512+256=768 |