回答:
これは非常に簡単なプロセスであり、GSpot Codec Information Tool を使用して実行できます。プログラムをダウンロードしてインストールするだけです。[スタート]メニューに移動し、プログラムを開きます。
ファイルのビデオコーデックのFourCCコードを探します
FourCC Webサイトにアクセスして、誰がそのコーデックを開発したかを調べてください
これで、開発者のWebサイトにアクセスしてコーデックをダウンロードできます。wmpluginsのCodecセクションにアクセスすることもできます。
注:「コーデックパック」というラベルの付いたものや、FourCC Webサイトの上部にあるリンクからダウンロードしないでください。これにより、ファイルを再生するときに問題を回避できます。
VLCは、すべてのプラットフォームに組み込まれたDivxおよび3ivxをサポートしています。
私はこれを必要として、この(非常に古い)ページを見つけ、260 MBのAVIをテキストエディターにロードしない方がよいと判断しました。
Unixライクなシェルを使用している場合は、おそらく「strings」と呼ばれるプログラムを使用して、印刷可能な文字のシーケンスを見つけます。デフォルトでは、最小長は4です。これは、このニーズに適しています。(コマンドラインで変更できます。)「vids」とfourccは出力で連続します(ただし、AVIの1つの文字列ではありません)。
結果を「more」などの単純なものにパイプして、自分で見つけることができます。または、パイプを頭に入れて、必要な行数を推測することもできます。または、もう少し洗練されたものをsedにパイプして、目的のパターンに一致する行を印刷することもできます。または、awkを使用して同じことを行うことができます。私のcygwin bashシェルでは、これらのオプションは次のコマンドのように見えます。
文字列foo.avi | より多くの
文字列foo.avi | head -10
文字列foo.avi | sed -n '/ vids /、+ 1p'
文字列foo.avi | awk 'NR == 1、/ vids / {if($ 0 == "vids"){getline; 印刷する 出口 } } '
3番目のバージョンの欠点は、ファイル全体をsedで処理しているため、完了するまでに時間がかかる場合があることです。私は最初の試合の後にそれを停止させる方法があると確信していますが、私はそれを知る(または見つける)ためにsedで十分に専門的ではありません。条件がtrueの場合、awkバージョンは明示的に停止します(次の行を取得して出力し、終了します-sedコマンドには+1とpの最初の2つしかありません)。sedコマンドとawkコマンドの両方で、/ vids /は必要な正規表現です(つまり、上記のChrisの回答の検索文字列)。また、awk構文 'NR == 1、/ vids /'は、次のコードブロックを番号1(最初の入力行)からその正規表現(一致する文字列)が見つかる場所までの行に適用することを示しています。if条件により、一致する行までのすべての行を印刷できなくなります。これは、stringsコマンドの場合は正常に機能するフルライン($ 0)と一致しています。いずれにしても、文字列は1行に1つずつ印刷されます。
見つかった文字列には余分な文字が含まれている可能性があります(たとえば、AVIファイルからは、 'strf(' fourccである 'strf'ではなく)が見つかります)。標準リストと照合するために)、「head -c 4」に答えをパイプして、fourccだけを取得できます。これが私の最終的な答えです。
文字列foo.avi | awk 'NR == 1、/ vids / {if($ 0 == "vids"){getline; 印刷する exit}} '| head -c 4
FWIW、Windows Media Playerは、AVIのコーデックをオーディオとビデオの両方で「-」としてリストしましたが、上記は期待どおりに機能しました。
これをタイプするのに時間を費やした誰かにとって、それが価値があることを願っています!;-)
ふう、マーク