根据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字节,但实际上文件大小(由操作系统报告)是394284字节。我做错什么了吗?
发布于 2017-08-29 08:27:43
好的我找到了。RIFF/WAV文件中的所有数据都是使用Little Endian存储的,我将其作为Big读取。阅读就像小恩典:
Big Endian:
24 04 06 00
Little Endian:
00060424
它给出了394276字节的十进制+8字节的ID和RIFF块大小= 394284字节 :)
https://stackoverflow.com/questions/45924302
复制相似问题