audio – 查找.wav文件和十六进制编辑器中的样本数

需要帮助Hex Editor和音频文件.我无法确定公式以获取.wav文件中的样本数.

我下载了StripWav,它告诉我.waves中的样本数量,但仍然无法弄清楚公式.

你能下载这两个.wavs,在十六进制编辑器中打开它们,并告诉我获取样本数量的公式.

如果你这样对我这么好,请告诉我每个.wav的样本数量,这样我就可以确保公式是正确的.

http://sinewavemultimedia.com/1wav.wav
http://sinewavemultimedia.com/2wav.wav

这是一个问题,我有两个程序,

一个读取wav数据,另一个显示numsamples
这是数据

RIFF 'WAVE' (wave file)
        <fmt > (format description)
                PCM format
                2 channel
                44100 frames per sec
                176400 bytes per sec
                4 bytes per frame
                16 bits per sample
        <data> (waveform data - 92252 bytes)

但另一个程序说NumSamples是

23,063 samples

/ ******* UPDATE ********* /
还有一件事我用2个文件进行了计算
这个是正确的

92,296 bytes and num samples is 23,063` 

但另一个没有正确出来它超过2 megs我刚刚减去了44个字节我在这里做错了吗?这是文件大小

2,473,696 bytes 

但正确的numsamples是

 617,400

最佳答案 确定WAV文件中的样本数没有简单的公式.所谓的“规范”WAV文件包含一个44字节的标题,后跟实际的样本数据.因此,如果您知道该文件每个样本使用2个字节,则样本数等于文件大小(以字节为单位)减去44(对于标题),然后除以2(因为每个字节有2个字节)样品).

不幸的是,并非所有的WAV文件都像这样“规范”. WAV文件使用RIFF格式,因此解析WAV文件的正确方法是搜索文件并找到各种块.

这是一个示例(不确定您需要使用哪种语言):

http://msdn.microsoft.com/en-us/library/ms712835

点赞