WAV / RIFF - 文件头中的文件大小错误?

时间:2017-08-28 17:20:11

标签: audio hex decimal wav

根据WAV / RIFF文件规范:http://www.topherlee.com/software/pcm-tut-wavformat.html标题中的5-8个字节是整个文件的大小减去8个字节。例如:

52 49 46 46 RIFF
24 04 06 00 $Ř..   <-- file size
57 41 56 45 WAVE
66 6D 74 20 fmt
10 00 00 00 
01 00 01 00 
44 AC 00 00 
88 58 01 00
02 00 10 00 
64 61 74 61

十六进制24 04 06 00等于604243456字节十进制,但实际上文件大小(由OS报告)为394284字节。我做错了吗?

1 个答案:

答案 0 :(得分:1)

好的,我找到了。 RIFF / WAV文件中的所有数据都使用Little Endian存储,我将其作为Big Endain读取。阅读就像Little Endian一样:

Big Endian:
24 04 06 00

Little Endian:
00060424

它给出394276字节小数+ 8字节用于ID和RIFF块大小= 394284字节:)