WAVファイルの構成

WAVファイルの中身や扱い方を知っておくと後々役に立つかも知れません。

という訳で早速、中身をバイナリエディタ『Stirling』で見てみます。

具体的なファイル構成がどうなっているかと言うと、
 4 byte RIFFヘッダ ('R' 'I' 'F' 'F')
 4 byte これ以降のファイルサイズ  
 4 byte WAVEヘッダ ('W' 'A' 'V' 'E')
 4 byte fmt チャンク ('f' 'm' 't' ' ')
 4 byte fmt チャンクのバイト数 リニアPCM ならば 16(10 00 00 00)
 2 byte フォーマットID リニアPCM ならば 1(01 00)
 2 byte チャンネル数 モノラル ならば 1(01 00)ステレオ ならば 2(02 00)
 4 byte サンプリングレート 44.1kHz ならば 44100(44 AC 00 00)
 4 byte データ速度 (Byte/sec) 44.1kHz 16bitステレオならば 176400(10 B1 02 00)
 2 byte ブロックサイズ 16bit ステレオ ならば 4(04 00)
 2 byte サンプルあたりのビット数 16bit ならば 16(10 00)
 2 byte 拡張部分のサイズ リニアPCMならば存在しない
 n byte 拡張部分 リニアPCMならば存在しない
 4 byte data チャンク ('d' 'a' 't' 'a')
 4 byte 波形データのバイト数  
 n byte 波形データ  
 そして、以下のタグとデータが
4 byte "fmt " フォーマット定義 最初のタグ 必須 4文字目のスペースも含まれる
4 byte "fact" 全サンプル数 波形データの前に存在する 無くても良い
4 byte "data" 波形データ 必須
4 byte "LIST" コメントや著作権情報 無くても良い
 以下のRIFFフォーマットの構造で記述されています。
4 byte RIFF形式の識別子 'RIFF'
4 byte ファイルサイズ(byte単位)
4 byte RIFFの種類を表す識別子 'WAVE'
4 byte タグ 1 }1つの単位
4 byte データの長さ 1
n byte データ 1
4 byte タグ 2 }1つの単位
4 byte データの長さ 2
n byte データ 2
  以降、繰り返し
 

 

最終更新:2012年12月09日 23:41
添付ファイル