\section{\module{sndhdr} --- サウンドファイルの識別}

\declaremodule{standard}{sndhdr}
\modulesynopsis{サウンドファイルの識別}
\sectionauthor{Fred L. Drake, Jr.}{fdrake@acm.org}
% Based on comments in the module source file.

\module{sndhdr}モジュールには、ファイルに保存されたサウンドデータの形式
を識別するのに便利な関数が定義されています。
どんな形式のサウンドデータがファイルに保存されているのか識別可能な場合、
これらの関数は\code{(\var{type}、\var{sampling_rate}、
\var{channels}、\var{frames}、\var{bits_per_sample})}のタプルを返しま
す。
\var{type}はデータの形式を示す文字列で、\code{'aifc'}、\code{'aiff'}、
\code{'au'}、\code{'hcom'}、\code{'sndr'}、\code{'sndt'}、\code{'voc'}、
\code{'wav'}、\code{'8svx'}、\code{'sb'}、\code{'ub'}、\code{'ul'}のうち
の一つです。
\var{sampling_rate}は実際のサンプリングレート値で、未知の場合や読
み取ることが出来なかった場合は\code{0}です。
同様に、\var{channels}はチャンネル数で、識別できない場合や読
み取ることが出来なかった場合は\code{0}です。\var{frames}はフレーム数で、識別できない場合は
\code{-1}です。
タプルの最後の要素\var{bits_per_sample}はサンプルサイズを示すビット数
ですが、A-LAW\index{A-LAW}なら\code{'A'}、u-LAW\index{u-LAW}なら
\code{'U'}です。

\begin{funcdesc}{what}{filename}
  \function{whathdr()}を使って、ファイル\var{filename}に保存されたサウン
  ドデータの形式を識別します。
  識別可能なら上記のタプルを返し、識別できない場合は\code{None}を返します 。
\end{funcdesc}

\begin{funcdesc}{whathdr}{filename}
  ファイルのヘッダ情報をもとに、保存されたサウンドデータの形式を識別し
  ます。
  ファイル名は\var{filename}で渡されます。
  識別可能なら上記のタプルを返し、識別できない場合は\code{None}を
  返します。
\end{funcdesc}