波原始数据中wav样本的二进制表示

问题描述 投票:0回答:1

我是堆栈溢出新手。我正在尝试用Java编辑Wave文件。主要是我想编辑某些样本,但是我不确定如何表示样本。标头(我从应用程序中的二进制文件中读取的标头)看起来完全像这样:

1 - 4      "RIFF"        Marks the file as a RIFF multimedia file.
                         Characters are each 1 byte long.

5 - 8      (integer)     The overall file size in bytes (32-bit integer)
                         minus 8 bytes. Typically, you'd fill this in after
                         file creation is complete.

9 - 12     "WAVE"        RIFF file format header. For our purposes, it
                         always equals "WAVE".

13-16      "fmt "        Format sub-chunk marker. Includes trailing null.

17-20      16            Length of the rest of the format sub-chunk below.

21-22      1             Audio format code, a 2 byte (16 bit) integer. 
                         1 = PCM (pulse code modulation).

23-24      2             Number of channels as a 2 byte (16 bit) integer.
                         1 = mono, 2 = stereo, etc.

25-28      44100         Sample rate as a 4 byte (32 bit) integer. Common
                         values are 44100 (CD), 48000 (DAT). Sample rate =
                         number of samples per second, or Hertz.

29-32      176400        (SampleRate * BitsPerSample * Channels) / 8
                         This is the Byte rate.

33-34      4             (BitsPerSample * Channels) / 8
                         1 = 8 bit mono, 2 = 8 bit stereo or 16 bit mono, 4
                         = 16 bit stereo.

35-36      16            Bits per sample. 

37-40      "data"        Data sub-chunk header. Marks the beginning of the
                         raw data section.

41-44      (integer)     The number of bytes of the data section below this
                         point. Also equal to (#ofSamples * #ofChannels *
                         BitsPerSample) / 8

45+                      The raw audio data.    

java binary wav
1个回答
0
投票

我放一张图片来更好地解释:)enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.