Wave文件格式

标志符(RIFF)
数据大小
格式类型("WAVE")
"fmt"
Sizeof(PCMWAVEFORMAT)
PCMWAVEFORMAT
"data"
声音数据大小
声音数据
  
WAV为WAVEFORM(波形)的缩写。声音文件的结构如图1所示,"RIFF"的格式辨别码为"WAVE"。整个文件由两个chunk所组成:辨别码"fmt"(注意,最后一个是空白字符!)及"data"。

  在"fmt"的chunk下包含了一个PCMWAVEFORMAT数据结构,其定义如下:

  typedef struct pcmwaveformat - tag {
  WAVEFORMAT wf ;
  WORD wBitsPerSample;
  } PCMWAVEFORMAT;
  typedef struct waveformat - tag {
  WORD wFormatTag ;
  WORD nChannels;
  DWORD nSamplesPerSec;
  DWORD nAvgBytesperSec;
  WORD nBlockAlign;
  } WAVEFORMAT;

  其意义分别为:

  wFormatTag:记录着此声音的格式代号,例如WAVE_FORMAT_PCM,WAVE_F0RAM_ADPCM等等。
  nChannels:记录声音的频道数。
  nSamp1esPerSec:记录每秒取样数。
  nAvgBytesPerSec:记录每秒的数据量。
  nBlockA1ign:记录区块的对齐单位。
  wBitsPerSample:记录每个取样所需的位元数。

你可能感兴趣的:(struct,数据结构)