0

以下の C# コードを使用して、flv ファイルからサムネイル画像を作成しています。FFMPEG を使用して、フラッシュ ムービーからサムネイル画像を抽出しています。

    string inputfile = "D:\\Shyju\\mpgg\\WebSite1\\lss_section3.flv";
    string thumbname = "D:\\Shyju\\mpgg\\WebSite1\\test123.jpg";
    Process process = new Process();
    string thumbargs = "-i \"" + inputfile + "\" -vframes 1 -ss 00:00:07 -s 100x66 \"" + thumbname + "\"";
    process.StartInfo.FileName = "D:\\Shyju\\newFFMPEG\\ffmpeg.exe";
    // string thumbargs = "-i \"" + inputfile + "\" -vframes 1 -ss 00:00:07 -s 100x66 \"" + thumbname + "\"";
    process.StartInfo.Arguments = thumbargs;
    //"-i \"D:\\Shyju\\mpgg\\WebSite1\\viva_home.swf\" -an -ss 00:00:03 -s 120×90 -vframes 1 -f mjpeg \"D:\\Shyju\\mpgg\\WebSite1\\testThumbNail.jpg\"";

    process.StartInfo.UseShellExecute = false;
    process.StartInfo.RedirectStandardError = true;
    process.StartInfo.CreateNoWindow = false;
    process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;

    process.Start();
    string output2 = process.StandardError.ReadToEnd();
    process.WaitForExit();
    process.Close();

コードを実行すると、サムネイル画像が期待どおりに取得されません。しかし、変数 output2 では、以下の情報が取得されます。

ffmpeg version 0.4.9-pre1, build 4751, Copyright (c) 2000-2004 Fabrice Bellard
  configuration:  --enable-memalign-hack --enable-mp3lame --enable-mingw32 --extra-cflags=-I/local/include --extra-ldflags=-L/local/lib --enable-amr_nb 
  built on Mar 29 2005 07:26:02, gcc: 3.2.3 (mingw special 20030504-1)
[flv @ 0040F954]skipping flv packet: type 18, size 224, flags 0
[flv @ 0040F954]Unsupported video codec (4)  
[flv @ 0040F954]Unsupported video codec (4)  
[flv @ 0040F954]Unsupported video codec (4)  

// この行は 20 回以上来ています

[flv @ 0040F954]サポートされていないビデオ コーデック (4)

ストリーム 1 はフィルム ソースから来ているようです: 1000.00 (1000/1) -> 0.25 (1/4) 入力 #0、flv、'D:\Shyju\mpgg\WebSite1\lss_section3.flv' から: 、ビットレート: 該当なし ストリーム #0.0: オーディオ: mp3、44100 Hz、ステレオ ストリーム #0.1: ビデオ: 「D:\Shyju\mpgg\WebSite1\test123.jpg」の適切な出力形式が見つかりません

プログラムは Windows マシンで実行されています。誰かが私のコードの何が問題なのか教えてもらえますか?

4

2 に答える 2

0

Linux の ffmpeg は BSD スタイルのオプションを使用するため、(2 つ-のダッシュ) ではなく (1 つのダッシュ) でオプションを設定してみてください--

于 2009-08-14T11:04:51.287 に答える
0

私が正しく覚えていれば、出力ファイル名はtest%d.jpg自動的%dに入力されます。 http://ffmpeg.org/faq.html#SEC21 を参照てください (エラーメッセージが間違っています)lists.mplayerhq.hu/pipermail/ffmpeg-devel/2005-May/000696.html

于 2009-08-14T11:06:20.160 に答える