オーディオ ファイルまたはビデオ ファイルで使用されているコーデックを特定する確実な方法を探しています。私が現在使用しているのは、ファイル拡張子 (明らか) と、ファイルに対して「file -ib」を実行して決定される MIME タイプの 2 つです。
これではうまくいきません: 多くの形式は、内部で使用されている正確なコーデックを隠す「ラッパー」形式です。たとえば、「.ogg」ファイルは、Vorbis、Speex、または FLAC コーデックを内部的に使用できます。それらの MIME タイプも、通常、「application/ogg」などの下に隠されています。
「file」プログラムは明らかに、どのコーデックが使用されているかを教えてくれますが、人間が読める散文としてこれを返します:
kb.ogg: Ogg data, Vorbis audio, stereo, 44100 Hz, ~0 bps
そのため、プログラムで使用するのは危険です。
私が本質的に尋ねているのは、これらのラッパー形式を通り抜けて、ファイルの肉が何でできているかを教えてくれるスクリプト (任意の言語) はありますか?