C# コードから ffmpeg プロセスを開始して、単一のビデオ フレームを抽出しています。デフォルトの動作は、これらのイメージをディスクに書き込むことです。ただし、処理を高速化するために、ffmpeg 標準出力をリダイレクトしてストリームを受信し、プログラムでさらに処理したいと考えています。
私はこれに似た引数を使用しています:
-i \"" + Filename + "\" -vf \"scale=640:-1\" -an -vframes 100 -r 1 -f image2 -
これにより、バイト ストリームが標準出力にリダイレクトされ、process.StartInfo.RedirectStandardOutput = true
.
単一の出力しかないため、これはムービー ストリームではうまく機能する可能性がありますが、上記の呼び出しでは (ハード ディスクへの書き込み時に) 10 個の単一の画像が生成されます。標準出力からバイト ストリームを解析し、それを単一のファイルに分割するにはどうすればよいでしょうか?