20

stdinffmpegは、を使用してディスクから読み取るのではなく、からデータを読み取ることができることを知っていffmpeg -i -ます。これはすべてのファイル形式でサポートされていますか?そうでない場合、サポートされているファイル形式のリストはありますか?

4

1 に答える 1

21

プロトコル(stdinおよびstdoutからの読み取りと書き込み)がご使用のバージョンのffmpegでサポートされているffmpeg -protocolsかどうかを判断し、サポートされている形式のリストを表示するには、を実行する必要があります。以下の抜粋では、一部のプロトコルでシーク可能でなければならないという出力パイプに関する注記が表示されます。入力プロトコルの場合、そのような制限はありません。pipeffmpeg -formats

差出人man ffmpeg-protocols

プロトコル

プロトコルはFFmpegで構成された要素であり、特定のプロトコルの使用を必要とするリソースにアクセスできます。

FFmpegビルドを設定すると、サポートされているすべてのプロトコルがデフォルトで有効になります。configureオプションを使用して、使用可能なすべてのものをリストできます--list-protocols

configureオプションを使用してすべてのプロトコルを無効にし、オプション --disable-protocolsを使用してプロトコルを選択的に有効にする--enable-protocol=PROTOCOLか、オプションを使用して特定のプロトコルを無効にすることができます--disable-protocol=PROTOCOL

-protocolsff *ツールのオプションは、サポートされているプロトコルのリストを表示します。

現在利用可能なプロトコルの説明は次のとおりです。...パイプ
UNIXパイプアクセスプロトコル。

UNIXパイプからの読み取りと書き込みを許可します。

受け入れられる構文は次のとおりです。

       pipe:[<number>]

numberは、パイプのファイル記述子に対応する番号です(たとえば、stdinの場合は0、stdoutの場合は1、stderrの場合は2)。番号が指定されていない場合、デフォルトでは、stdoutファイル記述子が書き込みに使用され、stdinが読み取りに使用されます。

一部の形式(通常はMOV)では、出力プロトコルがシーク可能である必要があるため、パイプ出力プロトコルで失敗することに注意してください。

于 2012-10-21T17:16:27.117 に答える