これはコマンドffmpegです-UbuntuOnline、Fedora Online、Windowsオンラインエミュレーター、MACOSオンラインエミュレーターなどの複数の無料オンラインワークステーションのXNUMXつを使用してOnWorks無料ホスティングプロバイダーで実行できるすべて
プログラム:
NAME
ffmpeg-ffmpegビデオコンバーター
SYNOPSIS
ffmpeg [グローバルオプション] {[入力ファイルのオプション] -私 入力ファイル} ... {[出力ファイルのオプション]
出力ファイル}..。
DESCRIPTION
ffmpeg ライブオーディオ/ビデオからも取得できる非常に高速なビデオおよびオーディオコンバータです
ソース。 また、任意のサンプルレート間で変換し、その場でビデオのサイズを変更することもできます
高品質の多相フィルターを備えています。
ffmpeg 任意の数の入力「ファイル」(通常のファイル、パイプ、
「-i」オプションで指定されたネットワークストリーム、グラブデバイスなど)、
任意の数の出力「ファイル」。プレーンな出力ファイル名で指定されます。
コマンドラインで見つかったオプションとして解釈できないものはすべて考慮されます
出力ファイル名になります。
各入力ファイルまたは出力ファイルには、原則として、さまざまなストリームをいくつでも含めることができます。
タイプ(ビデオ/オーディオ/字幕/添付ファイル/データ)。 許可されるストリームの数および/またはタイプ
コンテナ形式によって制限される場合があります。 どの入力からどのストリームを送信するかを選択する
出力は自動的に行われるか、「-map」オプションを使用して行われます(ストリームを参照)
選択の章)。
オプションで入力ファイルを参照するには、それらのインデックス(0ベース)を使用する必要があります。 例:最初の
入力ファイルは0、1番目はXNUMXなどです。同様に、ファイル内のストリームはによって参照されます。
それらのインデックス。 たとえば、「2:3」は、XNUMX番目の入力ファイルのXNUMX番目のストリームを指します。 も参照してください
ストリーム指定子の章。
原則として、オプションは次に指定されたファイルに適用されます。 したがって、順序は
重要であり、コマンドラインで同じオプションを複数回使用できます。 各
次に、オカレンスが次の入力ファイルまたは出力ファイルに適用されます。 この規則の例外
グローバルオプション(冗長レベルなど)であり、最初に指定する必要があります。
入力ファイルと出力ファイルを混在させないでください。最初にすべての入力ファイルを指定し、次にすべての出力ファイルを指定します。
また、異なるファイルに属するオプションを混在させないでください。 すべてのオプションは、
次の入力または出力ファイルであり、ファイル間でリセットされます。
・出力ファイルのビデオビットレートを64 kbit / sに設定するには:
ffmpeg -i input.avi -b:v 64k -bufsize 64k output.avi
・出力ファイルのフレームレートを強制的に24 fpsにするには:
ffmpeg -i 入力.avi -r 24 出力.avi
・入力ファイルのフレームレート(raw形式でのみ有効)を1fpsに強制します。
24fpsまでの出力ファイルのフレームレート:
ffmpeg -r 1 -i 入力.m2v -r 24 出力.avi
生の入力ファイルには、フォーマットオプションが必要になる場合があります。
詳細 DESCRIPTION
のトランスコーディングプロセス ffmpeg 各出力について、次のように記述できます。
図:
_____________
| | | |
| 入力| demuxer | エンコードされたデータ| デコーダ
| ファイル| ---------> | パケット| ----- +
| _______ | | ______________ | |
v
_________
| |
| デコード|
| フレーム|
| _________ |
_________ |
| | | | |
| 出力| <-------- | エンコードされたデータ| <---- +
| ファイル| ミュクサー| パケット| エンコーダー
| ________ | | ______________ |
ffmpeg libavformatライブラリ(デマルチプレクサを含む)を呼び出して、入力ファイルを読み取り、取得します
それらからのエンコードされたデータを含むパケット。 複数の入力ファイルがある場合、 ffmpeg
アクティブな入力ストリームの最低タイムスタンプを追跡することにより、それらの同期を維持しようとします。
次に、エンコードされたパケットはデコーダーに渡されます(ストリームコピーが選択されている場合を除く)
ストリーム、説明についてはさらに参照してください)。 デコーダーは非圧縮フレームを生成します(生
ビデオ/ PCMオーディオ/ ...)フィルタリングによってさらに処理できます(次のセクションを参照)。 後
フィルタリングでは、フレームはエンコーダーに渡され、エンコーダーはそれらをエンコードし、エンコードされた出力を出力します
パケット。 最後に、それらはマルチプレクサに渡され、マルチプレクサはエンコードされたパケットを
出力ファイル。
フィルタリング
エンコードする前に、 ffmpeg からのフィルターを使用して生のオーディオおよびビデオフレームを処理できます
libavfilterライブラリ。 いくつかの連鎖フィルターがフィルターグラフを形成します。 ffmpeg 区別する
単純なものと複雑なもののXNUMX種類のフィルターグラフの間。
簡単な拡張で フィルターグラフ
単純なフィルターグラフは、入力と出力がXNUMXつだけで、両方が同じフィルターグラフです。
タイプ。 上の図では、追加のステップを挿入するだけでそれらを表すことができます
デコードとエンコードの間:
__________ ______________
| | | |
| デコード| | エンコードされたデータ|
| フレーム| \ _ | パケット|
| _________ | \ / || ______________ |
\ __________ /
シンプル_ \ || | /エンコーダ
フィルタグラフ| フィルタリング| /
| フレーム|
| __________ |
単純なフィルターグラフは、ストリームごとに構成されます -フィルター オプション( -vf と -af
それぞれビデオとオーディオのエイリアス)。 ビデオの単純なフィルターグラフで検索できます
このような例:
________ ______________ ________ ________
| | | | | | | | | | | | | | | |
| 入力| ---> | インターレース解除| ---> | スケール| ---> | 出力|
| _______ | | _____________ | | _______ | | ________ |
一部のフィルターはフレームのプロパティを変更しますが、フレームの内容は変更しないことに注意してください。 例:「fps」
上記の例のフィルターはフレーム数を変更しますが、フレームには触れません
コンテンツ。 もうXNUMXつの例は、「setpts」フィルターです。これは、タイムスタンプなどを設定するだけです。
フレームを変更せずに渡します。
複雑な フィルターグラフ
複雑なフィルターグラフは、単なる線形処理として説明できないものです。
XNUMXつのストリームに適用されるチェーン。 これは、たとえば、グラフに
XNUMXつの入力および/または出力、または出力ストリームタイプが入力と異なる場合。 彼らはすることができます
次の図で表されます。
_________
| |
| 入力0 | \ __________
| _________ | \ | |
\ _________ / | 出力0 |
\ | | / | __________ |
_________ \ | コンプレックス| /
| | | | /
| 入力1 | ----> | フィルタ| \
| _________ | | | \ __________
/ | グラフ| \ | |
/ | | \ | 出力1 |
_________ / | _________ | | __________ |
| | | | /
| 入力2 | /
| _________ |
複雑なフィルターグラフは、 -filter_complex オプション。 これに注意してください
複雑なフィルターグラフは、その性質上、明確にすることができないため、オプションはグローバルです。
単一のストリームまたはファイルに関連付けられています。
この -ラフフィ オプションはと同等です -filter_complex.
複雑なフィルターグラフの簡単な例は、XNUMXつのビデオを持つ「オーバーレイ」フィルターです。
入力とXNUMXつのビデオ出力。XNUMXつのビデオが他のビデオの上にオーバーレイされます。 そのオーディオ
対応するのは「amix」フィルターです。
Stream copy
ストリームコピーは、「コピー」パラメータをに提供することによって選択されるモードです。 -コーデック オプション。 それ
MAKES ffmpeg 指定されたストリームのデコードとエンコードの手順を省略します。
多重化と多重化。 コンテナフォーマットの変更や変更に便利です
コンテナレベルのメタデータ。 この場合、上の図はこれを単純化したものです。
________ ______________ ________
| | | | | | | | | | | |
| 入力| demuxer | エンコードされたデータ| ミュクサー| 出力|
| ファイル| ---------> | パケット| -------> | ファイル|
| _______ | | ______________ | | ________ |
デコードやエンコードがないため、非常に高速で品質の低下はありません。
ただし、多くの要因により動作しない場合があります。 フィルタの適用は
フィルタは非圧縮データで機能するため、明らかに不可能です。
STREAM SELECTION
デフォルトでは、 ffmpeg 存在する各タイプ(ビデオ、オーディオ、字幕)のストリームがXNUMXつだけ含まれます
入力ファイルに追加し、各出力ファイルに追加します。 それはそれぞれのベースの「最高」を選びます
次の基準に基づいて:ビデオの場合、それは最高の解像度のストリームです。
オーディオ、それは最も多くのチャンネルを持つストリームです、字幕の場合、それは最初の字幕です
ストリーム。 同じタイプの複数のストリームが等しくレートする場合、
最も低いインデックスが選択されます。
「-vn / -an / -sn」オプションを使用して、これらのデフォルトの一部を無効にすることができます。 完全なマニュアルについて
制御するには、「-map」オプションを使用します。これにより、今説明したデフォルトが無効になります。
OPTIONS
特に指定がない限り、すべての数値オプションは、
入力としての番号。その後にSI単位の接頭辞のXNUMXつを続けることができます。例: 'K'、
「M」または「G」。
'i'がSI単位の接頭辞に追加されている場合、完全な接頭辞は次のように解釈されます。
の累乗ではなく1024の累乗に基づくXNUMX進倍数の単位接頭辞
1000. SI単位接頭辞に「B」を追加すると、値が8倍になります。これにより、次を使用できます。
例:番号の接尾辞として「KB」、「MiB」、「G」、「B」。
引数を取らないオプションはブールオプションであり、対応する値を設定します
本当に。 オプション名の前に「no」を付けることで、falseに設定できます。 例えば
「-nofoo」を使用すると、「foo」という名前のブールオプションがfalseに設定されます。
Stream 指定子
ビットレートやコーデックなど、一部のオプションはストリームごとに適用されます。 ストリーム指定子は、
特定のオプションが属するストリームを正確に指定します。
ストリーム指定子は、通常、オプション名に追加され、オプション名から分離された文字列です。
コロンで。 たとえば、「-codec:a:1 ac3」には、「a:1」ストリーム指定子が含まれています。これは、
3番目のオーディオストリーム。 したがって、XNUMX番目のオーディオストリームにacXNUMXコーデックを選択します。
ストリーム指定子は複数のストリームに一致する可能性があるため、オプションはすべてに適用されます
彼ら。 たとえば、「-b:a128k」のストリーム指定子はすべてのオーディオストリームに一致します。
空のストリーム指定子はすべてのストリームに一致します。 たとえば、「-codeccopy」または「-codec:
copy」は、再エンコードせずにすべてのストリームをコピーします。
ストリーム指定子の可能な形式は次のとおりです。
ストリームインデックス
ストリームをこのインデックスと一致させます。 たとえば、「-threads:1 4」は、のスレッド数を設定します
4へのXNUMX番目のストリーム。
ストリームタイプ[:ストリームインデックス]
ストリームタイプ は次のいずれかです:ビデオの場合は「v」または「V」、オーディオの場合は「a」、の場合は「s」
サブタイトル、データの場合は「d」、添付ファイルの場合は「t」。 「v」はすべてのビデオストリームに一致し、「V」は
添付された写真、ビデオサムネイル、またはカバーではないビデオストリームにのみ一致します
芸術。 もしも ストリームインデックス が与えられると、ストリーム番号と一致します ストリームインデックス これの
タイプ。 それ以外の場合は、このタイプのすべてのストリームに一致します。
p:プログラムID[:ストリームインデックス]
If ストリームインデックス が与えられると、ストリームと番号が一致します ストリームインデックス 会場は
IDのプログラム プログラムID。 それ以外の場合は、プログラム内のすべてのストリームに一致します。
#ストリームID or i:ストリームID
ストリームID(MPEG-TSコンテナのPIDなど)でストリームを照合します。
m:キー[:値]
ストリームをメタデータタグと照合します キー 指定された値を持つ。 もしも 値 ではありません
与えられた、与えられたタグを含むストリームを任意の値と一致させます。
u ストリームを使用可能な構成と一致させます。コーデックを定義する必要があり、必須です
ビデオのサイズやオーディオのサンプルレートなどの情報が存在する必要があります。
に注意してください ffmpeg、メタデータによる照合は、入力ファイルに対してのみ適切に機能します。
ジェネリック オプション
これらのオプションは、ff *ツール間で共有されます。
-L ライセンスを表示します。
-NS、 -?、 -ヘルプ、 - 助けて [argは]
ヘルプを表示します。 特定の項目に関するヘルプを印刷するために、オプションのパラメーターを指定できます。
引数が指定されていない場合、基本的な(高度ではない)ツールオプションのみが表示されます。
の可能な値 argは には次の値があります:
長い
基本的なツールオプションに加えて、高度なツールオプションを印刷します。
フル
エンコーダの共有オプションとプライベートオプションを含む、オプションの完全なリストを印刷します。
デコーダー、デマルチプレクサー、マルチプレクサー、フィルターなど。
デコーダー=デコーダー名
名前の付いたデコーダーに関する詳細情報を出力します デコーダー名。 使用 -デコーダー
すべてのデコーダーのリストを取得するオプション。
エンコーダ=エンコーダー名
名前の付いたエンコーダに関する詳細情報を出力します エンコーダー名。 使用 -エンコーダー
すべてのエンコーダーのリストを取得するオプション。
demuxer =デマルチプレクサー名
名前の付いたデマルチプレクサに関する詳細情報を出力します デマルチプレクサー名。 使用 -フォーマット
すべてのデマルチプレクサとマルチプレクサのリストを取得するオプション。
マルチプレクサ=マルチプレクサ名
名前の付いたマルチプレクサに関する詳細情報を印刷します マルチプレクサ名。 使用 -フォーマット
すべてのマルチプレクサとデマルチプレクサのリストを取得するオプション。
filter =フィルター名
フィルタ名に関する詳細情報を出力します フィルター名。 使用 -フィルター
すべてのフィルターのリストを取得するオプション。
-バージョン
バージョンを表示します。
-フォーマット
使用可能な形式(デバイスを含む)を表示します。
デバイス
利用可能なデバイスを表示します。
-コーデック
libavcodecに認識されているすべてのコーデックを表示します。
「コーデック」という用語は、このドキュメント全体で次のショートカットとして使用されていることに注意してください。
より正確にはメディアビットストリーム形式と呼ばれるもの。
-デコーダー
利用可能なデコーダーを表示します。
-エンコーダー
使用可能なすべてのエンコーダーを表示します。
-bsfs
使用可能なビットストリームフィルターを表示します。
-プロトコル
利用可能なプロトコルを表示します。
-フィルター
使用可能なlibavfilterフィルターを表示します。
-pix_fmts
利用可能なピクセルフォーマットを表示します。
-sample_fmts
利用可能なサンプル形式を表示します。
-レイアウト
チャネル名と標準チャネルレイアウトを表示します。
-色
認識された色の名前を表示します。
-ソース デバイス[,オプション1=val1[,オプション2=val2] ...]
入力デバイスの自動検出されたソースを表示します。 一部のデバイスはシステムを提供する場合があります-
自動検出できない依存ソース名。 返されるリストは
常に完全であると想定されます。
ffmpeg -sources pulse、server = 192.168.0.4
-シンク デバイス[,オプション1=val1[,オプション2=val2] ...]
出力デバイスの自動検出されたシンクを表示します。 一部のデバイスはシステムを提供する場合があります-
自動検出できない依存シンク名。 返されたリストは想定できません
常に完全であること。
ffmpeg -sinks pulse、server = 192.168.0.4
-ログレベル [繰り返し+]loglevel | -v [繰り返し+]loglevel
ライブラリが使用するログレベルを設定します。 「repeat +」を追加すると、繰り返されることを示します
ログ出力を最初の行に圧縮してはならず、「最後のメッセージが繰り返されますn
「回」の行は省略されます。「リピート」は単独でも使用できます。「リピート」を使用する場合
単独で、事前のログレベルが設定されていない場合は、デフォルトのログレベルが使用されます。 複数の場合
ログレベルパラメータが指定されています。「repeat」を使用してもログレベルは変更されません。 loglevel
次のいずれかの値を含む文字列または数値です。
静か、 -8
何も表示しません。 静かに。
パニック、 0
プロセスのクラッシュにつながる可能性のある致命的なエラーのみを表示し、
失敗。 現在、これは何にも使用されていません。
致命的、 8
致命的なエラーのみを表示します。 これらはエラーであり、その後プロセスは絶対にできません
その後続行します。
エラー、 16
回復可能なエラーを含むすべてのエラーを表示します。
警告、 24
すべての警告とエラーを表示します。 おそらく正しくない、または
予期しないイベントが表示されます。
情報、 32
処理中に有益なメッセージを表示します。 これは警告と
エラー。 これがデフォルト値です。
詳細、 40
より冗長であることを除いて、「info」と同じです。
デバッグ、 48
デバッグ情報を含むすべてを表示します。
痕跡、 56
デフォルトでは、プログラムはstderrにログを記録します。端末でカラーリングがサポートされている場合は、
色は、エラーと警告をマークするために使用されます。 ログの色付けは、
環境変数 AV_LOG_FORCE_NOCOLOR or NO_COLOR、または強制的に設定することができます
環境変数 AV_LOG_FORCE_COLOR。 環境変数の使用 NO_COLOR
は非推奨であり、次のFFmpegバージョンで削除されます。
-報告する
完全なコマンドラインとコンソール出力をという名前のファイルにダンプします
"プログラム-YYYYMMDD-HHMMSS.log」 現在のディレクトリにあります。 このファイルは次の場合に役立ちます
バグレポート。 また、「-loglevelverbose」も意味します。
環境変数の設定 FFレポート どの値でも同じ効果があります。 の場合
値は「:」で区切られたkey = valueシーケンスであり、これらのオプションはレポートに影響します。
オプション値に特殊文字またはオプションが含まれている場合は、エスケープする必要があります
区切り文字 ':'(ffmpeg-utilsマニュアルの「引用とエスケープ」セクションを参照してください)。
次のオプションが認識されます。
file
レポートに使用するファイル名を設定します。 %pはの名前に展開されます
プログラム、%tはタイムスタンプに展開され、 "%%"はプレーンな "%"に展開されます
レベル
数値を使用してログの詳細レベルを設定します(「-loglevel」を参照)。
たとえば、次の名前のファイルにレポートを出力するには ffreport.log 32のログレベルを使用
(ログレベル「情報」のエイリアス):
FFREPORT = file = ffreport.log:level = 32 ffmpeg-i入出力
環境変数の解析でのエラーは致命的ではなく、に表示されません
レポート。
-バナーの非表示
印刷バナーを抑制します。
すべてのFFmpegツールは通常、著作権表示、ビルドオプション、ライブラリを表示します
バージョン。 このオプションは、この情報の印刷を抑制するために使用できます。
-cpuflags フラグ (全体的な)
CPUフラグの設定とクリアを許可します。 このオプションはテストを目的としています。 使用禁止
あなたが何をしているのかわからない限り、それは。
ffmpeg -cpuflags -sse + mmx..。
ffmpeg -cpuflags mmx..。
ffmpeg -cpuflags 0..。
このオプションで可能なフラグは次のとおりです。
x86
MMX
mmxext
SSE
sse2
sse2遅い
sse3
sse3遅い
ssse3
原子
sse4.1
sse4.2
avx
avx2
xop
fma3
fma4
3dナウ
3dnownext
bmi1
bmi2
cmov
ARM
アームv5te
armv6
armv6t2
vfp
vfpv3
ネオン
設定終了
AAArch64
armv8
vfp
ネオン
PowerPC
アルティベック
特定の プロセッサ
ペンティアム2
ペンティアム3
ペンティアム4
k6
k62
アスロン
アスロンXP
k8
-opencl_bench
このオプションは、利用可能なすべてのOpenCLデバイスのベンチマークを行い、結果を印刷するために使用されます。
このオプションは、FFmpegが「--enable-opencl」でコンパイルされている場合にのみ使用できます。
FFmpegが「--enable-opencl」で構成されている場合、グローバルOpenCLのオプション
コンテキストはを介して設定されます -opencl_options。 ffmpeg-の「OpenCLオプション」セクションを参照してください。
サポートされているオプションの完全なリストについては、utilsマニュアルを参照してください。 とりわけ、これらのオプション
OpenCLコードを実行するために特定のプラットフォームとデバイスを選択する機能が含まれています
オン。 デフォルトでは、FFmpegは最初のプラットフォームの最初のデバイスで実行されます。 ながら
グローバルOpenCLコンテキストのオプションは、ユーザーが
選択したOpenCLデバイス、ほとんどのユーザーはおそらく最速を選択したいと思うでしょう
彼らのシステムのためのOpenCLデバイス。
このオプションは、特定することにより、最も効率的な構成の選択を支援します
ユーザーのシステムに適したデバイス。 組み込みのベンチマークは、すべての
OpenCLデバイスとパフォーマンスは各デバイスで測定されます。 のデバイス
結果リストは、リストされている最速のデバイスでのパフォーマンスに基づいてソートされます
初め。 その後、ユーザーは呼び出すことができます ffmpeg 最も考えられるデバイスを使用する
適切な経由 -opencl_options OpenCLの最高のパフォーマンスを得るために
加速されたコード。
最速のOpenCLデバイスを使用する一般的な使用法には、次の手順が含まれます。
次のコマンドを実行します。
ffmpeg -opencl_bench
プラットフォームIDを書き留めます(ピドックス)およびデバイスID(ディドックス)最初のすなわち最速のデバイスの
リストにあります。 次のコマンドを使用して、プラットフォームとデバイスを選択します。
ffmpeg -opencl_options platform_idx = :device_idx = ..。
-opencl_options オプション (全体的な)
OpenCL環境オプションを設定します。 このオプションは、FFmpegが使用されている場合にのみ使用できます
「--enable-opencl」でコンパイルされます。
オプション のリストである必要があります キー=値 ':'で区切られたオプションペア。 「OpenCLを参照してください
サポートされているオプションのリストについては、ffmpeg-utilsマニュアルの「オプション」セクションを参照してください。
AVオプション
これらのオプションは、libavformat、libavdevice、およびlibavcodecによって直接提供されます。
ライブラリ。 使用可能なAVOptionのリストを表示するには、 -助けて オプション。 彼らです
XNUMXつのカテゴリに分けられます:
ジェネリック
これらのオプションは、任意のコンテナ、コーデック、またはデバイスに設定できます。 一般的なオプションは
コンテナ/デバイスのAVFormatContextオプションおよびAVCodecContextの下にリストされています
コーデックのオプション。
プライベート
これらのオプションは、特定のコンテナ、デバイス、またはコーデックに固有です。 プライベートオプション
対応するコンテナ/デバイス/コーデックの下に一覧表示されます。
たとえば、デフォルトのID3v2.3の代わりにID3v2.4ヘッダーをMP3ファイルに書き込むには、次を使用します。
id3v2_バージョン MP3マルチプレクサのプライベートオプション:
ffmpeg -i 入力.flac -id3v2_version 3 出力.mp3
すべてのコーデックAVOptionsはストリームごとであるため、ストリーム指定子をにアタッチする必要があります
それら。
注: -オプションなし ブールAVOptionsには構文を使用できません。 -オプション 0/-オプション 1.
注:v / a / sを先頭に追加してストリームごとのAVOptionsを指定する古い文書化されていない方法
オプション名は廃止され、まもなく削除されます。
メイン オプション
-f FMT (入出力)
入力または出力ファイル形式を強制します。 フォーマットは通常、入力用に自動検出されます
ファイルと出力ファイルのファイル拡張子から推測されるため、このオプションは
ほとんどの場合必要です。
-i ファイル名 ( )
入力ファイル名
-y (全体的な)
確認せずに出力ファイルを上書きします。
-n (全体的な)
出力ファイルを上書きせず、指定した出力ファイルがすでにある場合はすぐに終了します
存在しています。
-c [:ストリーム指定子] コーデック (入力/出力、ストリームごと)
-コーデック[:ストリーム指定子] コーデック (入力/出力、ストリームごと)
エンコーダー(出力ファイルの前に使用する場合)またはデコーダー(出力ファイルの前に使用する場合)を選択します
XNUMXつ以上のストリームの入力ファイル)。 コーデック デコーダー/エンコーダーまたはの名前です
特別な値 "copy"(出力のみ)は、ストリームが再作成されないことを示します。
エンコードされます。
例えば、
ffmpeg -i INPUT -map 0 -c:v libx264 -c:a copy OUTPUT
すべてのビデオストリームをlibx264でエンコードし、すべてのオーディオストリームをコピーします。
ストリームごとに、最後に一致する「c」オプションが適用されるため、
ffmpeg -i INPUT -map 0 -c copy -c:v:1 libx264 -c:a:137 libvorbis OUTPUT
libx264でエンコードされるXNUMX番目のビデオを除くすべてのストリームをコピーします。
そして、libvorbisでエンコードされる138番目のオーディオ。
-t デュレーション (入出力)
(「-i」の前の)入力オプションとして使用する場合は、 デュレーション から読み取られたデータの
入力ファイル。
(出力ファイル名の前に)出力オプションとして使用する場合は、出力の書き込みを停止します
その期間が達した後 デュレーション.
デュレーション 期間の指定である必要があります。を参照してください。 Time デュレーション in
ffmpeg-utils(1) マニュアル.
-toと-tは相互に排他的であり、-tが優先されます。
〜へ 位置 (出力)
で出力の書き込みを停止します 位置. 位置 期間の指定である必要があります。
Time デュレーション in ffmpeg-utils(1) マニュアル.
-toと-tは相互に排他的であり、-tが優先されます。
-fs 制限サイズ (出力)
ファイルサイズの制限をバイト単位で設定します。
-NS 位置 (入出力)
(「-i」の前の)入力オプションとして使用される場合、この入力ファイルで次のようにシークします。 位置。 注意
ほとんどのフォーマットでは正確に検索することはできないので、 ffmpeg を求めます
前の最も近いシークポイント 位置。 トランスコーディングおよび -accurate_seek 有効になっています
(デフォルト)、シークポイントとの間のこの余分なセグメント 位置 デコードされます
と破棄されます。 ストリームコピーを行うとき、または -noaccurate_seek 使用されます、それはなります
保存。
(出力ファイル名の前に)出力オプションとして使用すると、入力をデコードしますが破棄します
タイムスタンプが到達するまで 位置.
位置 期間の指定である必要があります。を参照してください。 Time デュレーション in
ffmpeg-utils(1) マニュアル.
-sseof 位置 (入出力)
「-ss」オプションと同様ですが、「ファイルの終わり」に関連しています。 つまり、負の値は
ファイルの前半では、0はEOFにあります。
-そのオフセット オフセット ( )
入力時間オフセットを設定します。
オフセット 期間の指定である必要があります。を参照してください。 Time デュレーション in
ffmpeg-utils(1) マニュアル.
オフセットは、入力ファイルのタイムスタンプに追加されます。 正のオフセットを指定する
対応するストリームがで指定された期間だけ遅延することを意味します
オフセット.
-タイムスタンプ date (出力)
コンテナに記録タイムスタンプを設定します。
date 日付指定である必要があります。を参照してください。 日付 in ffmpeg-utils(1) マニュアル.
-metadata [:metadata_specifier] キー=値 (出力、メタデータごと)
メタデータのキーと値のペアを設定します。
オプション Metadata_specifier ストリームまたはチャプターにメタデータを設定するために指定される場合があります。
詳細については、「-map_metadata」のドキュメントを参照してください。
このオプションは、「-map_metadata」で設定されたメタデータを上書きします。 削除することも可能です
空の値を使用したメタデータ。
たとえば、出力ファイルにタイトルを設定するには、次のようにします。
ffmpeg -i in.avi -metadata title = "my title" out.flv
最初のオーディオストリームの言語を設定するには:
ffmpeg -i INPUT -metadata:s:a:0 language = eng OUTPUT
-目標 type (出力)
ターゲットファイルタイプ( "vcd"、 "svcd"、 "dvd"、 "dv"、 "dv50")を指定します。 type 接頭辞が付いている場合があります
対応する規格を使用するには、「pal-」、「ntsc-」、または「film-」を使用します。 すべてのフォーマット
オプション(ビットレート、コーデック、バッファサイズ)が自動的に設定されます。 次のように入力できます。
ffmpeg -i myfile.avi -target vcd /tmp/vcd.mpg
それでも、追加のオプションが指定されていないことがわかっている限り、追加のオプションを指定できます。
次のように、標準と競合します。
ffmpeg -i myfile.avi -target vcd -bf 2 /tmp/vcd.mpg
-dframes 数 (出力)
出力するデータフレーム数を設定します。 これは「-frames:d」のエイリアスです。
-フレーム[:ストリーム指定子] フレームカウント (出力、ストリームごと)
後にストリームへの書き込みを停止します フレームカウント フレーム。
-q [:ストリーム指定子] q (出力、ストリームごと)
-qscale [:ストリーム指定子] q (出力、ストリームごと)
固定品質スケール(VBR)を使用します。 の意味 q/qスケール コーデックに依存します。 もしも qスケール
なしで使用されます ストリーム指定子 それからそれはビデオストリームにのみ適用されます、これは
以前の動作との互換性を維持し、同じコーデックを指定する
オーディオとビデオである2つの異なるコーデックの特定の値は、通常、
stream_specifierが使用されていない場合を対象としています。
-フィルター[:ストリーム指定子] フィルタグラフ (出力、ストリームごと)
で指定されたフィルターグラフを作成します フィルタグラフ ストリームをフィルタリングするために使用します。
フィルタグラフ ストリームに適用するフィルターグラフの説明であり、
同じタイプのストリームの単一の入力と単一の出力。 フィルタグラフでは、
入力はラベル「in」に関連付けられ、出力はラベル「out」に関連付けられます。 を参照してください
filtergraph構文の詳細については、ffmpeg-filtersのマニュアルを参照してください。
ジョブの設定方法については、 -filter_complex オプション 複数の入力を持つフィルターグラフを作成する場合
および/または出力。
-filter_script [:ストリーム指定子] ファイル名 (出力、ストリームごと)
このオプションはに似ています -フィルター、唯一の違いは、その引数が
フィルタグラフの説明を読み取るファイルの名前。
-pre [:ストリーム指定子] プリセット名 (出力、ストリームごと)
一致するストリームのプリセットを指定します。
-統計 (全体的な)
エンコーディングの進捗状況/統計を印刷します。 明示的に無効にするには、デフォルトでオンになっています。
「-nostats」を指定する必要があります。
-進捗 URL (全体的な)
プログラムに適した進捗情報をに送信する URL.
進捗情報は、ほぼ毎秒、最後に書き込まれます
エンコーディングプロセス。 それから作られます "キー=値"行。 キー 英数字のみで構成されています
文字。 一連の進捗情報の最後のキーは常に「進捗」です。
-標準入力
標準入力での相互作用を有効にします。 標準入力が次のように使用されない限り、デフォルトでオンになります
入力。 対話を明示的に無効にするには、「-nostdin」を指定する必要があります。
標準入力での対話を無効にすると、たとえば、ffmpegが
バックグラウンドプロセスグループ。 「ffmpeg ...」でもほぼ同じ結果が得られます。
/ dev / null "ですが、シェルが必要です。
-debug_ts (全体的な)
タイムスタンプ情報を出力します。 デフォルトではオフになっています。 このオプションは主に次の場合に役立ちます
テストとデバッグの目的で、出力形式がXNUMXつのバージョンから
もうXNUMXつなので、ポータブルスクリプトでは使用しないでください。
オプション「-fdebugts」も参照してください。
-添付 ファイル名 (出力)
出力ファイルに添付ファイルを追加します。 これはMatroskaのようないくつかのフォーマットでサポートされています
たとえば、字幕のレンダリングに使用されるフォント。 添付ファイルは特定のものとして実装されます
ストリームのタイプであるため、このオプションはファイルに新しいストリームを追加します。 その後、それが可能です
通常の方法でこのストリームのストリームごとのオプションを使用します。 作成された添付ファイルストリーム
このオプションを使用すると、他のすべてのストリーム(つまり、
「-map」または自動マッピング)。
Matroskaの場合、mimetypeメタデータタグも設定する必要があることに注意してください。
ffmpeg -i INPUT -attach DejaVuSans.ttf -metadata:s:2 mimetype = application / x-truetype-font out.mkv
(添付ファイルストリームが出力ファイルのXNUMX番目になると仮定します)。
-dump_attachment [:ストリーム指定子] ファイル名 (入力、ストリームごと)
一致する添付ファイルストリームをという名前のファイルに抽出します ファイル名。 場合 ファイル名 is
空の場合、「filename」メタデータタグの値が使用されます。
たとえば、「out.ttf」という名前のファイルへの最初の添付ファイルを抽出するには:
ffmpeg -dump_attachment:t:0 out.ttf -i INPUT
「filename」タグによって決定されたファイルへのすべての添付ファイルを抽出するには:
ffmpeg -dump_attachment:t "" -i INPUT
テクニカルノート-添付ファイルはコーデックエクストラデータとして実装されているため、このオプションは次のことができます
実際には、添付ファイルだけでなく、任意のストリームからエクストラデータを抽出するために使用されます。
-自動回転なし
ファイルメタデータに基づいてビデオを自動的に回転させることを無効にします。
動画 オプション
-vframes 数 (出力)
出力するビデオフレーム数を設定します。 これは「-frames:v」のエイリアスです。
-r [:ストリーム指定子] FPS (入力/出力、ストリームごと)
フレームレート(Hz値、分数、または省略形)を設定します。
入力オプションとして、ファイルに保存されているタイムスタンプを無視し、代わりに生成します
一定のフレームレートを想定したタイムスタンプ FPS。 これはと同じではありません -フレームレート
image2やv4l2などの一部の入力形式に使用されるオプション(以前は同じでした
FFmpegの古いバージョン)。 疑わしい場合は使用してください -フレームレート 入力オプションの代わりに -r.
出力オプションとして、入力フレームを複製またはドロップして、一定の出力フレームを実現します
率 FPS.
-s [:ストリーム指定子] サイズ (入力/出力、ストリームごと)
フレームサイズを設定します。
入力オプションとして、これは ビデオサイズ プライベートオプション、認識
フレームサイズがファイルに保存されていないか、
構成可能-たとえば、生のビデオまたはビデオグラバー。
出力オプションとして、これは「スケール」ビデオフィルターをに挿入します end
対応するフィルターグラフ。 「スケール」フィルターを直接使用して、
始まりか他の場所。
フォーマットは wxh (デフォルト-ソースと同じ)。
-側面[:ストリーム指定子] 側面 (出力、ストリームごと)
で指定されたビデオディスプレイのアスペクト比を設定します 側面.
側面 浮動小数点数の文字列、または次の形式の文字列にすることができます NUM:日ここで、
NUM と 日 アスペクト比の分子と分母です。 たとえば、「4:3」、
「16:9」、「1.3333」、および「1.7777」は有効な引数値です。
一緒に使用する場合 -vコーデック copy、に保存されているアスペクト比に影響します
コンテナレベル。ただし、エンコードされたフレームに保存されているアスペクト比(存在する場合)は含まれません。
-vn (出力)
ビデオ録画を無効にします。
-vコーデック コーデック (出力)
ビデオコーデックを設定します。 これは「-codec:v」のエイリアスです。
-パス[:ストリーム指定子] n (出力、ストリームごと)
パス番号(1または2)を選択します。 XNUMXパスビデオエンコーディングを行うために使用されます。 The
ビデオの統計は、最初のパスでログファイルに記録されます(
オプション-passlogfile)、およびXNUMX番目のパスで、そのログファイルを使用して
正確に要求されたビットレートのビデオ。 パス1では、オーディオを非アクティブ化して、
出力をnullに設定します。WindowsとUnixの例:
ffmpeg -i foo.mov -c:v libxvid -pass 1 -an -f rawvideo -y NUL
ffmpeg -i foo.mov -c:v libxvid -pass 1 -an -f rawvideo -y / dev / null
-passlogfile [:ストリーム指定子] 接頭辞 (出力、ストリームごと)
XNUMXパスログファイル名プレフィックスをに設定します 接頭辞、デフォルトのファイル名プレフィックスは
`` ffmpeg2pass ''。 完全なファイル名は次のようになります プレフィックス-N.log、ここでNは数値です
出力ストリームに固有
-vf フィルタグラフ (出力)
で指定されたフィルターグラフを作成します フィルタグラフ ストリームをフィルタリングするために使用します。
これは「-filter:v」のエイリアスです。 -フィルター オプション.
高機能 動画 オプション
-pix_fmt [:ストリーム指定子] 形式でアーカイブしたプロジェクトを保存します. (入力/出力、ストリームごと)
ピクセルフォーマットを設定します。 「-pix_fmts」を使用して、サポートされているすべてのピクセル形式を表示します。 の場合
選択したピクセルフォーマットを選択できません。ffmpegは警告を出力し、
エンコーダでサポートされている最高のピクセルフォーマット。 もしも pix_fmt 接頭辞「+」、ffmpeg
要求されたピクセルフォーマットを選択できない場合、エラーで終了し、
フィルタグラフ内の自動変換は無効になっています。 もしも pix_fmt 単一の「+」であり、
ffmpegは、入力(またはグラフ出力)と同じピクセル形式を選択し、自動
変換は無効になっています。
-sws_flags フラグ (入出力)
SwScalerフラグを設定します。
-vdt n
しきい値を破棄します。
-rc_override [:ストリーム指定子] オーバーライド (出力、ストリームごと)
「int、int、int」リストとしてフォーマットされた、特定の間隔のレート制御オーバーライド
スラッシュで区切ります。 最初のXNUMXつの値は、開始フレーム番号と終了フレーム番号で、最後は
XNUMXつは、正の場合に使用する量子化器、または負の場合に使用する品質係数です。
-イルメ
エンコーダでの強制インターレースサポート(MPEG-2およびMPEG-4のみ)。 次の場合にこのオプションを使用します
入力ファイルがインターレースされており、インターレース形式を最小限に抑えたい
損失。 別の方法は、入力ストリームをインターレース解除することです。 -インターレース解除、 だけど
インターレース解除は損失をもたらします。
-psnr
圧縮フレームのPSNRを計算します。
-vstats
ビデオコーディング統計をダンプする vstats_HHMMSS.log.
-vstats_file file
ビデオコーディング統計をダンプする file.
-上[:ストリーム指定子] n (出力、ストリームごと)
top = 1 / bottom = 0 / auto = -1フィールドが最初
-dc 精度
Intra_dc_precision。
-vtag fourcc /タグ (出力)
ビデオタグ/ fourccを強制します。 これは「-tag:v」のエイリアスです。
-クフィスト (全体的な)
QPヒストグラムを表示する
-vbsf ビットストリームフィルター
非推奨-bsfを参照
-force_key_frames [:ストリーム指定子] 時間[,時間...] (出力、ストリームごと)
-force_key_frames [:ストリーム指定子] expr:式 (出力、ストリームごと)
指定されたタイムスタンプ、より正確には後の最初のフレームでキーフレームを強制します
指定された時間ごと。
引数の前に「expr:」が付いている場合、文字列 式 のように解釈されます
式とフレームごとに評価されます。 キーフレームは、
評価はゼロ以外です。
いずれかの時間が ""チャプター "[デルタ]」、それはの時代に拡大されます
ファイル内のすべての章の先頭。 デルタ、での時間として表されます
秒。 このオプションは、シークポイントが
チャプターマークまたは出力ファイル内の他の指定された場所。
たとえば、5分にキーフレームを挿入し、さらに0.1秒前にキーフレームを挿入するには
すべての章の始まり:
-force_key_frames 0:05:00、chapters-0.1
の表現 式 次の定数を含めることができます。
n 0から始まる現在処理されているフレームの数
n_強制
強制フレームの数
前_強制_n
前の強制フレームの番号。キーフレームが強制されていない場合は「NAN」です。
まだ
前_強制_t
前の強制フレームの時間、まだキーフレームが強制されていないときは「NAN」です
t 現在処理されているフレームの時間
たとえば、5秒ごとにキーフレームを強制するには、次のように指定できます。
-force_key_frames expr:gte(t、n_forced * 5)
最後に強制された時刻から5秒後にキーフレームを強制するには、
13番目のXNUMX:
-force_key_frames expr:if(isnan(prev_forced_t)、gte(t、13)、gte(t、prev_forced_t + 5))
あまりにも多くのキーフレームを強制すると、の先読みアルゴリズムにとって非常に有害であることに注意してください。
特定のエンコーダー:固定GOPオプションなどを使用する方が効率的です。
-copyinkf [:ストリーム指定子] (出力、ストリームごと)
ストリームコピーを行うときは、最初にある非キーフレームもコピーします。
-hwaccel [:ストリーム指定子] ワッセル (入力、ストリームごと)
ハードウェアアクセラレーションを使用して、一致するストリームをデコードします。 の許容値
ワッセル には次の値があります:
なし
ハードウェアアクセラレーション(デフォルト)は使用しないでください。
オート
ハードウェアアクセラレーション方式を自動的に選択します。
VDA AppleVDAハードウェアアクセラレーションを使用します。
vdpau
VDPAU(Video Decode and Presentation API for Unix)ハードウェアアクセラレーションを使用します。
dxva2
DXVA2(DirectX Video Acceleration)ハードウェアアクセラレーションを使用します。
選択したhwaccelが利用できないか、によってサポートされていない場合、このオプションは効果がありません。
選択したデコーダー。
ほとんどのアクセラレーション方法は再生を目的としており、高速ではないことに注意してください
最新のCPUでのソフトウェアデコードよりも。 さらに、 ffmpeg 通常はコピーする必要があります
GPUメモリからシステムメモリにデコードされたフレーム。
パフォーマンスの低下。 したがって、このオプションは主にテストに役立ちます。
-hwaccel_device [:ストリーム指定子] hwaccel_device (入力、ストリームごと)
ハードウェアアクセラレーションに使用するデバイスを選択します。
このオプションは、 -ファッセル オプションも指定されています。 その正確な
意味は、選択した特定のハードウェアアクセラレーション方法によって異なります。
vdpau
VDPAUの場合、このオプションは使用するX11ディスプレイ/画面を指定します。 このオプションが
指定されていない、の値 DISPLAY 環境変数が使用されます
dxva2
DXVA2の場合、このオプションには、使用するディスプレイアダプタの番号が含まれている必要があります。
このオプションが指定されていない場合、デフォルトのアダプターが使用されます。
-ファッセルズ
このffmpegのビルドでサポートされているすべてのハードウェアアクセラレーションメソッドを一覧表示します。
オーディオ オプション
-aframes 数 (出力)
出力するオーディオフレーム数を設定します。 これは「-frames:a」のエイリアスです。
-ar [:ストリーム指定子] 周波数 (入力/出力、ストリームごと)
オーディオのサンプリング周波数を設定します。 出力ストリームの場合、デフォルトで
対応する入力ストリームの周波数。 入力ストリームの場合、このオプションは
オーディオグラブデバイスと生のデマルチプレクサのセンスで、対応するものにマッピングされます
デマルチプレクサオプション。
-aq q (出力)
オーディオ品質を設定します(コーデック固有、VBR)。 これは-q:aのエイリアスです。
-交流[:ストリーム指定子] チャンネル (入力/出力、ストリームごと)
オーディオチャンネルの数を設定します。 出力ストリームの場合、デフォルトで
入力オーディオチャンネルの数。 入力ストリームの場合、このオプションは次の場合にのみ意味があります
オーディオグラブデバイスと生のデマルチプレクサは、対応するデマルチプレクサにマッピングされます
オプション。
-an (出力)
音声録音を無効にします。
-コーデック コーデック (入出力)
オーディオコーデックを設定します。 これは「-codec:a」のエイリアスです。
-sample_fmt [:ストリーム指定子] サンプルfmt (出力、ストリームごと)
オーディオサンプル形式を設定します。 「-sample_fmts」を使用して、サポートされているサンプルのリストを取得します
フォーマット。
-af フィルタグラフ (出力)
で指定されたフィルターグラフを作成します フィルタグラフ ストリームをフィルタリングするために使用します。
これは「-filter:a」のエイリアスです。 -フィルター オプション.
高機能 オーディオ オプション
-aタグ fourcc /タグ (出力)
オーディオタグ/ fourccを強制します。 これは「-tag:a」のエイリアスです。
-absf ビットストリームフィルター
非推奨。-bsfを参照
-guess_layout_max チャンネル (入力、ストリームごと)
一部の入力チャネルレイアウトが不明な場合は、に対応する場合にのみ推測してみてください。
ほとんどの指定されたチャネル数。 たとえば、2は ffmpeg 1を認識する
モノラルとしてのチャンネルとステレオとしての2チャンネルですが、6としての5.1チャンネルではありません。 デフォルトは
常に推測してみてください。 0を使用して、すべての推測を無効にします。
サブタイトル オプション
-scodec コーデック (入出力)
字幕コーデックを設定します。 これは「-codec:s」のエイリアスです。
-sn (出力)
字幕の録音を無効にします。
-sbsf ビットストリームフィルター
非推奨。-bsfを参照
高機能 サブタイトル オプション
-fix_sub_duration
字幕の長さを修正します。 字幕ごとに、同じ内の次のパケットを待ちます
重複を避けるために、最初の期間をストリーミングして調整します。 これはで必要です
一部の字幕コーデック、特にDVB字幕は、元の期間が
パケットは概算であり、最後は実際には空のサブタイトルでマークされています
フレーム。 必要なときにこのオプションを使用しないと、期間が誇張される可能性があります
または非単調なタイムスタンプによる多重化の失敗。
このオプションは、次の字幕パケットまですべてのデータの出力を遅らせることに注意してください
デコードされます:メモリ消費とレイテンシが大幅に増加する可能性があります。
-canvas_size サイズ
字幕のレンダリングに使用するキャンバスのサイズを設定します。
高機能 オプション
-地図 [ - ]入力ファイルID[:ストリーム指定子] [、同期ファイルID[:ストリーム指定子]] | [リンクラベル]
(出力)
XNUMXつ以上の入力ストリームを出力ファイルのソースとして指定します。 各入力ストリーム
入力ファイルインデックスによって識別されます 入力ファイルID および入力ストリームインデックス
入力ストリームID 入力ファイル内。 両方のインデックスは0から始まります。指定されている場合、
同期ファイルID:ストリーム指定子 どの入力ストリームをプレゼンテーション同期として使用するかを設定します
参照。
コマンドラインの最初の「-map」オプションは、出力ストリーム0のソースを指定します。
1番目の「-map」オプションは、出力ストリームXNUMXなどのソースを指定します。
ストリーム識別子の前の「-」文字は、「負の」マッピングを作成します。 これ
すでに作成されたマッピングからの一致するストリームを無効にします。
代替 [リンクラベル] フォームは、複雑なフィルターグラフからの出力をマップします(
-filter_complex オプション)を出力ファイルに追加します。 リンクラベル 定義されたものに対応する必要があります
グラフにリンクラベルを出力します。
たとえば、すべてのストリームを最初の入力ファイルから出力にマップするには
ffmpeg -i INPUT -map0出力
たとえば、最初の入力ファイルにXNUMXつのオーディオストリームがある場合、これらのストリームは次のようになります。
「0:0」と「0:1」で識別されます。 「-map」を使用して、配置するストリームを選択できます
出力ファイル。 例えば:
ffmpeg -i INPUT -map 0:1 out.wav
入力ストリームをにマップします 入力 (単一の)出力ストリームに対して「0:1」で識別されます
in out.wav.
たとえば、入力ファイルからインデックス2のストリームを選択するには a.mov (によって指定された
識別子「0:2」)、入力からインデックス6のストリーム b.mov (によって指定された
識別子「1:6」)、それらを出力ファイルにコピーします アウト.ムーブ:
ffmpeg -i a.mov -i b.mov -c copy -map 0:2 -map 1:6 out.mov
入力ファイルからすべてのビデオとXNUMX番目のオーディオストリームを選択するには:
ffmpeg -i INPUT -map 0:v -map 0:a:2 OUTPUT
XNUMX番目のオーディオを除くすべてのストリームをマッピングするには、ネガティブマッピングを使用します
ffmpeg -i INPUT -map 0 -map -0:a:1 OUTPUT
英語のオーディオストリームを選択するには:
ffmpeg -i INPUT -map 0:m:language:eng OUTPUT
このオプションを使用すると、この出力ファイルのデフォルトのマッピングが無効になることに注意してください。
-ignore_unknown
そのようなストリームのコピーが失敗するのではなく、不明なタイプの入力ストリームを無視します
試みた。
-コピー_不明
タイプが不明な入力ストリームをコピーする場合に失敗するのではなく、コピーできるようにする
ストリームが試行されます。
-マップチャンネル
[入力ファイルID.ストリーム指定子.チャンネルID| -1] [:出力ファイルID.ストリーム指定子]
特定の入力から出力にオーディオチャネルをマッピングします。 もしも
出力ファイルID.ストリーム指定子 が設定されていない場合、オーディオチャネルはすべてにマッピングされます
オーディオストリーム。
代わりに「-1」を使用する 入力ファイルID.ストリーム指定子.チャンネルID ミュートされたマップになります
チャンネル。
たとえば、 入力 ステレオオーディオファイルで、XNUMXつのオーディオを切り替えることができます
次のコマンドでチャネル:
ffmpeg -i 入力 -map_channel 0.0.1 -map_channel 0.0.0 出力
最初のチャネルをミュートしてXNUMX番目のチャネルを保持する場合:
ffmpeg -i 入力 -map_channel -1 -map_channel 0.0.1 出力
「-map_channel」オプションの順序は、
出力ストリーム。 出力チャネルレイアウトは、マップされたチャネルの数から推測されます
(XNUMXつの "-map_channel"の場合はモノラル、XNUMXつの場合はステレオなど)。 「-ac」を組み合わせて使用する
「-map_channel」は、入力および出力チャネルの場合にチャネルゲインレベルを更新するようにします
レイアウトが一致しません(たとえば、6つの「-map_channel」オプションと「-acXNUMX」)。
入力の各チャンネルを特定の出力に抽出することもできます。 以下
コマンドは、のXNUMXつのチャネルを抽出します 入力 オーディオストリーム(ファイル0、ストリーム0)から
それらの 出力_CH0 と 出力_CH1 出力:
ffmpeg -i INPUT -map_channel 0.0.0 OUTPUT_CH0 -map_channel 0.0.1 OUTPUT_CH1
次の例では、ステレオ入力のチャンネルをXNUMXつの別々のストリームに分割します。
同じ出力ファイルに入れられます:
ffmpeg -i Stereo.wav -map 0:0 -map 0:0 -map_channel 0.0.0:0.0 -map_channel 0.0.1:0.1 -y out.ogg
現在、各出力ストリームには、単一の入力からのチャネルのみを含めることができることに注意してください
ストリーム; たとえば、「-map_channel」を使用して複数の入力オーディオチャンネルを選択することはできません
(同じまたは異なるファイルからの)異なるストリームに含まれ、それらをにマージします
単一の出力ストリーム。 したがって、現在、たとえば、方向転換することはできません。
XNUMXつの別々のモノストリームをXNUMXつのステレオストリームに。 ただし、ステレオを分割する
XNUMXつのシングルチャネルモノストリームへのストリームが可能です。
この機能が必要な場合、考えられる回避策は、 合併する フィルター。 にとって
たとえば、メディアをマージする必要がある場合(ここ 入力.mkv)2つのモノラルオーディオストリームを使用して
XNUMXつのステレオチャンネルオーディオストリーム(およびビデオストリームを保持)、
次のコマンド:
ffmpeg -i input.mkv -filter_complex "[0:1] [0:2] amerge" -c:a pcm_s16le -c:v copy output.mkv
-map_metadata [:Metadata_spec_out] ファイル内[:Metadata_spec_in] (出力、メタデータごと)
次の出力ファイルのメタデータ情報を ファイル内。 それらはファイルであることに注意してください
ファイル名ではなく、インデックス(ゼロベース)。 オプション Metadata_spec_in / out パラメータ
コピーするメタデータを指定します。 メタデータ指定子は、次の形式を持つことができます。
g グローバルメタデータ、つまりファイル全体に適用されるメタデータ
s[:ストリーム仕様]
ストリームごとのメタデータ。 ストリーム仕様 で説明されているストリーム指定子です Stream
指定子 章。 入力メタデータ指定子では、最初に一致するストリームは
からコピー。 出力メタデータ指定子では、一致するすべてのストリームがにコピーされます。
c:章の索引
章ごとのメタデータ。 章の索引 ゼロベースのチャプターインデックスです。
p:プログラムインデックス
プログラムごとのメタデータ。 プログラムインデックス ゼロベースのプログラムインデックスです。
メタデータ指定子を省略すると、デフォルトでグローバルになります。
デフォルトでは、グローバルメタデータは最初の入力ファイルからストリームごとおよびストリームごとにコピーされます。
チャプターメタデータは、ストリーム/チャプターと一緒にコピーされます。 これらのデフォルトのマッピングは
関連するタイプのマッピングを作成することにより無効になります。 負のファイルインデックスは
自動コピーを無効にするだけのダミーマッピングを作成するために使用されます。
たとえば、入力ファイルの最初のストリームからグローバルにメタデータをコピーします
出力ファイルのメタデータ:
ffmpeg -i in.ogg -map_metadata 0:s:0 out.mp3
逆にするには、つまり、グローバルメタデータをすべてのオーディオストリームにコピーします。
ffmpeg -i in.mkv -map_metadata:s:a 0:g out.mkv
この例では、グローバルメタデータが次のようになっているため、単純な0でも機能することに注意してください。
デフォルトで想定されます。
-map_chapters 入力ファイルインデックス (出力)
インデックス付きの入力ファイルからチャプターをコピーします 入力ファイルインデックス 次の出力ファイルに移動します。 もしも
チャプターマッピングが指定されていない場合、チャプターは最初の入力ファイルからコピーされます
少なくともXNUMXつの章があります。 負のファイルインデックスを使用して、チャプターのコピーを無効にします。
-基準 (全体的な)
エンコードの最後にベンチマーク情報を表示します。 使用されたCPU時間を表示します
最大メモリ消費量。 最大メモリ消費量はすべてでサポートされているわけではありません
システムでは、サポートされていない場合、通常は0として表示されます。
-benchmark_all (全体的な)
エンコード中にベンチマーク情報を表示します。 さまざまなステップで使用されたCPU時間を表示します
(オーディオ/ビデオのエンコード/デコード)。
-制限時間 デュレーション (全体的な)
ffmpegが実行された後に終了します デュレーション 秒です。
-投げ捨てる (全体的な)
各入力パケットをstderrにダンプします。
-hex (全体的な)
パケットをダンプするときは、ペイロードもダンプします。
-re ( )
ネイティブフレームレートで入力を読み取ります。 主にグラブデバイスのシミュレーションに使用されます。 またはライブ入力
ストリーム(ファイルから読み取る場合など)。 実際のグラブデバイスまたは
ライブ入力ストリーム(パケット損失を引き起こす可能性がある場合)。 デフォルトでは ffmpeg を企てる
入力をできるだけ速く読み取ります。 このオプションは、読み取りを遅くします
入力のネイティブフレームレートへの入力。 リアルタイム出力に便利です
(例:ライブストリーミング)。
-loop_input
入力ストリームをループします。 現在、画像ストリームに対してのみ機能します。 このオプションは
自動FFserverテストに使用されます。 このオプションは非推奨です。-loop1を使用してください。
-loop_output 何度か
アニメーションGIFなどのループをサポートする形式の出力を繰り返しループします(0は
出力を無限にループします)。 このオプションは非推奨です。-loopを使用してください。
-vsync パラメーター
ビデオ同期方式。 互換性の理由から、古い値を数値として指定できます。
新しく追加された値は、常に文字列として指定する必要があります。
0, パススルー
各フレームは、タイムスタンプとともにデマルチプレクサからマルチプレクサに渡されます。
1, cfr
要求された定数を正確に達成するために、フレームが複製およびドロップされます
フレームレート。
2, 見る
フレームはタイムスタンプとともにパススルーされるか、2を防ぐためにドロップされます
同じタイムスタンプを持つフレーム。
ドロップ
パススルーとして、ただしすべてのタイムスタンプを破棄し、マルチプレクサを新鮮に生成させます
フレームレートに基づくタイムスタンプ。
-1、 オート
マルチプレクサの機能に応じて、1から2の間で選択します。 これがデフォルトです
方法。
この後、タイムスタンプはマルチプレクサによってさらに変更される可能性があることに注意してください。 にとって
たとえば、フォーマットオプションの場合 aim_negative_ts 有効になっています。
-mapを使用すると、タイムスタンプを取得するストリームを選択できます。 あなたはできる
ビデオまたはオーディオのいずれかを変更せずに、残りのストリームを
変更されていないもの。
-frame_drop_threshold パラメーター
フレームドロップしきい値。ビデオフレームがどれだけ遅れる可能性があるかを指定します。
ドロップされます。 フレームレート単位では、1.0は1.1フレームです。 デフォルトは-XNUMXです。 一
考えられる使用例は、タイムスタンプにノイズが多い場合にフレームドロップを回避するか、増加させることです。
正確なタイムスタンプの場合のフレームドロップ精度。
-非同期 秒あたりのサンプル数
オーディオ同期方式。 タイムスタンプに一致するようにオーディオストリームを「ストレッチ/スクイーズ」します。
パラメータは、オーディオが変更される1秒あたりの最大サンプル数です。 -非同期XNUMX
オーディオストリームの開始のみが修正される特殊なケースです。
後で修正。
この後、タイムスタンプはマルチプレクサによってさらに変更される可能性があることに注意してください。 にとって
たとえば、フォーマットオプションの場合 aim_negative_ts 有効になっています。
このオプションは非推奨になりました。 代わりに「aresample」オーディオフィルターを使用してください。
-コピー
入力タイムスタンプを処理しませんが、サニタイズを試みずにそれらの値を保持します
彼ら。 特に、初期開始時間オフセット値は削除しないでください。
に応じて、 VSYNC オプションまたは特定のマルチプレクサ処理(例:
フォーマットオプション aim_negative_ts 有効になっている)出力タイムスタンプが一致しない可能性があります
このオプションが選択されている場合でも、入力タイムスタンプを使用します。
-start_at_zero
と一緒に使用する場合 コピー、入力タイムスタンプをシフトして、ゼロから開始します。
これは、たとえば「-ss 50」を使用すると、出力タイムスタンプが50秒から始まることを意味します。
入力ファイルが開始されたタイムスタンプに関係なく。
-コピーTB モード
ストリームコピー時にエンコーダのタイムベースを設定する方法を指定します。 モード 整数です
数値であり、次のいずれかの値をとることができます。
1 デマルチプレクサのタイムベースを使用します。
タイムベースは、対応する入力から出力エンコーダーにコピーされます
demuxer。 これは、単調に増加しないようにするために必要になる場合があります
可変フレームレートでビデオストリームをコピーするときのタイムスタンプ。
0 デコーダのタイムベースを使用します。
タイムベースは、対応する入力から出力エンコーダーにコピーされます
デコーダ。
-1 正常な出力を生成するために、自動的に選択を行うようにしてください。
デフォルト値は-1です。
-最短 (出力)
最短の入力ストリームが終了したら、エンコードを終了します。
-dts_delta_threshold
タイムスタンプの不連続性のデルタしきい値。
-マックスディレイ 秒 ( )
最大demux-decode遅延を設定します。
-muxpreload 秒 ( )
初期のdemux-decode遅延を設定します。
-ストリームID 出力ストリーム インデックス:新しい価値 (出力)
新しいstream-id値を出力ストリームに割り当てます。 このオプションを指定する必要があります
適用される出力ファイル名の前。 複数の状況に
出力ファイルが存在する場合、streamidを別の値に再割り当てできます。
たとえば、出力用にストリーム0 PIDを33に設定し、ストリーム1PIDを36に設定します。
mpegtsファイル:
ffmpeg -i infile -streamid 0:33 -streamid 1:36 out.ts
-bsf [:ストリーム指定子] ビットストリームフィルター (出力、ストリームごと)
一致するストリームのビットストリームフィルターを設定します。 ビットストリームフィルター カンマ区切りです
ビットストリームフィルターのリスト。 「-bsfs」オプションを使用して、ビットストリームのリストを取得します
フィルタ
ffmpeg -i h264.mp4 -c:v copy -bsf:v h264_mp4toannexb -an out.h264
ffmpeg -i file.mov -an -vn -bsf:s mov2textsub -c:s copy -f rawvideo sub.txt
-鬼ごっこ[:ストリーム指定子] コーデックタグ (入力/出力、ストリームごと)
ストリームを一致させるためにタグ/ fourccを強制します。
-タイムコード hh:mm:ss9月ff
書き込みのタイムコードを指定します。 9月 非ドロップタイムコードの場合は「:」、「;」は(または '。')
ドロップ。
ffmpeg -i input.mpg -timecode 01:02:03.04 -r 30000/1001 -s ntsc output.mpg
-filter_complex フィルタグラフ (全体的な)
複雑なフィルターグラフ、つまり任意の数の入力および/または出力を持つフィルターグラフを定義します。
単純なグラフ(同じタイプのXNUMXつの入力とXNUMXつの出力を持つグラフ)については、を参照してください。
-フィルター オプション。 フィルタグラフ で説明されているように、フィルターグラフの説明です。
ffmpeg-filtersマニュアルの「フィルターグラフ構文」セクション。
入力リンクラベルは、を使用して入力ストリームを参照する必要があります
"[file_index:stream_specifier]"構文(つまり、 -地図 使用)。 もしも
ストリーム指定子 複数のストリームに一致し、最初のストリームが使用されます。 ラベルなし
inputは、一致するタイプの最初の未使用の入力ストリームに接続されます。
出力リンクラベルはで参照されます -地図。 ラベルのない出力が最初に追加されます
出力ファイル。
このオプションを使用すると、通常なしでlavfiソースのみを使用できることに注意してください。
入力ファイル。
たとえば、ビデオの上に画像をオーバーレイするには
ffmpeg -i video.mkv -i image.png -filter_complex '[0:v] [1:v] overlay [out]' -map
'[out]' out.mkv
ここで「[0:v]」は、リンクされている最初の入力ファイルの最初のビデオストリームを指します
オーバーレイフィルターの最初の(メイン)入力に。 同様に、の最初のビデオストリーム
XNUMX番目の入力は、オーバーレイのXNUMX番目の(オーバーレイ)入力にリンクされています。
各入力ファイルにビデオストリームがXNUMXつしかない場合、入力ラベルを省略できます。
したがって、上記は同等です
ffmpeg -i video.mkv -i image.png -filter_complex'overlay [out] '-map
'[out]' out.mkv
さらに、フィルターグラフから出力ラベルと単一の出力を省略できます
出力ファイルに自動的に追加されるので、簡単に書くことができます
ffmpeg -i video.mkv -i image.png -filter_complex'overlay 'out.mkv
lavfi「カラー」ソースを使用して5秒間の真っ赤なビデオを生成するには:
ffmpeg -filter_complex'color = c = red '-t 5 out.mkv
-ラフフィ フィルタグラフ (全体的な)
複雑なフィルターグラフ、つまり任意の数の入力および/または出力を持つフィルターグラフを定義します。
に相当 -filter_complex.
-filter_complex_script ファイル名 (全体的な)
このオプションはに似ています -filter_complex、唯一の違いは、その引数が
複雑なフィルターグラフの説明を読み取るファイルの名前。
-accurate_seek ( )
このオプションは、入力ファイルでの正確なシークを有効または無効にします。 -NS オプションを選択します。
デフォルトで有効になっているため、トランスコーディング時にシークが正確になります。 つかいます
-noaccurate_seek それを無効にするために、これは例えばいくつかのストリームをコピーするときに役立つかもしれません
他のトランスコーディング。
-seek_timestamp ( )
このオプションは、入力ファイルのタイムスタンプによるシークを有効または無効にします。 -NS
オプション。 デフォルトでは無効になっています。 有効になっている場合、 -NS オプションがある
実際のタイムスタンプと見なされ、ファイルの開始時刻によってオフセットされません。 この
トランスポートストリームなど、タイムスタンプ0から始まらないファイルにのみ関係します。
-thread_queue_size サイズ ( )
このオプションは、ファイルまたはファイルから読み取るときにキューに入れられるパケットの最大数を設定します。
端末。 低遅延/高レートのライブストリームでは、パケットが破棄される可能性があります
タイムリーに読み取られません。 この値を上げると回避できます。
-override_ffserver (全体的な)
からの入力仕様をオーバーライドします ffserver。 このオプションを使用すると、任意のマップを作成できます
入力ストリーム ffserver からエンコーディングの多くの側面を制御します ffmpeg。 なし
このオプション ffmpeg に送信します ffserver によって要求されるもの ffserver.
このオプションは、指定できない機能が必要な場合を対象としています。
ffserver しかしすることができます ffmpeg.
-sdp_file file (全体的な)
出力ストリームのsdp情報をに出力します file。 これにより、sdpをダンプできます
少なくともXNUMXつの出力がrtpストリームでない場合の情報。 (少なくともXNUMXつが必要です
出力フォーマットはrtp)。
-破棄 ( )
デマルチプレクサで特定のストリームまたはストリームのフレームを破棄できます。 すべてではない
デマルチプレクサはこれをサポートします。
なし
フレームを破棄しません。
デフォルト
デフォルト。フレームを破棄しません。
ノレフ
すべての非参照フレームを破棄します。
ビディール
すべての双方向フレームを破棄します。
ノーキー
キーフレームを除くすべてのフレームを破棄します。
を すべてのフレームを破棄します。
-xerror (全体的な)
エラー時に停止して終了します
特別な例外として、ビットマップ字幕ストリームを入力として使用できます。
ファイル内の最大のビデオと同じサイズのビデオに変換されます。
ビデオはありません。 これは実験的かつ一時的な解決策であることに注意してください。 そうなる
libavfilterが字幕を適切にサポートすると削除されます。
たとえば、MPEG-TS形式で保存されたDVB-T記録の上に字幕をハードコーディングするには、
字幕を1秒遅らせる:
ffmpeg -i input.ts -filter_complex \
'[#0x2ef] setpts = PTS + 1 / TB [sub]; [#0x2d0] [サブ]オーバーレイ '\
-sn -map '#0x2dc' output.mkv
(0x2d0、0x2dc、および0x2efは、それぞれビデオ、オーディオ、および
字幕ストリーム; 0:0、0:3、0:7も機能します)
プリセット ファイル
プリセットファイルには、次のシーケンスが含まれています オプション=値 ペア、各行にXNUMXつずつ、
コマンドラインで指定するのが難しいオプションのシーケンス。 開始する行
ハッシュ( '#')文字は無視され、コメントを提供するために使用されます。 チェックしてください
プリセット 例として、FFmpegソースツリーのディレクトリ。
プリセットファイルには、ffpresetファイルとavpresetファイルのXNUMX種類があります。
ffプリセット ファイル
ffpresetファイルは、「vpre」、「apre」、「spre」、および「fpre」オプションで指定されます。 The
「fpre」オプションは、プリセット名の代わりにプリセットのファイル名を入力として受け取り、次のことができます。
あらゆる種類のコーデックに使用できます。 「vpre」、「apre」、および「spre」オプションの場合、オプション
プリセットファイルで指定されたものは、現在選択されている同じタイプのコーデックに適用されます。
プリセットオプション。
「vpre」、「apre」、および「spre」プリセットオプションに渡される引数は、プリセットを識別します
次のルールに従って使用するファイル:
最初のffmpegはという名前のファイルを検索します argはディレクトリ内の.ffpreset $ FFMPEG_DATADIR (if
セット)、および $ HOME / .ffmpeg、および構成時に定義されたdatadir内(通常は
PREFIX / share / ffmpeg)または ffプリセット その中で、win32の実行可能ファイルに沿ったフォルダ
注文。 たとえば、引数が「libvpx-1080p」の場合、ファイルを検索します
libvpx-1080p.ffpreset.
そのようなファイルが見つからない場合、ffmpegはという名前のファイルを検索します コーデック名-argは.ffプリセット
上記のディレクトリで、ここで コーデック名 は、
プリセットファイルオプションが適用されます。 たとえば、次のビデオコーデックを選択した場合
「-vcodeclibvpx」と「-vpre1080p」を使用すると、ファイルが検索されます
libvpx-1080p.ffpreset.
avプリセット ファイル
avpresetファイルは、「pre」オプションで指定されます。 それらはffpresetファイルと同様に機能します。
ただし、エンコーダ固有のオプションのみが許可されます。 したがって、 オプション=値 ペア指定
エンコーダは使用できません。
「pre」オプションが指定されている場合、ffmpegはサフィックスが.avpresetのファイルを検索します
ディレクトリ内 $ AVCONV_DATADIR (設定されている場合)、および $ HOME / .avconv、および定義されたdatadir内
構成時(通常は PREFIX / share / ffmpeg)、この順序で。
最初のffmpegはという名前のファイルを検索します コーデック名-argは上記の.avpreset
ディレクトリ、ここで コーデック名 プリセットファイルオプションが適用されるコーデックの名前です
適用されます。 たとえば、「-vcodec libvpx」を使用してビデオコーデックを選択し、
「-pre1080p」の場合、ファイルを検索します libvpx-1080p.avpreset.
そのようなファイルが見つからない場合、ffmpegはという名前のファイルを検索します argは.avpreset
同じディレクトリ。
例
動画 と オーディオ つかむ
入力フォーマットとデバイスを指定すると、ffmpegはビデオとオーディオを直接取得できます。
ffmpeg -f oss -i / dev / dsp -f video4linux2 -i /dev/video0/tmp/out.mpg
または、OSSの代わりにALSAオーディオソース(モノラル入力、カードID 1)を使用する場合:
ffmpeg -f alsa -ac 1 -i hw:1 -f video4linux2 -i /dev/video0/tmp/out.mpg
ffmpegを起動する前に、適切なビデオソースとチャンネルをアクティブ化する必要があることに注意してください
などのテレビビューアでhttp://linux.bytesex.org/xawtv/> GerdKnorrによる。 あなたも持っています
標準のミキサーでオーディオ録音レベルを正しく設定します。
X11 つかむ
ffmpegを介してX11ディスプレイをつかむ
ffmpeg -f x11grab -video_size cif -framerate 25 -i:0.0 /tmp/out.mpg
0.0は、X11サーバーのdisplay.screen番号であり、DISPLAY環境変数と同じです。
ffmpeg -f x11grab -video_size cif -framerate 25 -i:0.0 + 10,20 /tmp/out.mpg
0.0は、X11サーバーのdisplay.screen番号であり、DISPLAY環境変数と同じです。
10はグラブのxオフセット、20はyオフセットです。
動画 と オーディオ file 形式でアーカイブしたプロジェクトを保存します. 変換
サポートされているファイル形式とプロトコルは、ffmpegへの入力として使用できます。
例:
・YUVファイルを入力として使用できます。
ffmpeg -i / tmp / test%dY /tmp/out.mpg
次のファイルを使用します。
/tmp/test0.Y、/tmp/test0.U、/tmp/test0.V、
/tmp/test1.Y、/tmp/test1.U、/tmp/test1.Vなど..
Yファイルは、UファイルとVファイルのXNUMX倍の解像度を使用します。 それらは生のファイルであり、
ヘッダ。 それらはすべてのまともなビデオデコーダーによって生成することができます。 サイズを指定する必要があります
画像の -s ffmpegがそれを推測できない場合のオプション。
・生のYUV420Pファイルから入力できます。
ffmpeg -i /tmp/test.yuv /tmp/out.avi
test.yuvは、生のYUV平面データを含むファイルです。 各フレームはYで構成されます
平面の後に、垂直および水平の半分の解像度でU平面とV平面が続きます。
・生のYUV420Pファイルに出力できます。
ffmpeg -i mydivx.avihugefile.yuv
・複数の入力ファイルと出力ファイルを設定できます。
ffmpeg -i /tmp/a.wav -s 640x480 -i /tmp/a.yuv /tmp/a.mpg
オーディオファイルa.wavと生のYUVビデオファイルa.yuvをMPEGファイルa.mpgに変換します。
・オーディオとビデオの変換を同時に行うこともできます。
ffmpeg -i /tmp/a.wav -ar 22050 /tmp/a.mp2
a.wavを22050HzのサンプルレートでMPEGオーディオに変換します。
・同時に複数のフォーマットにエンコードし、入力からマッピングを定義できます
ストリームから出力ストリームへ:
ffmpeg -i /tmp/a.wav -map 0:a -b:a 64k /tmp/a.mp2 -map 0:a -b:a 128k /tmp/b.mp2
a.wavを2キロビットでa.mp64に変換し、2キロビットでb.mp128に変換します。 '-マップファイル:インデックス'
各出力ストリームに使用される入力ストリームを、
出力ストリームの定義。
・復号化されたVOBをトランスコードできます。
ffmpeg -i snatch_1.vob -f avi -c:v mpeg4 -b:v 800k -g 300 -bf 2 -c:a libmp3lame -b:a 128k snatch.avi
これは典型的なDVDリッピングの例です。 入力はVOBファイルで、出力はAVIファイルです。
MPEG-4ビデオとMP3オーディオで。 このコマンドではBフレームを使用しているため、
MPEG-4ストリームはDivX5互換であり、GOPサイズは300であり、これはXNUMXつのイントラフレームを意味します
10fpsの入力ビデオの場合は29.97秒ごと。 さらに、オーディオストリームは
MP3でエンコードされているため、「-enable-libmp3lame」をに渡してLAMEサポートを有効にする必要があります
構成、設定。 マッピングは、DVDトランスコーディングで目的の画像を取得する場合に特に便利です。
音声言語。
注:サポートされている入力形式を確認するには、「ffmpeg-formats」を使用してください。
・ビデオから画像を抽出したり、多くの画像からビデオを作成したりできます。
ビデオから画像を抽出する場合:
ffmpeg -i foo.avi -r 1 -s WxH -f image2 foo-%03d.jpeg
これにより、ビデオからXNUMX秒あたりXNUMXつのビデオフレームが抽出され、次のように出力されます。
名前の付いたファイル foo-001.jpeg, foo-002.jpeg、など。画像は新しいものに合うように再スケーリングされます
WxH値。
限られた数のフレームだけを抽出したい場合は、上記のコマンドを使用できます
-vframesまたは-tオプションと組み合わせて、または-ssと組み合わせて開始します
特定の時点から抽出します。
多くの画像からビデオを作成する場合:
ffmpeg -f image2 -framerate 12 -i foo-%03d.jpeg -s WxH foo.avi
構文「foo-%03d.jpeg」は、XNUMX桁で構成されるXNUMX進数を使用することを指定します
シーケンス番号を表すためにゼロが埋め込まれます。 これは、によってサポートされているのと同じ構文です。
C printf関数ですが、通常の整数を受け入れる形式のみが適しています。
画像シーケンスをインポートする場合、-iはシェルのようなワイルドカードの拡張もサポートします
image2固有の「-pattern_typeglob」を選択することにより、内部でパターン(グロブ)
オプションを選択します。
たとえば、globパターンに一致するファイル名からビデオを作成する場合
"foo-*。jpeg":
ffmpeg -f image2 -pattern_type glob -framerate 12 -i'foo-*。jpeg'-s WxH foo.avi
・同じタイプの多くのストリームを出力に入れることができます。
ffmpeg -i test1.avi -i test2.avi -map 1:1 -map 1:0 -map 0:1 -map 0:0 -c copy -y test12.nut
結果の出力ファイル テスト12.nut からの最初のXNUMXつのストリームが含まれます
逆の順序でファイルを入力します。
・CBRビデオ出力を強制するには:
ffmpeg -i myfile.avi -b 4000k -最小レート 4000k -最大レート 4000k -bufsize 1835k out.m2v
・XNUMXつのオプションlmin、lmax、mblmin、およびmblmaxは「ラムダ」単位を使用しますが、
'q'単位から簡単に変換するQP2LAMBDA定数:
ffmpeg -i src.ext -lmax 21 * QP2LAMBDA dst.ext
構文
このセクションでは、FFmpegライブラリとツールで使用される構文と形式について説明します。
引用 と 逃げる
FFmpegは、明示的に指定されていない限り、次の引用とエスケープのメカニズムを採用しています。
次のルールが適用されます。
· ' と \ 特殊文字です(それぞれ引用符とエスケープに使用されます)。 の
それらに加えて、特定のものに応じて他の特殊文字があるかもしれません
エスケープとクォートが使用される構文。
・特殊文字の前に \.
・で囲まれたすべての文字 '' 解析された文字列に文字通り含まれます。 NS
引用文字 ' それ自体を引用することはできないので、引用を閉じて
それを逃れる。
・先頭と末尾の空白は、エスケープまたは引用符で囲まれていない限り、から削除されます。
解析された文字列。
コマンドラインまたはコマンドラインを使用する場合は、XNUMX番目のレベルのエスケープを追加する必要がある場合があることに注意してください。
採用されたシェル言語の構文に依存するスクリプト。
で定義されている関数「av_get_token」 libavutil / avstring.h トークンの解析に使用できます
上で定義されたルールに従って引用またはエスケープされます。
ツール ツール/ ffescape FFmpegソースツリーで自動的に引用または
スクリプト内の文字列をエスケープします。
例
・「 '」特殊文字を含む文字列「Crimed'Amour」をエスケープします。
犯罪d \ 'アムール
・上記の文字列には引用符が含まれているため、引用符で囲む場合は「 '」をエスケープする必要があります。
'Crime d' \ '' Amour '
・引用符を使用して先頭または末尾の空白を含めます。
'この文字列は空白で開始および終了します'
・エスケープと引用は一緒に混合することができます:
'文字列' \ 'string \' 'は文字列'
・リテラルを含める \ エスケープまたは引用のいずれかを使用できます。
'c:\ foo'はc:\\ fooと書くことができます
日付
受け入れられる構文は次のとおりです。
[(YYYY-MM-DD | YYYYMMDD)[T | t | ]]((HH:MM:SS [.m ...]]])|(HHMMSS [.m ...]]]))[Z]
今
値が「now」の場合、現在の時間がかかります。
Zが追加されていない限り、時間は現地時間です。追加されている場合、UTCとして解釈されます。 の場合
year-month-dayの部分は指定されていませんが、現在のyear-month-dayを取ります。
Time デュレーション
期間を表すために受け入れられる構文はXNUMXつあります。
[-] [ :] : [。 ...]
HH 時間数を表し、 MM 最大2桁の分数、および
SS 最大2桁の秒数。 NS m 最後にXNUMX進数を表します
の値 SS.
or
[-] + [。 ...]
S オプションの小数部分を使用して、秒数を表します m.
どちらの式でも、オプション - 負の期間を示します。
例
次の例はすべて有効な期間です。
55 55 seconds
12:03:45
12時間03分45秒
23.189
23.189 seconds
動画 サイズ
ソースビデオのサイズを指定します。これは、フォームの文字列の場合があります。 幅x高さ、または
サイズの略称の名前。
次の略語が認識されます。
NTSC
720x480
パル 720x576
qntsc
352x240
qpal
352x288
sntsc
640x480
割れる
768x576
映画
352x240
NTSCフィルム
352x240
スクシフ
128x96
qcif
176x144
cif 352x288
4cif
704x576
16cif
1408x1152
qqvga
160x120
qvga
320x240
VGA 640x480
VGA
800x600
xga 1024x768
ウガ
1600x1200
qxga
2048x1536
sxga
1280x1024
qsxga
2560x2048
hsxga
5120x4096
おお
852x480
wxga
1366x768
wsxga
1600x1024
ウーガ
1920x1200
ウォッカ
2560x1600
wqsxga
3200x2048
wquxga
3840x2400
wsxga
6400x4096
ウガ
7680x4800
cg 320x200
EGA 640x350
hd480
852x480
hd720
1280x720
hd1080
1920x1080
2k 2048x1080
2kフラット
1998x1080
2kスコープ
2048x858
4k 4096x2160
4kフラット
3996x2160
4kスコープ
4096x1716
Nhd 640x360
HQVGA
240x160
wqvga
400x240
fwqvga
432x240
高解像度
480x320
QHD 960x540
2kdci
2048x1080
4kdci
4096x2160
うーhd2160
3840x2160
うーhd4320
7680x4320
動画 率
XNUMX秒あたりに生成されるフレーム数として表されるビデオのフレームレートを指定します。
次の形式の文字列である必要があります フレームレート_番号/フレームレート_デン、整数、
浮動小数点数または有効なビデオフレームレートの略語。
次の略語が認識されます。
NTSC
30000/1001
パル 25/1
qntsc
30000/1001
qpal
25/1
sntsc
30000/1001
割れる
25/1
映画
24/1
NTSCフィルム
24000/1001
比
比率は、式として、または次の形式で表すことができます。 分子:分母.
無限(1/0)または負の値の比率は有効と見なされるため、次のようにする必要があることに注意してください。
これらの値を除外する場合は、戻り値を確認してください。
未定義の値は、「0:0」の文字列を使用して表すことができます。
色圏
以下で定義されている色の名前(大文字と小文字を区別しない一致)または
「[0x |#] RRGGBB [AA]」シーケンス。その後に@と、アルファを表す文字列が続く場合があります。
コンポーネント。
アルファコンポーネントは、「0x」とそれに続くXNUMX進数またはまたは
不透明度の値を表す0.0〜1.0のXNUMX進数(0x00 or 0.0
完全に透明であることを意味します 0xff or 1.0 完全に不透明)。 アルファコンポーネントが
指定されていません 0xff 想定されます。
文字列 ランダム ランダムな色になります。
次の色の名前が認識されます。
アリスブルー
0xF0F8FF
アンティークホワイト
0xFAEBD7
アクア
0x00FFFF
アクアマリン
0x7FFFD4
Azure
0xF0FFFF
ベージュ
0xF5F5DC
ビスク
0xFFE4C4
ブラック
0x000000
ブランチドアーモンド
0xFFEBCD
青
0x0000FF
青紫色
0x8A2BE2
ブラウン
0xA52A2A
burlywood
0xDEB887
カデットブルー
0x5F9EA0
シャルトリューズ
0x7FFF00
チョコレート
0xD2691E
コーラル
0xFF7F50
コーンフラワーブルー
0x6495ED
Cornsilk
0xFFF8DC
真紅
0xDC143C
シアン
0x00FFFF
濃紺
0x00008B
ダークシアン
0x008B8B
ダークゴールデンロッド
0xB8860B
暗灰色
0xA9A9A9
濃い緑色
0x006400
ダークカーキ
0xBDB76B
ダークマゼンタ
0x8B008B
ダークオリーブグリーン
0x556B2F
ダークオレンジ
0xFF8C00
ダークオーキッド
0x9932CC
暗赤色
0x8B0000
ダークサーモン
0xE9967A
ダークシーグリーン
0x8FBC8F
ダークスレートブルー
0x483D8B
DarkSlateGray
0x2F4F4F
ダークターコイズ
0x00CED1
ダークバイオレット
0x9400D3
深いピンク
0xFF1493
DeepSkyBlue
0x00BFFF
DimGray
0x696969
ドジャーブルー
0x1E90FF
耐火レンガ
0×B22222
フローラルホワイト
0xFFFAF0
緑の森林
0x228B22
フクシア
0xFF00FF
ゲインズボロ
0xDCDCDC
ゴーストホワイト
0xF8F8FF
ゴールド
0xFFD700
ゴールデンロッド
0xDAA520
グレー
0x808080
グリーン
0x008000
黄緑
0xADFF2F
甘露
0xF0FFF0
ホトピンク
0xFF69B4
インディアンレッド
0xCD5C5C
インジゴ
0x4B0082
象牙
0xFFFFF0
カーキ
0xF0E68C
ラベンダー
0xE6E6FA
ラベンダーブラッシュ
0xFFF0F5
芝生緑
0x7CFC00
レモンシフォン
0xFFFACD
ライトブルー
0xADD8E6
LightCoral
0xF08080
ライトシアン
0xE0FFFF
光ゴールデンロッド黄色
0xFAFAD2
ライトグリーン
0x90EE90
ライトグレー
0xD3D3D3
ライトピンク
0xFFB6C1
ライトサーモン
0xFFA07A
LightSeaGreen
0x20B2AA
LightSkyBlue
0x87CEFA
LightSlateGray
0x778899
LightSteelBlue
0xB0C4DE
明るい黄色
0xFFFFE0
ライム
0x00FF00
ライムグリーン
0x32CD32
リネン
0xFAF0E6
マゼンタ
0xFF00FF
マルーン
0x800000
中アクアマリン
0x66CDAA
ミディアムブルー
0x0000CD
ミディアムオーキッド
0xBA55D3
ミディアムパープル
0x9370D8
ミディアムシーグリーン
0x3CB371
MediumSlateBlue
0x7B68EE
ミディアムスプリンググリーン
0x00FA9A
ミディアムターコイズ
0x48D1CC
ミディアムバイオレットレッド
0xC71585
ミッドナイトブルー
0x191970
ミントクリーム
0xF5FFFA
ミスティローズ
0xFFE4E1
モカシン
0xFFE4B5
ナバホホワイト
0xFFデッド
ネイビー
0x000080
オールドレース
0xFDF5E6
オリーブ
0x808000
Olivedrab
0x6B8E23
オレンジ
0xFFA500
オレンジレッド
0xFF4500
蘭
0xDA70D6
ペールゴールデンロッド
0xEEE8AA
palegreen
0x98FB98
淡いターコイズ
0xAEEEE
ペールバイオレットレッド
0xD87093
パパイヤホイップ
0xFFEFD5
ピーチパフ
0xFFDAB9
ペルー
0xCD853F
ピンク
0xFFC0CB
プラム
0xDDA0DD
パウダーブルー
0xB0E0E6
パープル
0x800080
レッド 0xFF0000
ロージーブラウン
0xBC8F8F
ロイヤルブルー
0x4169E1
Saddlebrown
0x8B4513
サーモン
0xFA8072
SandyBrown
0xF4A460
海緑
0x2E8B57
シーシェル
0xFFF5EE
シエナ
0xA0522D
シルバー
0xC0C0C0
空色
0x87CEEB
スレートブルー
0x6A5ACD
スレートグレー
0x708090
雪
0xFFFAFA
スプリンググリーン
0x00FF7F
スチールブルー
0x4682B4
(フィニアン・タン) 0xD2B48C
ティール
0x008080
アザミ
0xD8BFD8
トマト
0xFF6347
ターコイズ
0x40E0D0
バイオレット
0xEE82EE
小麦
0xF5DEB3
ホワイト
0xFFFFFF
白い煙
0xF5F5F5
イエロー
0xFFFF00
黄緑
0x9ACD32
チャネル レイアウト
チャネルレイアウトは、マルチチャネル内のチャネルの空間配置を指定します
オーディオストリーム。 チャネルレイアウトを指定するために、FFmpegは特別な構文を利用します。
以下の表に示すように、個々のチャネルはIDで識別されます。
FL 前方左側
FR 正面右
FC フロントセンター
LFE 低頻度
BL 左後ろ
BR 右に戻る
FLC フロント左中央
FRC 中道右派
BC バックセンター
SL 左側
SR 右側
TC トップセンター
TFL 左上
TFC トップフロントセンター
TFR 右上
TBL 左上
未定 トップバックセンター
TBR 右上
DL 左ダウンミックス
DR 右ダウンミックス
WL 左に広い
WR 右に広い
SDL 真左を囲む
SDR 直接右を囲む
LFE2
低周波2
標準のチャネルレイアウト構成は、次の識別子を使用して指定できます。
モノ
FC
ステレオ
FL + FR
2.1 FL + FR + LFE
3.0 FL + FR + FC
3.0(戻る)
FL + FR + BC
4.0 FL + FR + FC + BC
クワッド
FL + FR + BL + BR
クワッド(サイド)
FL + FR + SL + SR
3.1 FL + FR + FC + LFE
5.0 FL + FR + FC + BL + BR
5.0(サイド)
FL + FR + FC + SL + SR
4.1 FL + FR + FC + LFE + BC
5.1 FL + FR + FC + LFE + BL + BR
5.1(サイド)
FL + FR + FC + LFE + SL + SR
6.0 FL + FR + FC + BC + SL + SR
6.0(フロント)
FL + FR + FLC + FRC + SL + SR
六角
FL + FR + FC + BL + BR + BC
6.1 FL + FR + FC + LFE + BC + SL + SR
6.1 FL + FR + FC + LFE + BL + BR + BC
6.1(フロント)
FL + FR + LFE + FLC + FRC + SL + SR
7.0 FL + FR + FC + BL + BR + SL + SR
7.0(フロント)
FL + FR + FC + FLC + FRC + SL + SR
7.1 FL + FR + FC + LFE + BL + BR + SL + SR
7.1(ワイド)
FL + FR + FC + LFE + BL + BR + FLC + FRC
7.1(ワイドサイド)
FL + FR + FC + LFE + FLC + FRC + SL + SR
八角形
FL + FR + FC + BL + BR + BC + SL + SR
ダウンミックス
DL + DR
カスタムチャネルレイアウトは、「+」または「|」で区切った一連の用語として指定できます。
各用語は次のようになります。
・標準チャネルレイアウトの名前(例: モノ, ステレオ, 4.0, クワッド, 5.0など)
・単一チャネルの名前(例: FL, FR, FC, LFEなど)
・チャネルの数(XNUMX進数)。オプションで「c」が続き、デフォルトが生成されます。
その数のチャネルのチャネルレイアウト(関数を参照)
"av_get_default_channel_layout")
・「0x」で始まるXNUMX進数のチャネルレイアウトマスク(の「AV_CH_ *」マクロを参照)
libavutil / channel_layout.h.
libavutilバージョン53以降、末尾の文字「c」で番号を指定します。
チャネルが必要になりますが、チャネルレイアウトマスクは次のように指定することもできます。
XNUMX進数(「c」が後に続かない場合のみ)。
で定義されている関数「av_get_channel_layout」も参照してください。 libavutil / channel_layout.h.
表現 評価
算術式を評価するとき、FFmpegは内部数式エバリュエーターを使用します。
を通じて実装 libavutil / eval.h インタフェース。
式には、単項、二項演算子、定数、および関数を含めることができます。
XNUMXつの表現 式1 と 式2 組み合わせて別の表現を形成することができます "式1;式2".
式1 と 式2 が順番に評価され、新しい式は次の値に評価されます。
式2.
次の二項演算子を使用できます: "+"、 "-"、 "*"、 "/"、 "^"。
次の単項演算子を使用できます: "+"、 "-"。
次の機能を使用できます。
abs(x)
の絶対値を計算する x.
acos(x)
のアークコサインを計算する x.
asin(x)
のアークサインを計算する x.
atan(x)
の逆正接を計算する x.
between(x、 分 最大)
次の場合は1を返します x より大きいか等しい 分 および以下 マックス、0
さもないと。
bitand(x、 y)
bitor(x、 y)
ビット単位の計算および/または演算 x と y.
の評価結果 x と y 実行前に整数に変換されます
ビット演算。
整数への変換と浮動小数点への変換の両方が可能であることに注意してください
精度を失います。 多数(通常は2 ^ 53および
大きい)。
ceil(expr)
式の値を丸めます 式 最も近い整数まで上向き。 例えば、
「ceil(1.5)」は「2.0」です。
clip(x、 分 最大)
の値を返す x 間でクリップ 分 と マックス.
cos(x)
の余弦を計算する x.
cosh(x)
の双曲線コサインを計算します x.
eq(x、 y)
次の場合は1を返します x と y 同等であり、それ以外の場合は0です。
exp(x)
の指数を計算する x (基数「e」、オイラーの数)。
フロア(expr)
式の値を丸めます 式 最も近い整数に下向きに。 例えば、
「floor(-1.5)」は「-2.0」です。
ガウス(x)
のガウス関数を計算する x、「exp(-x * x / 2)/ sqrt(2 * PI)」に対応します。
gcd(x、 y)
の最大公約数を返す x と y。 両方の場合 x と y 0またはいずれかまたは両方
がゼロ未満の場合、動作は定義されていません。
gt(x、 y)
次の場合は1を返します x より大きい y、それ以外の場合は0。
gte(x、 y)
次の場合は1を返します x より大きいか等しい y、それ以外の場合は0。
hypot(x、 y)
この関数は、同じ名前のC関数に似ています。 「sqrt(x*x +
y*y) "、辺の長さが直角三角形の斜辺の長さ x と y,
またはポイントの距離(x, y)原点から。
if(x、 y)
評価します x、および結果がゼロ以外の場合は、の評価の結果を返します。 y,
それ以外の場合は0を返します。
if(x、 y, z)
評価します x、結果がゼロ以外の場合は、の評価結果を返します。 y、そうでなければ
の評価結果 z.
ifnot(x、 y)
評価します x、および結果がゼロの場合、の評価の結果を返します。 y、戻る
それ以外の場合は0。
ifnot(x、 y, z)
評価します x、結果がゼロの場合、の評価結果を返します。 y、それ以外の場合は
の評価結果 z.
isinf(x)
次の場合は1.0を返します x は+/- INFINITY、それ以外の場合は0.0です。
isnan(x)
次の場合は1.0を返します x NAN、それ以外の場合は0.0です。
ld(var)
内部変数の値に数値をロードします VAR、以前に保存された
st(VAR, 式)。 この関数は、ロードされた値を返します。
log(x)
の自然対数を計算します x.
lt(x、 y)
次の場合は1を返します x より小さい y、それ以外の場合は0。
lte(x、 y)
次の場合は1を返します x 以下である y、それ以外の場合は0。
max(x、 y)
間の最大値を返します x と y.
min(x、 y)
間の最大値を返します x と y.
mod(x、 y)
の除算の余りを計算します x by y.
not(expr)
次の場合は1.0を返します 式 はゼロ、それ以外の場合は0.0です。
pow(x、 y)
の力を計算する x 高い y、「(x)^(y)。 "
print(t)
print(t、 l)
式の値を出力します t ログレベルで l。 場合 l 指定されていない場合はデフォルト
ログレベルが使用されます。 印刷された式の値を返します。
tをログレベルlで出力します
ランダム(x)
0.0から1.0の間の疑似ランダム値を返します。 x 内部のインデックスです
シード/状態を保存するために使用される変数。
root(expr、 最大)
関数がで表される入力値を見つけます 式 引数付き ld(0) is
間隔0の0。。マックス.
の表現 式 連続関数を示す必要があります。そうでない場合、結果は未定義です。
ld(0) 関数の入力値を表すために使用されます。つまり、
式は、さまざまな入力値を使用して複数回評価されます。
式はを介してアクセスできます ld(0)。 式が0と評価されると、
対応する入力値が返されます。
sin(x)
のサインを計算する x.
出生(x)
の双曲線正弦を計算します x.
sqrt(expr)
の平方根を計算します 式。 これは「(式)^。5 "。
squish(x)
式「1 /(1 + exp(4 * x))」を計算します。
st(var、 expr)
式の値を格納します 式 内部変数で。 VAR を指定します
値を格納する変数の番号。0からXNUMXまでの範囲の値です。
9.この関数は、内部変数に格納されている値を返します。 注、変数
現在、式間で共有されていません。
tan(x)
の接線を計算する x.
tanh(x)
の双曲線接線を計算します x.
テイラー(expr、 x)
テイラー(expr、 x, id)
でテイラー級数を評価する x、「ld(id)」を表す式が与えられた-th
0での関数の導関数。
系列が収束しない場合、結果は未定義です。
ld(id) の微分次数を表すために使用されます 式、つまり、与えられた
式は、さまざまな入力値を使用して複数回評価されます。
式は「ld(id)」を介してアクセスできます。 もしも id が指定されていない場合、0が想定されます。
0ではなくyに導関数がある場合、「taylor(expr、xy)」は次のようになる可能性があることに注意してください。
中古。
時間(0)
現在の(ウォールクロック)時間を秒単位で返します。
trunc(expr)
式の値を丸めます 式 ゼロから最も近い整数に向かって。 例えば、
「trunc(-1.5)」は「-1.0」です。
while(cond、 expr)
式を評価する 式 式が 条件 はゼロ以外であり、値を返します
最後の 式 評価、またはNANの場合 条件 常に偽でした。
次の定数を使用できます。
PI 単位円板の面積、約3.14
E EXP(1)(オイラーの数)、約2.718
PHI 黄金比(1+平方根(5))/ 2、約1.618
式の値がゼロ以外の場合、式が「真」と見なされると仮定すると、次の点に注意してください。
「*」はANDのように機能します
「+」はORのように機能します
たとえば、構成:
if(A AND B)then C
以下と同等です。
if(A * B、C)
Cコードでは、単項関数と二項関数のリストを拡張し、定義することができます
認識された定数。これにより、式で使用できるようになります。
評価者は、国際単位系の接頭辞も認識します。 'i'が追加された場合
プレフィックスの後に、代わりに1024の累乗に基づくバイナリプレフィックスが使用されます
1000の累乗。「B」の接尾辞は値に8を掛け、aの後に追加できます。
単位接頭辞または単独で使用されます。 これにより、たとえば「KB」、「MiB」、「G」、「B」を次のように使用できます。
番号の接尾辞。
利用可能な国際システムプレフィックスのリストは次のとおりです。
10と2の対応する累乗。
y 10 ^ -24 / 2 ^ -80
z 10 ^ -21 / 2 ^ -70
a 10 ^ -18 / 2 ^ -60
f 10 ^ -15 / 2 ^ -50
p 10 ^ -12 / 2 ^ -40
n 10 ^ -9 / 2 ^ -30
u 10 ^ -6 / 2 ^ -20
m 10 ^ -3 / 2 ^ -10
c 10 ^ -2
d 10 ^ -1
h 10 ^ 2
k 10 ^ 3/2 ^ 10
K 10 ^ 3/2 ^ 10
M 10 ^ 6/2 ^ 20
G 10 ^ 9/2 ^ 30
T 10 ^ 12/2 ^ 40
P 10 ^ 15/2 ^ 40
E 10 ^ 18/2 ^ 50
Z 10 ^ 21/2 ^ 60
Y 10 ^ 24/2 ^ 70
OPENCL OPTIONS
FFmpegが "--enable-opencl"で設定されている場合、次のオプションを設定できます。
グローバルOpenCLコンテキスト。
サポートされているオプションのリストは次のとおりです。
ビルドオプション
登録済みカーネルのコンパイルに使用するビルドオプションを設定します。
参照「OpenCL仕様バージョン:1.2第5.6.4章」を参照してください。
プラットフォームIDX
OpenCLコードを実行するプラットフォームのインデックスを選択します。
指定するインデックスは、デバイスリスト内のインデックスのXNUMXつである必要があります。
「ffmpeg-opencl_bench」または「av_opencl_get_device_list()」で取得されます。
デバイスID
OpenCLコードの実行に使用されるデバイスのインデックスを選択します。
指定するインデックスは、デバイスリスト内のインデックスのXNUMXつである必要があります。
「ffmpeg-opencl_bench」または「av_opencl_get_device_list()」で取得されます。
コーデック OPTIONS
libavcodecは、すべてのエンコーダーと
デコーダー。 さらに、各コーデックは、特定のいわゆるプライベートオプションをサポートする場合があります。
特定のコーデックに対して。
グローバルオプションは、特定の種類のコーデックにのみ影響する場合があり、
無意味であるか、他の人に無視されているため、指定されたものの意味に注意する必要があります
オプション。 また、一部のオプションは、デコードまたはエンコードのみを目的としています。
オプションは、-を指定して設定できます。オプション 値 FFmpegツールで、またはを設定することによって
「AVCodecContext」オプションで明示的に値を指定するか、 libavutil / opt.h のAPI
プログラムによる使用。
サポートされているオプションのリストは次のとおりです。
b 整数 (エンコーディング、オーディオ、ビデオ)
ビットレートをビット/秒で設定します。 デフォルト値は200Kです。
ab 整数 (エンコーディング、オーディオ)
オーディオビットレートを設定します(ビット/秒単位)。 デフォルト値は128Kです。
bt 整数 (エンコーディング、ビデオ)
ビデオのビットレート許容値を設定します(ビット/秒単位)。 1パスモードでは、ビットレート許容値は
レートコントロールが目標の平均ビットレート値からどれだけ逸脱するか。 この
最小/最大ビットレートとは関係ありません。 耐性を下げすぎると悪影響があります
品質について。
フラグ フラグ (デコード/エンコード、オーディオ、ビデオ、字幕)
汎用フラグを設定します。
可能な値:
mv4 マクロブロック(mpeg4)によるXNUMXつの動きベクトルを使用します。
クペル
1/4ペルモーション補正を使用します。
ループ
ループフィルターを使用します。
qスケール
固定qscaleを使用します。
GMC gmcを使用します。
mv0 常にmv = <0,0>でmbを試してください。
入力_保存済み
pass1
ファーストパスモードで内部2パスレートコントロールを使用します。
pass2
セカンドパスモードで内部2パスレートコントロールを使用します。
グレー
グレースケールのみをデコード/エンコードします。
エミュエッジ
エッジを描画しないでください。
psnr
エンコード中にerror [?]変数を設定します。
切り捨て
NAQ 適応量子化を正規化します。
イルドクト
インターレースDCTを使用します。
低遅延
低遅延を強制します。
グローバルヘッダー
すべてのキーフレームではなく、extradataにグローバルヘッダーを配置します。
ビット正確
プラットフォーム、ビルド、および時間に依存しないデータのみを書き込みます。 ((I)DCTを除く)。 この
ファイルとデータのチェックサムが再現可能であり、プラットフォーム間で一致することを保証します。
その主な用途は回帰テストです。
アイック H263の高度なイントラコーディング/ mpeg4ac予測を適用します。
cbp 非推奨です。代わりにmpegvideoプライベートオプションを使用してください。
qprd
非推奨です。代わりにmpegvideoプライベートオプションを使用してください。
イルメ
インターレースモーションエスティメーションを適用します。
cgop
閉じたgopを使用します。
私_メソッド 整数 (エンコーディング、ビデオ)
モーションエスティメーション方式を設定します。
可能な値:
ゼロ
ゼロモーションエスティメーション(最速)
フル
フルモーションエスティメーション(最も遅い)
epz
EPZSモーションエスティメーション(デフォルト)
ESA esaモーションエスティメーション(別名フル)
つば
テサモーションエスティメーション
日 diaモーションエスティメーション(epzsのエイリアス)
ログ ログモーションエスティメーション
フード
phodsモーションエスティメーション
x1 X1モーションエスティメーション
16進法 XNUMX進モーションエスティメーション
うーん ええと、モーションエスティメーション
それより
iterモーションエスティメーション
追加データサイズ 整数
エクストラデータサイズを設定します。
タイムベース 合理的な 数
コーデックのタイムベースを設定します。
これは、フレームのタイムスタンプに関する基本的な時間の単位(秒単位)です。
表されます。 固定fpsコンテンツの場合、タイムベースは「1 / frame_rate」およびタイムスタンプである必要があります
増分は同じように1である必要があります。
g 整数 (エンコーディング、ビデオ)
画像サイズのグループを設定します。 デフォルト値は12です。
ar 整数 (デコード/エンコード、オーディオ)
オーディオサンプリングレートを設定します(Hz単位)。
ac 整数 (デコード/エンコード、オーディオ)
オーディオチャンネルの数を設定します。
カットオフ 整数 (エンコーディング、オーディオ)
カットオフ帯域幅を設定します。
フレームサイズ 整数 (エンコーディング、オーディオ)
オーディオフレームサイズを設定します。
最後を除く送信された各フレームには、正確にframe_sizeサンプルが含まれている必要があります。
チャネル。 コーデックにCODEC_CAP_VARIABLE_FRAME_SIZEが設定されている場合は、0になる可能性があります。その場合
フレームサイズは制限されていません。 一定を示すためにいくつかのデコーダーによって設定されます
フレームサイズ。
フレーム番号 整数
フレーム番号を設定します。
遅らせる 整数
qcomp フロート (エンコーディング、ビデオ)
ビデオ量子化器スケール圧縮(VBR)を設定します。 の定数として使用されます
レート制御式。 デフォルトのrc_eqの推奨範囲:0.0-1.0。
クブラー フロート (エンコーディング、ビデオ)
ビデオ量子化器のスケールブラー(VBR)を設定します。
qmin 整数 (エンコーディング、ビデオ)
最小ビデオ量子化器スケール(VBR)を設定します。 -1から69の間に含める必要があります。デフォルト値
2です。
qmax 整数 (エンコーディング、ビデオ)
最大ビデオ量子化器スケール(VBR)を設定します。 -1から1024の間に含める必要があります。デフォルト
値は31です。
クディフ 整数 (エンコーディング、ビデオ)
量子化器スケール(VBR)間の最大差を設定します。
bf 整数 (エンコーディング、ビデオ)
非Bフレーム間のBフレームの最大数を設定します。
-1から16までの整数である必要があります。0は、Bフレームが無効になっていることを意味します。 値の場合
-1を使用すると、エンコーダーに応じて自動値が選択されます。
デフォルト値は0です。
b_qfactor フロート (エンコーディング、ビデオ)
PフレームとBフレームの間にqp係数を設定します。
rc_戦略 整数 (エンコーディング、ビデオ)
レート制御方法を設定します。
b_戦略 整数 (エンコーディング、ビデオ)
I / P / Bフレームから選択する戦略を設定します。
ps 整数 (エンコーディング、ビデオ)
RTPペイロードサイズをバイト単位で設定します。
mv_bits 整数
ヘッダービット 整数
i_tex_bits 整数
p_tex_bits 整数
i_count 整数
p_count 整数
スキップ回数 整数
その他のビット 整数
フレームビット 整数
コーデックタグ 整数
バグ フラグ (デコード、ビデオ)
エンコーダのバグが自動検出されない回避策。
可能な値:
AUTODETECT
old_msmpeg4
いくつかの古いlavcで生成されたmsmpeg4v3ファイル(自動検出なし)
xvid_ilace
Xvidインターレースバグ(fourcc == XVIXの場合は自動検出)
ump4
(fourcc == UMP4の場合は自動検出)
パディングなし
パディングバグ(自動検出)
amv
ac_vlc
違法なvlcバグ(fourccごとに自動検出)
qpel_chroma
std_qpel
古い標準qpel(XNUMXcc /バージョンごとに自動検出)
qpel_chroma2
direct_blocksize
direct-qpel-blocksizeバグ(XNUMXcc /バージョンごとに自動検出)
エッジ
エッジパディングのバグ(XNUMXcc /バージョンごとに自動検出)
hpel_chroma
dc_clip
ms マイクロソフトの壊れたデコーダーのさまざまなバグを回避します。
切り捨てる
トランケートされたフレーム
レリム 整数 (エンコーディング、ビデオ)
輝度の単一係数除去しきい値を設定します(負の値も
DC係数を考慮してください)。
セリム 整数 (エンコーディング、ビデオ)
クロミナンスの単一係数除去しきい値を設定します(負の値も
DC係数を考慮してください)
厳格な 整数 (デコード/エンコード、オーディオ、ビデオ)
基準に厳密に従う方法を指定します。
可能な値:
非常に
仕様または参照ソフトウェアの古い、より厳密なバージョンに厳密に準拠する
厳格な
どのような結果が生じても、仕様のすべてに厳密に準拠します
通常の
非公式
非公式の拡張を許可する
実験的
標準化されていない実験的なもの、実験的なものを許可する(未完成/作業中
進捗状況/十分にテストされていない)デコーダーとエンコーダー。 注:実験的なデコーダーは
セキュリティ上のリスクがあります。信頼できない入力をデコードするためにこれを使用しないでください。
b_qoffset フロート (エンコーディング、ビデオ)
PフレームとBフレームの間にQPオフセットを設定します。
エラー検出 フラグ (デコード、オーディオ、ビデオ)
エラー検出フラグを設定します。
可能な値:
crccheck
埋め込まれたCRCを確認する
ビットストリーム
ビットストリーム仕様の逸脱を検出する
バッファ
不適切なビットストリーム長を検出する
爆発する
マイナーエラー検出でデコードを中止する
無視する_エラー
デコードエラーを無視し、デコードを続行します。 これは、次の場合に便利です。
ビデオのコンテンツを分析し、したがって、関係なくすべてをデコードする必要があります
何。 このオプションでは、次の場合に見やすい動画にはなりません。
エラーが。
注意深い
仕様に違反し、実際にはエラーとして見られていないものを考慮してください
準拠した
すべての仕様の非準拠をエラーと見なします
積極的な
正常なエンコーダーが実行してはならないことをエラーと見なします
has_b_frames 整数
ブロック整列 整数
mpeg_quant 整数 (エンコーディング、ビデオ)
H.263の代わりにMPEG量子化器を使用してください。
スキッシュ フロート (エンコーディング、ビデオ)
量子化器をqminとqmaxの間に保つ方法(0 =クリップ、1 =微分可能を使用
関数)。
rc_qmod_amp フロート (エンコーディング、ビデオ)
実験的な量子化器の変調を設定します。
rc_qmod_freq 整数 (エンコーディング、ビデオ)
実験的な量子化器の変調を設定します。
rc_override_count 整数
rc_eq string (エンコーディング、ビデオ)
レート制御式を設定します。 式を計算するときは、標準に加えて
「式の評価」のセクションで定義されている関数、次の関数は次のとおりです。
使用可能:bits2qp(bits)、qp2bits(qp)。 また、次の定数も使用できます。
iTex pTex tex mv fCode iCount mcVar var isI isP isB avgQP qComp avgIITex avgPITex
avgPPTex avgBPTexavgTex。
最大レート 整数 (エンコーディング、オーディオ、ビデオ)
最大ビットレート許容値を設定します(ビット/秒単位)。 bufsizeを設定する必要があります。
最小レート 整数 (エンコーディング、オーディオ、ビデオ)
最小ビットレート許容値を設定します(ビット/秒単位)。 CBRエンコードの設定に最も役立ちます。 です
それ以外の場合はほとんど役に立ちません。
バフサイズ 整数 (エンコーディング、オーディオ、ビデオ)
レート制御バッファサイズを設定します(ビット単位)。
rc_buf_aggressivity フロート (エンコーディング、ビデオ)
現在は役に立たない。
i_qfactor フロート (エンコーディング、ビデオ)
PフレームとIフレームの間にQP係数を設定します。
i_qoffset フロート (エンコーディング、ビデオ)
PフレームとIフレームの間にQPオフセットを設定します。
rc_init_cplx フロート (エンコーディング、ビデオ)
1パスエンコーディングの初期の複雑さを設定します。
DCT 整数 (エンコーディング、ビデオ)
DCTアルゴリズムを設定します。
可能な値:
オート
適切なものを自動選択します(デフォルト)
速い
高速整数
int型 正確な整数
MMX
アルティベック
ファーン
浮動小数点AANDCT
ルミマスク フロート (エンコーディング、ビデオ)
明るい領域を中程度の領域よりも強く圧縮します。
tcplx_マスク フロート (エンコーディング、ビデオ)
時間計算量マスキングを設定します。
scplx_mask フロート (エンコーディング、ビデオ)
空間複雑度マスキングを設定します。
p_マスク フロート (エンコーディング、ビデオ)
インターマスキングを設定します。
ダークマスク フロート (エンコーディング、ビデオ)
中程度の領域よりも強い暗い領域を圧縮します。
わかります 整数 (デコード/エンコード、ビデオ)
IDCT実装を選択します。
可能な値:
オート
int型
シンプルな
シンプル
シンプルオート
単純なIDCTと互換性のあるIDCTを自動的に選択します
アーム
アルティベック
sh4
シンプルアーム
シンプルアームv5te
シンプルアームv6
シンプルネオン
シンプルアルファ
ipp
xvidmmx
ファアニ
浮動小数点AANIDCT
lice_count 整数
ec フラグ (デコード、ビデオ)
エラーコンシールメント戦略を設定します。
可能な値:
推測_mvs
反復動きベクトル(MV)検索(遅い)
ブロックを解除する
損傷したMBには強力な非ブロックフィルターを使用します
好意_インター
現在のフレームではなく、前のフレームからの予測を優先する
コード化サンプルあたりのビット数 整数
捕食 整数 (エンコーディング、ビデオ)
予測方法を設定します。
可能な値:
左
飛行機
中央値
側面 合理的な 数 (エンコーディング、ビデオ)
サンプルのアスペクト比を設定します。
debug フラグ (デコード/エンコード、オーディオ、ビデオ、字幕)
特定のデバッグ情報を出力します。
可能な値:
ピクト
画像情報
rc レート制御
ビットストリーム
mb_type
マクロブロック(MB)タイプ
qp ブロックごとの量子化パラメーター(QP)
mv 動きベクトル
dct_coeff
緑のメタデータ
次のフレーム、GoP、または特定の期間の複雑さのメタデータを表示します。
スキップ
スタートコード
PTS
er エラー認識
mmco
メモリ管理制御操作(H.264)
バグ
vis_qp
量子化パラメーター(QP)を視覚化し、QPが低いほど緑がかった色になります
vis_mb_type
ブロックタイプを視覚化する
バッファ
画像バッファの割り当て
スレッドオペレーション
スレッド操作
ノムク
動き補償をスキップする
ビズム 整数 (デコード、ビデオ)
動きベクトル(MV)を視覚化します。
このオプションは非推奨です。代わりにcodecviewフィルターを参照してください。
可能な値:
pf Pフレームの前方予測MV
bf Bフレームの前方予測MV
bb Bフレームの後方予測MV
CMP 整数 (エンコーディング、ビデオ)
フルペルミー比較機能を設定します。
可能な値:
悲しい 絶対差の合計、高速(デフォルト)
SSE 二乗誤差の合計
土
絶対アダマール変換された差の合計
DCT 絶対DCT変換された差の合計
psnr
量子化誤差のXNUMX乗の合計(回避、低品質)
ビット ブロックに必要なビット数
rd レート歪み最適、遅い
ゼロ
0
VSAD
絶対垂直差の合計
vsse
垂直方向の差のXNUMX乗の合計
ンセ
差の二乗和を保存するノイズ
w53 5/3ウェーブレット、雪でのみ使用
w97 9/7ウェーブレット、雪でのみ使用
dctmax
彩度
サブコンプ 整数 (エンコーディング、ビデオ)
サブペルミー比較機能を設定します。
可能な値:
悲しい 絶対差の合計、高速(デフォルト)
SSE 二乗誤差の合計
土
絶対アダマール変換された差の合計
DCT 絶対DCT変換された差の合計
psnr
量子化誤差のXNUMX乗の合計(回避、低品質)
ビット ブロックに必要なビット数
rd レート歪み最適、遅い
ゼロ
0
VSAD
絶対垂直差の合計
vsse
垂直方向の差のXNUMX乗の合計
ンセ
差の二乗和を保存するノイズ
w53 5/3ウェーブレット、雪でのみ使用
w97 9/7ウェーブレット、雪でのみ使用
dctmax
彩度
mbcmp 整数 (エンコーディング、ビデオ)
マクロブロック比較機能を設定します。
可能な値:
悲しい 絶対差の合計、高速(デフォルト)
SSE 二乗誤差の合計
土
絶対アダマール変換された差の合計
DCT 絶対DCT変換された差の合計
psnr
量子化誤差のXNUMX乗の合計(回避、低品質)
ビット ブロックに必要なビット数
rd レート歪み最適、遅い
ゼロ
0
VSAD
絶対垂直差の合計
vsse
垂直方向の差のXNUMX乗の合計
ンセ
差の二乗和を保存するノイズ
w53 5/3ウェーブレット、雪でのみ使用
w97 9/7ウェーブレット、雪でのみ使用
dctmax
彩度
ildctcmp 整数 (エンコーディング、ビデオ)
インターレースdct比較機能を設定します。
可能な値:
悲しい 絶対差の合計、高速(デフォルト)
SSE 二乗誤差の合計
土
絶対アダマール変換された差の合計
DCT 絶対DCT変換された差の合計
psnr
量子化誤差のXNUMX乗の合計(回避、低品質)
ビット ブロックに必要なビット数
rd レート歪み最適、遅い
ゼロ
0
VSAD
絶対垂直差の合計
vsse
垂直方向の差のXNUMX乗の合計
ンセ
差の二乗和を保存するノイズ
w53 5/3ウェーブレット、雪でのみ使用
w97 9/7ウェーブレット、雪でのみ使用
dctmax
彩度
直径サイズ 整数 (エンコーディング、ビデオ)
モーションエスティメーション用のダイヤモンドのタイプとサイズを設定します。
last_pred 整数 (エンコーディング、ビデオ)
前のフレームからのモーション予測子の量を設定します。
プレス 整数 (エンコーディング、ビデオ)
モーションエスティメーションを設定します。
プリカンプ 整数 (エンコーディング、ビデオ)
モーションエスティメーション比較機能を設定します。
可能な値:
悲しい 絶対差の合計、高速(デフォルト)
SSE 二乗誤差の合計
土
絶対アダマール変換された差の合計
DCT 絶対DCT変換された差の合計
psnr
量子化誤差のXNUMX乗の合計(回避、低品質)
ビット ブロックに必要なビット数
rd レート歪み最適、遅い
ゼロ
0
VSAD
絶対垂直差の合計
vsse
垂直方向の差のXNUMX乗の合計
ンセ
差の二乗和を保存するノイズ
w53 5/3ウェーブレット、雪でのみ使用
w97 9/7ウェーブレット、雪でのみ使用
dctmax
彩度
pre_dia_size 整数 (エンコーディング、ビデオ)
モーションエスティメーションのプリパス用にダイヤモンドのタイプとサイズを設定します。
サブク 整数 (エンコーディング、ビデオ)
サブペルモーションエスティメーションの品質を設定します。
dtg_active_format 整数
私_範囲 整数 (エンコーディング、ビデオ)
限界モーションベクトル範囲を設定します(DivXプレーヤーの場合は1023)。
イビアス 整数 (エンコーディング、ビデオ)
イントラクォンツバイアスを設定します。
バイアス 整数 (エンコーディング、ビデオ)
量子間バイアスを設定します。
color_table_id 整数
グローバル品質 整数 (エンコーディング、オーディオ、ビデオ)
コーダー 整数 (エンコーディング、ビデオ)
可能な値:
VLC 可変長コーダー/ハフマンコーダー
ac 算術コーダー
生 生(エンコードなし)
rle ランレングスコーダー
デフレート
デフレートベースのコーダー
コンテキスト 整数 (エンコーディング、ビデオ)
コンテキストモデルを設定します。
lice_flags 整数
xvmc_acceleration 整数
MBD 整数 (エンコーディング、ビデオ)
マクロブロック決定アルゴリズムを設定します(高品質モード)。
可能な値:
シンプルな
mbcmpを使用(デフォルト)
ビット
使用するビット数が最も少ない
rd ベストレート歪みを使用する
stream_codec_tag 整数
sc_threshold 整数 (エンコーディング、ビデオ)
シーン変更のしきい値を設定します。
最小 整数 (エンコーディング、ビデオ)
最小ラグレンジ係数(VBR)を設定します。
値Lmax 整数 (エンコーディング、ビデオ)
最大ラグレンジ係数(VBR)を設定します。
nr 整数 (エンコーディング、ビデオ)
ノイズリダクションを設定します。
rc_init_occupancy 整数 (エンコーディング、ビデオ)
デコードを開始する前にrcバッファにロードする必要のあるビット数を設定します。
フラグ2 フラグ (デコード/エンコード、オーディオ、ビデオ)
可能な値:
速いです
仕様に準拠していないスピードアップのトリックを許可します。
スゴップ
非推奨です。代わりにmpegvideoプライベートオプションを使用してください。
ノーアウト
ビットストリームエンコーディングをスキップします。
無視する作物
spsからのトリミング情報を無視します。
ローカルヘッダー
エクストラデータではなく、すべてのキーフレームにグローバルヘッダーを配置します。
チャンク
フレームデータは複数のチャンクに分割される場合があります。
すべて表示する
最初のキーフレームの前にすべてのフレームを表示します。
スキップド
非推奨です。代わりにmpegvideoプライベートオプションを使用してください。
エクスポート_mvs
モーションベクトルをフレームサイドデータにエクスポートします(「AV_FRAME_DATA_MOTION_VECTORS」を参照)。
それをサポートするコーデックの場合。 も参照してください doc / examples / export_mvs.c.
エラー 整数 (エンコーディング、ビデオ)
品質 整数 (エンコーディング、ビデオ)
非推奨です。代わりにmpegvideoプライベートオプションを使用してください。
スレッド 整数 (デコード/エンコード、ビデオ)
可能な値:
オート
かなりの数のスレッドを検出する
me_threshold 整数 (エンコーディング、ビデオ)
モーションエスティメーションのしきい値を設定します。
mb_threshold 整数 (エンコーディング、ビデオ)
マクロブロックのしきい値を設定します。
dc 整数 (エンコーディング、ビデオ)
intra_dc_precisionを設定します。
nsew 整数 (エンコーディング、ビデオ)
nsseの重みを設定します。
スキップトップ 整数 (デコード、ビデオ)
スキップされるマクロブロック行の数を一番上に設定します。
スキップボトム 整数 (デコード、ビデオ)
スキップされるマクロブロック行の数を下部に設定します。
プロフィール 整数 (エンコーディング、オーディオ、ビデオ)
可能な値:
未知の
aac_main
aac_low
aac_ssr
aac_ltp
aac_he
aac_he_v2
aac_ld
aac_eld
mpeg2_aac_low
mpeg2_aac_he
mpeg4_sp
mpeg4_core
mpeg4_メイン
mpeg4_asp
dts
dts_es
dts_96_24
dts_hd_hra
dts_hd_ma
レベル 整数 (エンコーディング、オーディオ、ビデオ)
可能な値:
未知の
低解像度 整数 (デコード、オーディオ、ビデオ)
1 = 1 / 2、2 = 1 / 4、3 = 1/8の解像度でデコードします。
スキップしきい値 整数 (エンコーディング、ビデオ)
フレームスキップしきい値を設定します。
スキップ係数 整数 (エンコーディング、ビデオ)
フレームスキップ係数を設定します。
スキップ_exp 整数 (エンコーディング、ビデオ)
フレームスキップ指数を設定します。 負の値は、対応する値と同じように動作します
スコアが正規化されていることを除いて、正のもの。 正の値は主に存在します
互換性の理由から、あまり役に立ちません。
スキップcmp 整数 (エンコーディング、ビデオ)
フレームスキップ比較機能を設定します。
可能な値:
悲しい 絶対差の合計、高速(デフォルト)
SSE 二乗誤差の合計
土
絶対アダマール変換された差の合計
DCT 絶対DCT変換された差の合計
psnr
量子化誤差のXNUMX乗の合計(回避、低品質)
ビット ブロックに必要なビット数
rd レート歪み最適、遅い
ゼロ
0
VSAD
絶対垂直差の合計
vsse
垂直方向の差のXNUMX乗の合計
ンセ
差の二乗和を保存するノイズ
w53 5/3ウェーブレット、雪でのみ使用
w97 9/7ウェーブレット、雪でのみ使用
dctmax
彩度
ボーダーマスク フロート (エンコーディング、ビデオ)
境界に近いマクロブロックの量子化器を増やします。
ムブルミン 整数 (エンコーディング、ビデオ)
最小マクロブロックラグレンジファクター(VBR)を設定します。
mblmax 整数 (エンコーディング、ビデオ)
最大マクロブロックラグレンジファクター(VBR)を設定します。
メック 整数 (エンコーディング、ビデオ)
モーションエスティメーションのビットレートペナルティ補正を設定します(1.0 = 256)。
スキップループフィルター 整数 (デコード、ビデオ)
スキップ_idct 整数 (デコード、ビデオ)
スキップフレーム 整数 (デコード、ビデオ)
オプションで選択したフレームタイプに応じてデコーダー廃棄処理を行います
の値です。
スキップループフィルター フレームループフィルタリングをスキップし、 スキップ_idct フレームをスキップします
IDCT /逆量子化、 スキップフレーム デコードをスキップします。
可能な値:
なし
フレームを破棄しません。
デフォルト
0サイズのフレームのような役に立たないフレームを破棄します。
ノレフ
すべての非参照フレームを破棄します。
ビディール
すべての双方向フレームを破棄します。
ノーキー
キーフレームを除くすべてのフレームを破棄します。
を すべてのフレームを破棄します。
デフォルト値は デフォルト.
入札リファイン 整数 (エンコーディング、ビデオ)
双方向マクロブロックで使用されるXNUMXつの動きベクトルを調整します。
brd_scale 整数 (エンコーディング、ビデオ)
動的なBフレーム決定のためのダウンスケールフレーム。
keyint_min 整数 (エンコーディング、ビデオ)
IDRフレーム間の最小間隔を設定します。
ヒント 整数 (エンコーディング、ビデオ)
動き補償を検討するための参照フレームを設定します。
クロマオフセット 整数 (エンコーディング、ビデオ)
輝度からの彩度qpオフセットを設定します。
トレリス 整数 (エンコーディング、オーディオ、ビデオ)
レート歪み最適量子化を設定します。
sc_factor 整数 (エンコーディング、ビデオ)
フレームごとにqscaleを掛けた値を設定し、scene_change_scoreに追加します。
mv0_threshold 整数 (エンコーディング、ビデオ)
b_sensitivevity 整数 (エンコーディング、ビデオ)
b_frame_strategy1の感度を調整します。
圧縮レベル 整数 (エンコーディング、オーディオ、ビデオ)
min_prediction_order 整数 (エンコーディング、オーディオ)
max_prediction_order 整数 (エンコーディング、オーディオ)
timecode_frame_start 整数 (エンコーディング、ビデオ)
非ドロップフレーム形式で、GOPタイムコードフレームの開始番号を設定します。
リクエストチャンネル 整数 (デコード、オーディオ)
必要なオーディオチャンネル数を設定します。
raw_sample あたりのビット数 整数
チャンネルレイアウト 整数 (デコード/エンコード、オーディオ)
可能な値:
request_channel_layout 整数 (デコード、オーディオ)
可能な値:
rc_max_vbv_use フロート (エンコーディング、ビデオ)
rc_min_vbv_use フロート (エンコーディング、ビデオ)
フレームあたりのティック数 整数 (デコード/エンコード、オーディオ、ビデオ)
color_primaries 整数 (デコード/エンコード、ビデオ)
color_trc 整数 (デコード/エンコード、ビデオ)
色空間 整数 (デコード/エンコード、ビデオ)
色の範囲 整数 (デコード/エンコード、ビデオ)
入力パラメータとして使用される場合、それはデコーダへのヒントとして機能します。
入力があります。
クロマサンプルの場所 整数 (デコード/エンコード、ビデオ)
ログレベルオフセット 整数
ログレベルのオフセットを設定します。
スライス 整数 (エンコーディング、ビデオ)
並列化されたエンコーディングで使用されるスライスの数。
スレッドの種類 フラグ (デコード/エンコード、ビデオ)
使用するマルチスレッド方式を選択します。
活用 フレーム スレッドごとにXNUMXフレームずつデコード遅延が増加するため、
将来のフレームを提供することはできませんそれを使用するべきではありません。
可能な値:
スライス
XNUMXつのフレームの複数の部分を一度にデコードします。
スライスを使用したマルチスレッドは、ビデオがスライスでエンコードされている場合にのみ機能します。
フレーム
一度に複数のフレームをデコードします。
デフォルト値は スライス+フレーム.
オーディオサービスの種類 整数 (エンコーディング、オーディオ)
オーディオサービスタイプを設定します。
可能な値:
ma メインオーディオサービス
ef エフェクト
vi 視覚障害
hi Konnekt 聴覚障がい
di ダイアログ
co 解説
em 緊急
vo ボイスオーバー
ka Karaoke
request_sample_fmt サンプルfmt (デコード、オーディオ)
サンプルフォーマットのオーディオデコーダーを設定することをお勧めします。 デフォルト値は「none」です。
pkt_timebase 合理的な 数
sub_charenc エンコーディング (デコード、字幕)
入力字幕の文字エンコードを設定します。
フィールドオーダー フィールドオーダー (ビデオ)
ビデオのフィールド順序を設定/オーバーライドします。 可能な値:
プログレッシブ
プログレッシブビデオ
tt インターレースビデオ、最初にコード化されて表示されたトップフィールド
bb インターレースビデオ、最初にコード化されて表示された下部フィールド
tb インターレースビデオ、最初に上にコード化、最初に下に表示
bt インターレースビデオ、下が最初にコード化され、上が最初に表示されます
スキップアルファ 整数 (デコード、ビデオ)
アルファ(透明度)の処理を無効にするには、1に設定します。 これは次のように機能します グレー フラグを立てる
フラグ アルファの代わりにクロマ情報をスキップするオプション。 デフォルトは0です。
コーデック_ホワイトリスト リスト ( )
「、」で区切られた許可されたデコーダーのリスト。 デフォルトでは、すべてが許可されています。
ダンプセパレーター string ( )
ストリームに関するコマンドラインに出力されるフィールドを区切るために使用されるセパレータ
パラメーター。 たとえば、フィールドを改行とインデントで区切るには、次のようにします。
ffprobe -dump_separator "
" -私 〜/ videos / matrixbench_mpeg2.mpg
デコーダー
デコーダーは、マルチメディアストリームのデコードを可能にするFFmpegで構成された要素です。
FFmpegビルドを構成すると、サポートされているすべてのネイティブデコーダーが有効になります
ディフォルト。 外部ライブラリを必要とするデコーダーは、
対応する「--enable-lib」オプション。 を使用して、使用可能なすべてのデコーダーを一覧表示できます。
オプション「--list-decoders」を構成します。
構成オプション「--disable-decoders」を使用してすべてのデコーダーを無効にすることができます。
オプション「--enable-decoder =」を使用して、単一のデコーダーを選択的に有効/無効にします。デコーダ" /
"--disable-decoder =デコーダ".
ff *ツールのオプション「-decoders」は、有効なデコーダーのリストを表示します。
VIDEO デコーダー
現在利用可能なビデオデコーダのいくつかの説明は次のとおりです。
Hevc
HEVC /H.265デコーダー。
注: スキップループフィルター オプションは、レベル「すべて」でのみ有効です。
生ビデオ
生のビデオデコーダ。
このデコーダーはrawvideoストリームをデコードします。
オプション
top トップフィールドファースト
入力ビデオの想定フィールドタイプを指定します。
-1 ビデオはプログレッシブであると見なされます(デフォルト)
0 ボトムフィールドファーストが想定されます
1 トップフィールドファーストが想定されます
AUDIO デコーダー
現在利用可能なオーディオデコーダのいくつかの説明は次のとおりです。
ac3
AC-3オーディオデコーダー。
このデコーダーは、ATSC A / 52:2010およびETSI TS 102 366の一部、および
文書化されていないRealAudio3(別名dnet)。
AC-3 デコード オプション
-drc_scale 値
ダイナミックレンジスケールファクター。 AC-3からのダイナミックレンジ値に適用する係数
ストリーム。 この係数は指数関数的に適用されます。 3つの注目すべきスケールファクターがあります
範囲:
drc_scale == 0
DRCが無効になっています。 フルレンジのオーディオを生成します。
0 < drc_scale <= 1
DRCが有効になっています。 ストリームのDRC値の一部を適用します。 オーディオ再生は
フルレンジとフルコンプレッションの間。
drc_scale > 1
DRCが有効になっています。 drc_scaleを非対称に適用します。 大きな音は完全に圧縮されています。
やわらかな音が強調されます。
FLAC
FLACオーディオデコーダー。
このデコーダーは、Xiphからの完全なFLAC仕様を実装することを目的としています。
FLAC デコード オプション
-use_buggy_lpc
高いlpc値を持つバグのあるストリームを生成するために使用されるlavcFLACエンコーダー(
デフォルト値)。 このオプションを使用すると、このようなストリームを正しくデコードできます。
デコードにlavcの古いバグのあるlpcロジックを使用します。
ffwaveシンセ
内部波シンセタイザー。
このデコーダーは、事前定義されたシーケンスに従って波形パターンを生成します。 その使用は純粋に
内部およびそれが受け入れるデータの形式は公に文書化されていません。
リブセルト
libceltデコーダーラッパー。
libceltを使用すると、libavcodecはXiphCELT超低遅延オーディオコーデックをデコードできます。 必要
構成中のlibceltヘッダーとライブラリーの存在。 必要がある
「--enable-libcelt」を使用してビルドを明示的に構成します。
libgsm
libgsmデコーダラッパー。
libgsmを使用すると、libavcodecはGSMフルレートオーディオコーデックをデコードできます。 の存在が必要です
構成中のlibgsmヘッダーとライブラリ。 明示的に構成する必要があります
「--enable-libgsm」を使用してビルドします。
このデコーダーは、通常のGSMとMicrosoftのバリアントの両方をサポートします。
リビルブク
libilbcデコーダラッパー。
libilbcを使用すると、libavcodecはインターネット低ビットレートコーデック(iLBC)オーディオコーデックをデコードできます。
構成中にlibilbcヘッダーとライブラリーが存在する必要があります。 必要がある
「--enable-libilbc」を使用してビルドを明示的に構成します。
オプション
次のオプションは、libilbcラッパーでサポートされています。
高めます
1に設定すると、デコードされたオーディオの拡張を有効にします。デフォルト値は0です。
(無効)。
libopencore-amrnb
libopencore-amrnbデコーダラッパー。
libopencore-amrnbを使用すると、libavcodecでAdaptive Multi-RateNarrowbandオーディオをデコードできます
コーデック。 これを使用するには、libopencore-amrnbヘッダーとライブラリが存在する必要があります。
構成。 ビルドを明示的に構成する必要があります
「--enable-libopencore-amrnb」。
AMR-NB用のFFmpegネイティブデコーダーが存在するため、ユーザーはこれなしでAMR-NBをデコードできます
としょうかん。
libopencore-amrwb
libopencore-amrwbデコーダラッパー。
libopencore-amrwbを使用すると、libavcodecでAdaptive Multi-RateWidebandオーディオをデコードできます
コーデック。 これを使用するには、libopencore-amrwbヘッダーとライブラリが存在する必要があります。
構成。 ビルドを明示的に構成する必要があります
「--enable-libopencore-amrwb」。
AMR-WB用のFFmpegネイティブデコーダーが存在するため、ユーザーはこれなしでAMR-WBをデコードできます
としょうかん。
リボパス
libopusデコーダーラッパー。
libopusを使用すると、libavcodecはOpus Interactive AudioCodecをデコードできます。 が必要です
構成中のlibopusヘッダーとライブラリーの存在。 明示的にする必要があります
「--enable-libopus」を使用してビルドを構成します。
Opus用のFFmpegネイティブデコーダーが存在するため、ユーザーはこのライブラリなしでOpusをデコードできます。
字幕 デコーダー
DVサブ
オプション
Compute_clut
-1 一致するCLUTがストリームにない場合は、clutを計算します。
0 CLUTを計算しないでください
1 常にCLUTを計算し、ストリームで提供されるものをオーバーライドします。
dvb_substream
dvbサブストリームを選択するか、デフォルトの-1の場合はすべてのサブストリームを選択します。
DVDサブ
このコーデックは、DVDで使用されているビットマップ字幕をデコードします。 同じ字幕も見つけることができます
VobSubファイルペアと一部のMatroskaファイル。
オプション
パレット
ビットマップで使用されるグローバルパレットを指定します。 VobSubに保存すると、パレットは次のようになります。
通常、インデックスファイルで指定されます。 Matroskaでは、パレットはコーデックに保存されます
VobSubと同じ形式の追加データ。 DVDでは、パレットはIFOに保存されます
ファイルであるため、ダンプされたVOBファイルから読み取る場合は使用できません。
このオプションの形式は、16個の24ビットXNUMX進数を含む文字列です。
(0xプレフィックスなし)コマで区切られます。例:「0d00ee、ee450d、101010、eaeaea、
0ce60b, ec14ed, ebff0b, 0d617a, 7b7b7b, d1d1d1, 7b2a0e, 0d950c, 0f007b, cf0dec,
cfa80c、7c127b "。
ifo_パレット
グローバルパレットの取得元のIFOファイルを指定します。 (実験的)
force_subs_only
強制としてマークされた字幕エントリのみをデコードします。 一部のタイトルには強制および非強制があります
同じトラックの字幕。 このフラグを1に設定すると、強制されたままになります
字幕。 デフォルト値は0です。
libzvbi-テレテキスト
Libzvbiを使用すると、libavcodecはDVBテレテキストページとDVBテレテキスト字幕をデコードできます。
構成中にlibzvbiヘッダーとライブラリーが存在する必要があります。 必要がある
「--enable-libzvbi」を使用してビルドを明示的に構成します。
オプション
txt_ページ
デコードする文字放送のページ番号のリスト。 特別な*文字列を使用してすべてに一致させることができます
ページ。 指定したリストに一致しないページは削除されます。 デフォルト値は*です。
txt_chop_top
一番上のテレテキスト行を破棄します。 デフォルト値は1です。
txt_format
デコードされた字幕の形式を指定します。 文字放送デコーダーは
文字放送ページをビットマップまたは単純なテキストにデコードするには、「ビットマップ」を使用する必要があります。
特定のグラフィックや色を単純に表現できないため、テレテキストページ
文章。 アプリケーションが処理できる場合は、テレテキストベースの字幕に「テキスト」を使用できます
シンプルなテキストベースの字幕。 デフォルト値はビットマップです。
txt_左
生成されたビットマップのXオフセット。デフォルトは0です。
txt_トップ
生成されたビットマップのYオフセット。デフォルトは0です。
txt_chop_spaces
先頭と末尾のスペースを切り取り、生成されたテキストから空の行を削除します。
このオプションは、空のスペースが存在する可能性がある文字放送ベースの字幕に役立ちます
行の最初または最後に、または空の行が
ダブルサイズの文字放送文字による字幕行。 デフォルト値は1です。
txt_duration
デコードされたテレテキストページまたは字幕の表示時間をミリ秒単位で設定します。
デフォルト値は30000、つまり30秒です。
txt_透明
生成されたテレテキストビットマップの背景を透明にします。 デフォルト値は0です
これは、不透明な(黒の)背景を意味します。
エンコーダー
エンコーダーは、マルチメディアストリームのエンコードを可能にするFFmpegで構成された要素です。
FFmpegビルドを構成すると、サポートされているすべてのネイティブエンコーダーが有効になります。
ディフォルト。 外部ライブラリを必要とするエンコーダは、
対応する「--enable-lib」オプション。 を使用して、使用可能なすべてのエンコーダを一覧表示できます。
オプション「--list-encoders」を設定します。
構成オプション「--disable-encoders」を使用してすべてのエンコーダーを無効にすることができます。
オプション「--enable-encoder =」を使用して、単一のエンコーダーを選択的に有効/無効にします。エンコーダー」 /
"--disable-encoder =エンコーダー」.
ff *ツールのオプション「-encoders」は、有効なエンコーダーのリストを表示します。
AUDIO エンコーダー
現在利用可能なオーディオエンコーダのいくつかの説明は次のとおりです。
AAC
Advanced Audio Coding(AAC)エンコーダー。
このエンコーダーは実験的なFFmpegネイティブAACエンコーダーです。 現在は低
複雑さ(AAC-LC)プロファイルがサポートされています。 このエンコーダを使用するには、次のように設定する必要があります 厳格な オプション
〜へ 実験的 またはそれ以下。
このエンコーダは実験的なものであるため、予期しない動作が発生する場合があります。 のために
より安定したAACエンコーダー。を参照してください。 libvo-acenc。 ただし、品質が悪いことに注意してください
一部のユーザーから報告されました。
参照 libfdk_aac.
オプション
b ビットレートをビット/秒で設定します。 これを設定すると、固定ビットレート(CBR)が自動的にアクティブになります
モード。
q 可変ビットレート(VBR)モードの品質を設定します。 このオプションは、
ffmpeg コマンドラインツール。 ライブラリインターフェイスユーザーの場合は、 グローバル品質.
Stereo_mode
ステレオエンコーディングモードを設定します。 可能な値:
オート
エンコーダーによって自動的に選択されます。
ms_off
ミドル/サイドエンコーディングを無効にします。 これがデフォルトです。
ms_force
ミドル/サイドエンコーディングを強制します。
aac_coder
AACエンコーダのコーディング方法を設定します。 可能な値:
顔
FAACに着想を得た方法。
この方法は、FAACで使用されている方法を簡略化して再実装したものです。
帯域エネルギーに比例するしきい値を設定してから、すべての
適切な量子化を見つけるための量子化ステップによるしきい値
バンドごとのしきい値を下回る歪み。
この方法の品質は、XNUMXループ検索方法に匹敵します。
以下で説明しますが、多少良く、遅くなります。
アンマー
平均ノイズ対マスク比(ANMR)トレリスベースのソリューション。
これは、すべてのコーディング方法の中で理論的に最高の品質を備えていますが、コストがかかります
最も遅い速度の。
ツーループ
XNUMXループ検索(TLS)方式。
この方法では、最初に帯域のしきい値に応じて量子化器を設定し、次に次のことを試みます。
すべてから特定の値を加算または減算して、最適な組み合わせを見つけます
量子化器といくつかの個々の量子化器を少し調整します。
この方法は、FAAC方法と同様の品質を生成し、デフォルトです。
速いです
定数量子化法。
このメソッドは、すべてのバンドに一定の量子化器を設定します。 これはすべての中で最速です
メソッドは、それでも最悪の品質を生み出します。
ac3 と ac3_fixed
AC-3オーディオエンコーダ。
これらのエンコーダは、ATSC A / 52:2010およびETSI TS 102 366の一部、および
文書化されていないRealAudio3(別名dnet)。
この ac3 エンコーダは浮動小数点演算を使用しますが、 ac3_fixed エンコーダは固定のみを使用します-
ポイント整数数学。 これは、XNUMXつが常に高速であることを意味するのではなく、XNUMXつまたは
その他は、特定のシステムにより適している場合があります。 浮動小数点エンコーダは
通常、特定のビットレートでより高品質のオーディオを生成します。 ザ ac3_fixed エンコーダは
任意の出力形式のデフォルトコーデックであるため、を使用して明示的に指定する必要があります
オプション「-acodecac3_fixed」を使用します。
AC-3
AC-3メタデータオプションは、オーディオを説明するパラメータを設定するために使用されますが、ほとんどの場合
ケースはオーディオエンコーディング自体には影響しません。 一部のオプションは、またはに直接影響します
結果のビットストリームのデコードと再生に影響を与えますが、他のビットストリームは
情報提供の目的。 オプションのいくつかは、出力ストリームにビットを追加します。
それ以外の場合はオーディオデータに使用されるため、出力の品質に影響します。 それらの
それに応じて、以下のオプションリストに注記が示されます。
これらのパラメータは、いくつかの公開されているドキュメントで詳細に説明されています。
* <http://www.atsc.org/cms/standards/a_52-2010.pdf>>
* <http://www.atsc.org/cms/standards/a_54a_with_corr_1.pdf>>
* <http://www.dolby.com/uploadedFiles/zz-_Shared_Assets/English_PDFs/Professional/18_Metadata.Guide.pdf>>
* <http://www.dolby.com/uploadedFiles/zz-_Shared_Assets/English_PDFs/Professional/46_DDEncodingGuidelines.pdf>>
メタデータ制御オプション
-フレームごとのメタデータ boolean
フレームごとのメタデータを許可します。 エンコーダーがメタデータの変更をチェックするかどうかを指定します
フレームごとに。
0 初期化時に設定されたメタデータ値は、
ストリーム。 (ディフォルト)
1 各フレームをエンコードする前に、メタデータ値を変更できます。
ダウンミックスレベル
-center_mixlev レベル
センターミックスレベル。 デコーダーがセンターチャネルに適用するゲインの量
ステレオにダウンミキシングするとき。 このフィールドは、次の場合にのみビットストリームに書き込まれます。
センターチャンネルがあります。 値はスケール係数として指定されます。 有効なものは3つあります
値:
0.707
-3dBゲインを適用
0.595
-4.5dBゲインを適用(デフォルト)
0.500
-6dBゲインを適用
-サラウンドミックスレフ レベル
サラウンドミックスレベル。 デコーダーがサラウンドに適用するゲインの量
ステレオにダウンミキシングするときのチャンネル。 このフィールドはビットストリームにのみ書き込まれます
XNUMXつ以上のサラウンドチャネルが存在する場合。 値はスケールとして指定されます
要素。 3つの有効な値があります。
0.707
-3dBゲインを適用
0.500
-6dBゲインを適用(デフォルト)
0.000
沈黙サラウンドチャンネル
オーディオ制作情報
オーディオ制作情報は、ミキシング環境を説明するオプションの情報です。
フィールドのいずれかまたは両方がビットストリームに書き込まれません。
-混合レベル 数
混合レベル。 実稼働環境でのピーク音圧レベル(SPL)を指定します
ミックスがマスターされたとき。 有効な値は80〜111、または不明またはそうでない場合は-1です。
示されています。 デフォルト値は-1ですが、オーディオの場合、この値は使用できません。
プロダクション情報はビットストリームに書き込まれます。 したがって、「room_type」の場合
オプションはデフォルト値ではありません。「mixing_level」オプションは-1であってはなりません。
-部屋の種類 type
部屋のタイプ。 での最終ミキシングセッション中に使用されるイコライゼーションについて説明します
スタジオまたは吹き替えステージ。 広い部屋は業界との吹き替えの舞台です
標準のXカーブ等化; 小さな部屋はフラットイコライゼーションです。 このフィールドは
「mixing_level」オプションと「room_type」の両方がビットストリームに書き込まれない場合
オプションにはデフォルト値があります。
0
示されていない
表示なし(デフォルト)
1
大
ラージルーム
2
小さい
小さな部屋
その他のメタデータオプション
-著作権 boolean
著作権インジケーター。 このオーディオに著作権が存在するかどうかを指定します。
0
OFF 著作権は存在しません(デフォルト)
1
on 著作権が存在する
-ダイヤルノルム 値
ダイアログの正規化。 プログラムの平均対話レベルがどれだけ離れているかを示します
デジタル100%フルスケール(0 dBFS)未満。 このパラメータは、中のレベルシフトを決定します
ダイアログの平均音量をプリセットレベルに設定するオーディオ再生。 ザ
目標は、プログラムソース間でボリュームレベルを一致させることです。 -31dBの値は次のようになります
オーディオ再生中、ソースボリュームに対するボリュームレベルの変更はありません。
有効な値は、-31から-1の範囲の整数で、デフォルトは-31です。
-dsur_mode モード
ドルビーサラウンドモード。 ステレオ信号がドルビーサラウンドを使用するかどうかを指定します(Pro
論理)。 このフィールドは、オーディオストリームが
ステレオ。 このオプションを使用すると、 NOT エンコーダーが実際にドルビーサラウンドを適用することを意味します
処理。
0
示されていない
表示なし(デフォルト)
1
OFF ドルビーサラウンドエンコードではありません
2
on ドルビーサラウンドエンコード
-元の boolean
オリジナルのビットストリームインジケーター。 このオーディオがオリジナルのものかどうかを指定します
ソースであり、コピーではありません。
0
OFF 元のソースではありません
1
on 元のソース(デフォルト)
延長された ビットストリーム 情報
拡張ビットストリームオプションは、で指定されている代替ビットストリーム構文の一部です。
A / 52:2010規格の付録D。 それは2つの部分にグループ化されます。 のいずれかのパラメータの場合
グループが指定されている場合、そのグループ内のすべての値がビットストリームに書き込まれます。 ディフォルト
値は、書き込まれているが指定されていないものに使用されます。 ミキシングする場合
レベルが書き込まれると、デコーダーは、で指定された値の代わりにこれらの値を使用します
代替ビットストリームをサポートする場合は、「center_mixlev」および「surround_mixlev」オプション
構文。
拡張ビットストリーム情報-パート1
-dmix_mode モード
優先ステレオダウンミックスモード。 ユーザーがLt / Rt(ドルビーサラウンド)のいずれかを選択できるようにします
または、優先ステレオダウンミックスモードとしてLo / Ro(通常のステレオ)。
0
示されていない
表示なし(デフォルト)
1
途中
Lt / Rtダウンミックス優先
2
彼らの
Lo / Roダウンミックス優先
-ltrt_cmixlev レベル
Lt / Rtセンターミックスレベル。 デコーダーがセンターに適用するゲインの量
Lt / Rtモードでステレオにダウンミキシングするときのチャンネル。
1.414
+ 3dBゲインを適用
1.189
+ 1.5dBゲインを適用
1.000
0dBゲインを適用
0.841
-1.5dBゲインを適用
0.707
-3.0dBゲインを適用
0.595
-4.5dBゲインを適用(デフォルト)
0.500
-6.0dBゲインを適用
0.000
サイレンスセンターチャンネル
-ltrt_surmixlev レベル
Lt / Rtサラウンドミックスレベル。 デコーダーがサラウンドに適用するゲインの量
Lt / Rtモードでステレオにダウンミキシングするときのチャンネル。
0.841
-1.5dBゲインを適用
0.707
-3.0dBゲインを適用
0.595
-4.5dBゲインを適用
0.500
-6.0dBゲインを適用(デフォルト)
0.000
沈黙サラウンドチャンネル
-loro_cmixlev レベル
Lo / Roセンターミックスレベル。 デコーダーがセンターに適用するゲインの量
Lo / Roモードでステレオにダウンミキシングするときのチャンネル。
1.414
+ 3dBゲインを適用
1.189
+ 1.5dBゲインを適用
1.000
0dBゲインを適用
0.841
-1.5dBゲインを適用
0.707
-3.0dBゲインを適用
0.595
-4.5dBゲインを適用(デフォルト)
0.500
-6.0dBゲインを適用
0.000
サイレンスセンターチャンネル
-loro_surmixlev レベル
Lo / Roサラウンドミックスレベル。 デコーダーがサラウンドに適用するゲインの量
Lo / Roモードでステレオにダウンミキシングするときのチャンネル。
0.841
-1.5dBゲインを適用
0.707
-3.0dBゲインを適用
0.595
-4.5dBゲインを適用
0.500
-6.0dBゲインを適用(デフォルト)
0.000
沈黙サラウンドチャンネル
拡張ビットストリーム情報-パート2
-dsurex_mode モード
ドルビーサラウンドEXモード。 ストリームがドルビーサラウンドEX(7.1
5.1にマトリックス化)。 このオプションを使用すると、 NOT エンコーダが実際に適用されることを意味します
ドルビーサラウンドEX処理。
0
示されていない
表示なし(デフォルト)
1
on ドルビーサラウンドEXオフ
2
OFF ドルビーサラウンドEXオン
-dヘッドフォンモード モード
ドルビーヘッドフォンモード。 ストリームがドルビーヘッドフォンエンコーディングを使用しているかどうかを示します
(ヘッドフォンで使用するために2.0にマトリックス化されたマルチチャンネル)。 このオプションを使用すると、 NOT
エンコーダーが実際にドルビーヘッドフォン処理を適用することを意味します。
0
示されていない
表示なし(デフォルト)
1
on ドルビーヘッドホンオフ
2
OFF ドルビーヘッドホンオン
-ad_conv_type type
A / Dコンバータタイプ。 オーディオがHDCDA / Dを通過したかどうかを示します
変換。
0
標準
標準A / Dコンバータ(デフォルト)
1
hdd
HDCD A / Dコンバーター
その他 AC-3 エンコーディング オプション
-stereo_rematrixing boolean
ステレオリマトリックス。 ステレオ入力の再マトリックス化の使用を有効/無効にします。 これは
左右を選択的にエンコードすることで品質を向上させるオプションのAC-3機能
ミッド/サイドとしてのチャネル。 このオプションはデフォルトで有効になっているため、強くお勧めします
テスト目的を除いて、有効のままにしておくこと。
浮動小数点のみ AC-3 エンコーディング オプション
これらのオプションは浮動小数点エンコーダーにのみ有効であり、
対応する機能が固定で実装されていないため、固定小数点エンコーダ
ポイント。
-channel_カップリング boolean
チャネル結合の使用を有効/無効にします。これは、オプションのAC-3機能です。
複数のチャネルからの高周波情報を組み合わせて品質を向上させる
単一のチャネル。 チャネルごとの高周波情報は、より少ないコストで送信されます
周波数領域と時間領域の両方での精度。 これにより、より多くのビットを使用できます
高周波数を再構築するのに十分な情報を保持しながら、より低い周波数
周波数。 このオプションは、浮動小数点エンコーダーと
テスト目的または増加する場合を除いて、通常は有効のままにしておく必要があります
エンコード速度。
-1
オート
エンコーダーによる選択(デフォルト)
0
OFF チャネル結合を無効にする
1
on チャネル結合を有効にする
-cpl_start_band 数
カップリングスタートバンド。 チャネル結合の開始帯域を1〜15に設定します。値が
使用される帯域幅よりも高い場合、結合端より1つ少なくなります。
バンド。 もしも オート が使用される場合、開始帯域はエンコーダによって決定されます。
ビットレート、サンプルレート、およびチャネルレイアウト。 このオプションは、チャネルの場合は効果がありません
カップリングは無効です。
-1
オート
エンコーダーによる選択(デフォルト)
FLAC
FLAC(無料ロスレスオーディオコーデック)エンコーダー
オプション
以下のオプションはFFmpegのflacエンコーダーでサポートされています。
圧縮レベル
圧縮レベルを設定します。これにより、他の多くのオプションのデフォルトが選択されます。
明示的に設定されていません。
フレームサイズ
チャネルごとのサンプルでフレームのサイズを設定します。
lpc_coeff_precision
LPC係数の精度を設定します。有効な値は1〜15で、デフォルトは15です。
lpc_type
第XNUMX段階のLPCアルゴリズムを設定します
なし
LPCは使用されません
固定の
固定LPC係数
レビンソン
コレスキー
lpc_passes
LPC分析中にコレスキー分解に使用するパスの数
min_partition_order
最小パーティション順序
max_partition_order
最大パーティション順序
予測順序メソッド
推定
2level
4level
8level
サーチ
ブルートフォース検索
ログ
ch_mode
チャンネルモード
オート
モードはフレームごとに自動的に選択されます
独立
シャネルは独立してコーディングされています
左側
右側
ミッドサイド
正確なrice_parameters
米のパラメータを正確に計算するか、おおよそ計算するかを選択します。 1に設定すると、
それらは正確に選択され、コードをわずかに遅くし、圧縮を改善します
ちょっと。
multi_dim_quant
多次元量子化。 1に設定すると、第2段階のLPCアルゴリズムが適用されます
係数を微調整するための最初の段階の後。 これはかなり遅く、わずかに
圧縮を改善します。
リブファック
libfaac AAC(Advanced Audio Coding)エンコーダラッパー。
構成中にlibfaacヘッダーとライブラリーが存在する必要があります。 必要がある
「--enable-libfaac--enable-nonfree」を使用してビルドを明示的に構成します。
このエンコーダは、 ネイティブ
実験的 FFmpegの AAC エンコーダ.
詳細については、次のlibfaacプロジェクトを参照してください。http://www.audiocoding.com/faac.html/>.
オプション
以下の共有FFmpegコーデックオプションが認識されます。
以下のオプションは、libfaacラッパーでサポートされています。 ザ 顔-と同等
オプションは括弧内にリストされています。
b (-b)
ABR(平均ビットレート)モードのビットレートをビット/秒で設定します。 ビットレートがそうでない場合
明示的に指定すると、に応じて適切な値に自動的に設定されます。
選択したプロファイル。 顔 ビットレートはキロビット/秒で表されます。
libfaacはCBR(固定ビットレート)をサポートせず、ABR(平均ビット)のみをサポートすることに注意してください
割合)。
VBRモードが有効になっている場合、このオプションは無視されます。
ar (-R)
オーディオサンプリングレートを設定します(Hz単位)。
ac (-c)
オーディオチャンネルの数を設定します。
カットオフ (-C)
カットオフ周波数を設定します。 指定されていない場合(または明示的に0に設定されている場合)、値を使用します
ライブラリによって自動的に計算されます。 デフォルト値は0です。
プロフィール
オーディオプロファイルを設定します。
次のプロファイルが認識されます。
aac_main
メインAAC(メイン)
aac_low
低複雑度AAC(LC)
aac_ssr
スケーラブルサンプルレート(SSR)
aac_ltp
長期予測(LTP)
指定しない場合は、 aac_low.
フラグ + qscale
一定品質のVBR(可変ビットレート)モードを設定します。
グローバル品質
VBRモードでの品質をラムダ単位の整数として設定します。
VBRモードが「フラグ+ qscale」で有効になっている場合にのみ関連します。 値が変換されます
「FF_QP2LAMBDA」で除算してQP単位に変換し、使用する品質値を設定するために使用します
libfaacによる。 QP単位のオプション値の妥当な範囲は[10-500]で、
値が高いほど、品質が高くなります。
q (-q)
非負の値に設定されている場合はVBRモードを有効にし、一定の品質値を
QP単位の倍精度浮動小数点値。
この値は、libfaacが使用する品質値を設定します。 オプションの妥当な範囲
値が[10-500]の場合、値が高いほど品質が高くなります。
このオプションは、 ffmpeg コマンドラインツール。 ライブラリインターフェース用
ユーザー、使用 グローバル品質.
例
・ 使用する ffmpeg M128A(MP4)コンテナでオーディオファイルをABR 4 kbps AACに変換するには:
ffmpeg -i input.wav -codec:a libfaac -b:a 128k -output.m4a
・ 使用する ffmpeg LTP AACプロファイルを使用して、オーディオファイルをVBR AACに変換するには、次の手順に従います。
ffmpeg -i input.wav -c:a libfaac -profile:a aac_ltp -q:a 100 output.m4a
libfdk_aac
libfdk-aac AAC(Advanced Audio Coding)エンコーダラッパー。
libfdk-aacライブラリは、AndroidプロジェクトのFraunhofer FDKAACコードに基づいています。
構成中にlibfdk-aacヘッダーとライブラリーが存在する必要があります。 あなたが必要です
「--enable-libfdk-aac」を使用してビルドを明示的に構成します。 ライブラリも
GPLと互換性がないため、GPLの使用を許可する場合は、次のように構成する必要があります。
「--enable-gpl--enable-nonfree--enable-libfdk-aac」。
このエンコーダは、両方に関してより高品質であると見なされます ネイティブ
実験的 FFmpegの AAC エンコーダ と リブファック.
VBRエンコーディング、 VBR or フラグ + qscale オプションは、実験的であり、
パラメータのいくつかの組み合わせで動作します。
7.1オーディオのエンコードのサポートは、libfdk-aac0.1.3以降でのみ使用できます。
詳細については、次のfdk-aacプロジェクトを参照してください。
<http://sourceforge.net/p/opencore-amr/fdk-aac/>.
オプション
次のオプションは、共有FFmpegコーデックオプションにマッピングされています。
b ビットレートをビット/秒で設定します。 ビットレートが明示的に指定されていない場合は、
選択したプロファイルに応じて、適切な値に自動的に設定されます。
VBRモードが有効になっている場合、このオプションは無視されます。
ar オーディオサンプリングレートを設定します(Hz単位)。
チャンネル
オーディオチャンネルの数を設定します。
フラグ + qscale
固定品質のVBR(可変ビットレート)モードを有効にします。 VBRは暗黙的に
有効な場合 VBR 値は正です。
カットオフ
カットオフ周波数を設定します。 指定されていない場合(または明示的に0に設定されている場合)、値を使用します
ライブラリによって自動的に計算されます。 デフォルト値は0です。
プロフィール
オーディオプロファイルを設定します。
次のプロファイルが認識されます。
aac_low
低複雑度AAC(LC)
aac_he
高効率AAC(HE-AAC)
aac_he_v2
高効率AACバージョン2(HE-AACv2)
aac_ld
低遅延AAC(LD)
aac_eld
拡張低遅延AAC(ELD)
指定しない場合は、 aac_low.
以下は、libfdk_aacエンコーダーのプライベートオプションです。
アフターバーナー
1に設定するとアフターバーナー機能を有効にし、0に設定すると無効になります。これにより、
品質だけでなく、必要な処理能力。
デフォルト値は1です。
eld_sbr
1に設定されている場合はELDのSBR(Spectral Band Replication)を有効にし、0に設定されている場合は無効にします。
デフォルト値は0です。
シグナル伝達
SBR / PSシグナリングスタイルを設定します。
次のいずれかの値をとることができます。
デフォルト
シグナリングを暗黙的に選択します(デフォルトでは明示的な階層、グローバルの場合は暗黙的)
ヘッダーが無効になっています)
暗黙
暗黙的な下位互換性のあるシグナリング
明示的なsbr
明示的なSBR、暗黙的なPSシグナリング
Explicit_hierarchical
明示的な階層型シグナリング
デフォルト値は デフォルト.
緯度
1に設定されている場合はLATM / LOASカプセル化データを出力し、0に設定されている場合は無効にします。
デフォルト値は0です。
ヘッダー期間
帯域内で送信するためのStreamMuxConfigとPCEの繰り返し期間(フレーム単位)を設定します
LATM / LOASトランスポート層内の構成バッファー。
16ビットの非負の整数である必要があります。
デフォルト値は0です。
VBR VBRモードを1から5に設定します。1は最低品質(それでもかなり良いですが)で、5は最低品質です。
最高品質。 値0はVBRを無効にし、CBR(固定ビットレート)は
有効になりました。
現在のみ aac_low プロファイルはVBRエンコーディングをサポートしています。
VBRモード1〜5は、おおよそ次の平均ビットレートに対応します。
1 32kbps /チャネル
2 40kbps /チャネル
3 48〜56 kbps /チャネル
4 64kbps /チャネル
5 約80-96kbps /チャネル
デフォルト値は0です。
例
・ 使用する ffmpeg M4A(MP4)コンテナでオーディオファイルをVBR AACに変換するには:
ffmpeg -i input.wav -codec:a libfdk_aac -vbr 3 output.m4a
・ 使用する ffmpeg High-Efficiency AACを使用して、オーディオファイルをCBR 64k kbpsAACに変換します
プロフィール:
ffmpeg -i input.wav -c:a libfdk_aac -profile:a aac_he -b:a 64k output.m4a
libmp3lame
LAME(LameはMP3エンコーダーではありません)MP3エンコーダーラッパー。
構成中にlibmp3lameヘッダーとライブラリーが存在する必要があります。 あなたが必要です
「--enable-libmp3lame」を使用してビルドを明示的に構成します。
見る リブシャイン 固定小数点MP3エンコーダーの場合、品質は低くなりますが。
オプション
以下のオプションは、libmp3lameラッパーでサポートされています。 ザ 麻痺-と同等
オプションは括弧内にリストされています。
b (-b)
CBRまたはABRのビットレートをビット/秒で設定します。 LAME「ビットレート」はで表されます
キロビット/秒。
q (-V)
VBRの一定品質設定を設定します。 このオプションは、 ffmpeg
コマンドラインツール。 ライブラリインターフェイスユーザーの場合は、 グローバル品質.
圧縮レベル (-q)
アルゴリズムの品質を設定します。 有効な引数は0〜9の範囲の整数で、0は意味します
最高品質ですが最も遅く、9は最速を意味し、最悪の品質を生み出します。
貯水池
1に設定すると、ビットリザーバーの使用が有効になります。デフォルト値は1です。LAMEではこれが有効になっています
デフォルトですが、使用することでオーバーライドできます --ノレス オプションを選択します。
ステレオを接続 (-m j)
エンコーダーがL / Rステレオまたはミッド/サイドのいずれかを(フレームごとに)使用できるようにします
ステレオ。 デフォルト値は1です。
4月 (--abr)
1に設定すると、エンコーダがABRを使用できるようにします。 麻痺 --abr ターゲットビットレートを設定し、
このオプションはFFmpegにABRを使用するように指示するだけですが、 b ビットレートを設定します。
libopencore-amrnb
OpenCOREアダプティブマルチレートナローバンドエンコーダ。
構成中にlibopencore-amrnbヘッダーとライブラリーが存在する必要があります。
「--enable-libopencore-amrnb」を使用してビルドを明示的に構成する必要があります
--enable-version3 "。
これはモノラルのみのエンコーダーです。 公式には8000Hzのサンプルレートしかサポートしていませんが、
設定して上書きする 厳格な 〜へ 非公式 またはそれ以下。
オプション
b ビットレートをビット/秒で設定します。 以下のビットレートのみがサポートされています。それ以外の場合はサポートされます。
libavcodecは、最も近い有効なビットレートに丸めます。
4750
5150
5900
6700
7400
7950
10200
12200
dtx 1に設定すると、不連続な送信を許可します(コンフォートノイズを生成します)。デフォルト
値は0(無効)です。
リブシャイン
シャイン固定小数点MP3エンコーダラッパー。
シャインは固定小数点MP3エンコーダーです。 なしのプラットフォームではるかに優れたパフォーマンスを発揮します
FPU、たとえばarmel CPU、および一部の電話とタブレット。 しかし、それはよりターゲットにされているので
品質よりもパフォーマンスが高く、LAMEやその他の製品グレードのエンコーダと同等ではありません。
品質面で。 また、プロジェクトのホームページによると、このエンコーダーは無料ではない可能性があります
コードがずっと前に書かれていて、プロジェクトが少なくとも5年間死んでいたので、バグ
年。
このエンコーダーは、ステレオおよびモノラル入力のみをサポートします。 これもCBRのみです。
元のプロジェクト(最終更新日は2007年初頭)は次のとおりです。
<http://sourceforge.net/projects/libshine-fxp/>。 更新されたフォークは、
Savonet / Liquidsoapプロジェクトhttps://github.com/savonet/shine>.
構成中にlibshineヘッダーとライブラリーが存在する必要があります。 あなたが必要です
「--enable-libshine」を使用してビルドを明示的に構成します。
参照 libmp3lame.
オプション
以下のオプションは、libshineラッパーでサポートされています。 The 輝く-と同等
オプションは括弧内にリストされています。
b (-b)
CBRのビットレートをビット/秒で設定します。 輝く -b オプションはで表されます
キロビット/秒。
リブツーラメ
TwoLAMEMP2エンコーダラッパー。
構成中にlibtwolameヘッダーとライブラリーが存在する必要があります。 あなたが必要です
「--enable-libtwolame」を使用してビルドを明示的に構成します。
オプション
以下のオプションは、libtwolameラッパーでサポートされています。 ザ Twolame-同等
オプションはFFmpegのオプションの後に続き、括弧内にあります。
b (-b)
CBRのビットレートをビット/秒で設定します。 Twolame b オプションはキロビット/秒で表されます。
デフォルト値は128kです。
q (-V)
実験的なVBRサポートの品質を設定します。 最大値の範囲は-50〜50で、
有用な範囲は-10から10です。値が高いほど、品質は高くなります。 この
オプションは、 ffmpeg コマンドラインツール。 ライブラリインターフェイスユーザーの場合、
つかいます グローバル品質.
モード (- モード)
結果のオーディオのモードを設定します。 可能な値:
オート
入力に基づいて自動的にモードを選択します。 これがデフォルトです。
ステレオ
ステレオ
ステレオを接続
ステレオを接続
デュアルチャネル
二重チャネル
モノ
Mono
心理モデル (--サイコモード)
エンコーディングで使用する音響心理学モデルを設定します。 引数は次の間の整数でなければなりません
-1と4を含みます。 値が高いほど、品質は高くなります。 デフォルト値
3です。
エネルギーレベル (- エネルギー)
1に設定すると、エネルギーレベルの拡張が有効になります。デフォルト値は0(無効)です。
エラー保護 (- 守る)
1に設定すると、CRCエラー保護を有効にします。デフォルト値は0(無効)です。
著作権 (-著作権)
1に設定されている場合は、MPEGオーディオ著作権フラグを設定します。デフォルト値は0(無効)です。
オリジナル (- オリジナル)
1に設定されている場合は、MPEGオーディオオリジナルフラグを設定します。デフォルト値は0(無効)です。
libvo-acenc
VisualOnAACエンコーダー。
構成中にlibvo-aacencヘッダーとライブラリーが存在する必要があります。 君
「--enable-libvo-aacenc--enable-version3」を使用してビルドを明示的に構成する必要があります。
このエンコーダは、 ネイティブ 実験的 FFmpegの AAC エンコーダ,
複数の情報源によると。
オプション
VisualOn AACエンコーダーは、AAC-LCと最大2チャンネルのエンコードのみをサポートします。 それも
CBRのみ。
b ビットレートをビット/秒で設定します。
libvo-amrwbenc
VisualOnアダプティブマルチレートワイドバンドエンコーダ。
構成中にlibvo-amrwbencヘッダーとライブラリーが存在する必要があります。 君
「--enable-libvo-amrwbenc--enable-version3」を使用してビルドを明示的に構成する必要があります。
これはモノラルのみのエンコーダーです。 公式には16000Hzのサンプルレートしかサポートしていませんが、
設定して上書きする 厳格な 〜へ 非公式 またはそれ以下。
オプション
b ビットレートをビット/秒で設定します。 次のビットレートのみがサポートされています。それ以外の場合はlibavcodec
最も近い有効なビットレートに丸められます。
6600
8850
12650
14250
15850
18250
19850
23050
23850
dtx 1に設定すると、不連続な送信を許可します(コンフォートノイズを生成します)。デフォルト
値は0(無効)です。
リボパス
libopus Opus Interactive AudioCodecエンコーダラッパー。
構成中にlibopusヘッダーとライブラリーが存在する必要があります。 必要がある
「--enable-libopus」を使用してビルドを明示的に構成します。
オプション マッピング
ほとんどのlibopusオプションは、 オプセンク opus-toolsのユーティリティ。 以下
libopusラッパーでサポートされているオプションとその
オプセンク-括弧内は同等です。
b (ビットレート)
ビットレートをビット/秒で設定します。 FFmpegの b オプションはビット/秒で表されますが、 オプセンク's
ビットレート キロビット/秒で。
VBR (VBR, ハードCBR, と CVBR)
VBRモードを設定します。 FFmpeg VBR オプションには、次の有効な引数があります。
オプセンク 括弧内の同等のオプション:
OFF (ハードCBR)
固定ビットレートエンコーディングを使用します。
on (VBR)
可変ビットレートエンコーディング(デフォルト)を使用します。
制約のある (CVBR)
制約付き可変ビットレートエンコーディングを使用します。
圧縮レベル (コンプ)
エンコーディングアルゴリズムの複雑さを設定します。 有効なオプションは、0〜10の範囲の整数です。 0
最高のエンコードを提供しますが品質は低くなりますが、10は最高の品質を提供しますが
最も遅いエンコーディング。 デフォルトは10です。
フレーム期間 (フレームサイズ)
最大フレームサイズ、またはフレームの継続時間をミリ秒単位で設定します。 引数は
正確には次のとおりです。2.5、5、10、20、40、60。フレームサイズが小さいほど、サイズが小さくなります。
レイテンシーはありますが、特定のビットレートでは品質が低下します。 20msを超えるサイズのみ
かなり低いビットレートで興味深い。 デフォルトは20msです。
パケットロス (期待損失)
予想されるパケット損失の割合を設定します。 デフォルトは0です。
(NA)
目的のアプリケーションタイプを設定します。 有効なオプションは次のとおりです。
voipの
音声了解度の向上を優先します。
オーディオ
入力への忠実さを優先します(デフォルト)。
低遅延
最も低い遅延モードのみに制限します。
カットオフ (NA)
カットオフ帯域幅をHzで設定します。 引数は、次のいずれかである必要があります:4000、
6000、8000、12000、または20000、ナローバンド、ミディアムバンド、ワイドバンド、スーパーに対応
それぞれワイドバンド、フルバンド。 デフォルトは0(カットオフは無効)です。
リブヴォルビス
libvorbisエンコーダラッパー。
構成中にlibvorbisencヘッダーとライブラリーが存在する必要があります。 君
「--enable-libvorbis」を使用してビルドを明示的に構成する必要があります。
オプション
以下のオプションは、libvorbisラッパーでサポートされています。 The オジェンク-と同等
オプションは括弧内にリストされています。
libvorbisオプションのより正確で広範なドキュメントを入手するには、
libvorbisencと オジェンクのドキュメント。 見るhttp://xiph.org/vorbis/>,
<http://wiki.xiph.org/Vorbis-tools>、および オジェンクとします。
b (-b)
ABRのビットレートをビット/秒で設定します。 オジェンク -b キロビット/秒で表されます。
q (-q)
VBRの一定品質設定を設定します。 値は、範囲内の浮動小数点数である必要があります
-1.0から10.0の。 値が高いほど、品質は高くなります。 デフォルト値は
3.0.
このオプションは、 ffmpeg コマンドラインツール。 ライブラリインターフェース用
ユーザー、使用 グローバル品質.
カットオフ (--高度なエンコード オプション lowpass_frequency = N)
カットオフ帯域幅をHzで設定します。値を0にすると、カットオフが無効になります。 オジェンクの関連オプションは
kHzで表されます。 デフォルト値は 0 (カットオフは無効)。
最小レート (-m)
ビット/秒で表される最小ビットレートを設定します。 オジェンク -m キロビット/秒で表されます。
最大レート (-M)
ビット/秒で表される最大ビットレートを設定します。 オジェンク -M キロビット/秒で表されます。 この
ABRモードにのみ影響します。
アイブロック (--高度なエンコード オプション インパルスノイズチューン= N)
インパルスブロックのノイズフロアバイアスを設定します。 値は-15.0から-XNUMXまでの浮動小数点数です。
0.0。 負のバイアスは、鮮明さに特別な注意を払うようにエンコーダに指示します
エンコードされたオーディオのトランジェントの。 より良い過渡応答のトレードオフは
より高いビットレート。
libwavpack
libwavpackを介してWavPackエンコーディングを提供するラッパー。
現在、32ビット整数サンプルを使用するロスレスモードのみがサポートされています。
構成中にlibwavpackヘッダーとライブラリーが存在する必要があります。 あなたが必要です
「--enable-libwavpack」を使用してビルドを明示的に構成します。
ユーザーがエンコードできるように、WavPackコーデック用のlibavcodecネイティブエンコーダーが存在することに注意してください
このエンコーダーを使用せずにこのコーデックを使用したオーディオ。 見る ウェーブパック.
オプション
ウェーブパック コマンドラインユーティリティの対応するオプションは、もしあれば括弧内にリストされています。
フレームサイズ (-ブロックサイズ)
デフォルトは32768です。
圧縮レベル
速度と圧縮のトレードオフを設定します。 受け入れ可能な引数を以下に示します。
0 (-f)
高速モード。
1 通常(デフォルト)の設定。
2 (-h)
高品質。
3 (-ああ)
非常に高品質です。
4-8 (-ああ -xEXTRAPROC)
と同じ 3、ただし、追加の処理が有効になっています。
4 と同じです。 -x2 と 8 と同じです。 -x6.
ウェーブパック
WavPackロスレスオーディオエンコーダー。
これはlibavcodecネイティブのWavPackエンコーダーです。 libwavpackに基づくエンコーダーもあります。
しかし、そのエンコーダーを使用する理由は事実上ありません。
参照 libwavpack.
オプション
同等のオプション ウェーブパック コマンドラインユーティリティは括弧内にリストされています。
共有オプション
このエンコーダには、次の共有オプションが有効です。 これに関する特別な注意のみ
特定のエンコーダーについては、ここで説明します。 オプションの一般的な意味については、を参照してください。
コーデック オプション 章.
フレームサイズ (-ブロックサイズ)
このエンコーダーの場合、このオプションの範囲は128〜131072です。デフォルトは
サンプルレートとチャンネル数に基づいて自動的に決定されます。
デフォルトの計算式の完全な式については、を参照してください。 libavcodec / wavpackenc.c.
圧縮レベル (-f, -h, -ああ, と -x)
このオプションの構文は、 libwavpack's。
プライベートオプション
ステレオを接続 (-j)
ジョイントステレオを有効にするかどうかを設定します。 有効な値は次のとおりです。
on (1)
ミッド/サイドオーディオエンコーディングを強制します。
OFF (0)
左/右のオーディオエンコーディングを強制します。
オート
エンコーダに自動的に決定させます。
最適化_モノ
モノラルの最適化を有効にするかどうかを設定します。 このオプションは、
モノストリーム。 利用可能な値:
on 使用可能
OFF 無効
VIDEO エンコーダー
現在利用可能なビデオエンコーダのいくつかの説明は次のとおりです。
jpeg2000
ネイティブのjpeg2000エンコーダはデフォルトで不可逆であり、「-q:v」オプションを使用して設定できます。
エンコーディング品質。 ロスレスエンコーディングは「-pred1」で選択できます。
オプション
形式でアーカイブしたプロジェクトを保存します.
「j2k」または「jp2」(デフォルト)のいずれかに設定できるため、
rgbpix_fmts。
雪
オプション
iterative_dia_size
反復モーションエスティメーションの直径サイズ
リブテオラ
libtheoraTheoraエンコーダラッパー。
構成中にlibtheoraヘッダーとライブラリが存在する必要があります。 あなたが必要です
「--enable-libtheora」を使用してビルドを明示的に構成します。
libtheoraプロジェクトの詳細については、を参照してください。http://www.theora.org/>.
オプション
次のグローバルオプションは、に影響を与える内部libtheoraオプションにマップされています
エンコードされたストリームの品質とビットレート。
b CBR(固定ビットレート)モードのビデオビットレートをビット/秒で設定します。 VBRの場合
(可変ビットレート)モードが有効になっている場合、このオプションは無視されます。
フラグ
を介して一定品質モード(VBR)エンコーディングを有効にするために使用されます qスケール フラグ、および
「pass1」モードと「pass2」モードを有効にします。
g GOPサイズを設定します。
グローバル品質
グローバル品質をラムダ単位の整数として設定します。
VBRモードが「フラグ+ qscale」で有効になっている場合にのみ関連します。 値はに変換されます
QPユニットを「FF_QP2LAMBDA」で除算し、[0〜10]の範囲でクリップしてから、
ネイティブのlibtheora範囲[6.3-0]の値を取得するには、63を掛けます。 より高い値
より高い品質に対応します。
q 非負の値に設定されている場合はVBRモードを有効にし、一定の品質値を
QP単位の倍精度浮動小数点値。
値は[0-10]の範囲でクリップされ、6.3を掛けて次の値を取得します。
ネイティブlibtheoraの範囲[0-63]。
このオプションは、 ffmpeg コマンドラインツール。 ライブラリインターフェース用
ユーザー、使用 グローバル品質.
例
・最大一定品質(VBR)エンコーディングを ffmpeg:
ffmpeg -i INPUT -codec:v libtheora -q:v 10 OUTPUT.ogg
・ 使用する ffmpeg CBR 1000 kbps Theoraビデオストリームを変換するには:
ffmpeg -i INPUT -codec:v libtheora -b:v 1000k OUTPUT.ogg
libvpx
libvpxを介してサポートされるVP8 / VP9形式。
構成中にlibvpxヘッダーとライブラリーが存在する必要があります。 必要がある
「--enable-libvpx」を使用してビルドを明示的に構成します。
オプション
以下のオプションは、libvpxラッパーでサポートされています。 The vpxenc-同等のオプション
または値は、簡単に移行できるように括弧内にリストされています。
ドキュメントの重複を減らすために、プライベートオプションと他のいくつかのオプションのみ
特別な注意が必要な場合は、ここに記載されています。 文書化されていない文書化のために
一般的なオプションについては、を参照してください。 コーデック オプション 章.
libvpxオプションの詳細なドキュメントを入手するには、コマンドを呼び出します ffmpeg -h
エンコーダ= libvpx, ffmpeg -h エンコーダー= libvpx-vp9 or vpxenc - 助けて。 詳細については
libvpxAPIドキュメントで入手できます。
b (ターゲットビットレート)
ビットレートをビット/秒で設定します。 FFmpegの b オプションはビット/秒で表されますが、
vpxenc's ターゲットビットレート キロビット/秒です。
g (kf-最大距離)
keyint_min (kf 最小距離)
qmin (最小q)
qmax (最大q)
バフサイズ (buf-sz, buf-最適化-sz)
レート制御バッファサイズを設定します(ビット単位)。 ノート vpxencのオプションはで指定されています
ミリ秒の場合、libvpxラッパーはこの値を次のように変換します。 "buf-sz = bufsize *
1000 /ビットレート "、" buf-optimal-sz = bufsize * 1000 /ビットレート* 5/6 "。
rc_init_occupancy (buf-initial-sz)
デコードを開始する前にrcバッファにロードする必要のあるビット数を設定します。
注意 vpxencのオプションはミリ秒単位で指定され、libvpxラッパーはこれを変換します
値は次のとおりです: "rc_init_occupancy * 1000 /ビットレート"。
アンダーシュート-pct
ターゲットビットレートのデータレートアンダーシュート(最小)パーセンテージを設定します。
オーバーシュート-pct
ターゲットビットレートのデータレートオーバーシュート(最大)パーセンテージを設定します。
スキップしきい値 (ドロップフレーム)
qcomp (バイアス率)
最大レート (最大セクション割合)
GOPの最大ビットレートをビット/秒で設定します。 ノート vpxencのオプションは、のパーセンテージとして指定されます
ターゲットビットレートの場合、libvpxラッパーはこの値を次のように変換します: "(maxrate * 100
/ビットレート)」。
最小レート (minsection-pct)
GOPの最小ビットレートをビット/秒で設定します。 ノート vpxencのオプションは、のパーセンテージとして指定されます
ターゲットビットレートの場合、libvpxラッパーはこの値を次のように変換します: "(minrate * 100
/ビットレート)」。
minrate、 maxrate、 b end-usage = cbr
"(minrate == maxrate == bitrate)"。
crf (end-usage = cq, cqレベル)
品質、 締め切り (締め切り)
最良
最高品質の期限を使用します。 名前が不十分で非常に遅いため、このオプションは次のようになります。
良いよりも悪い品質の出力を与える可能性があるため、避けてください。
良い
質の高い期限を使用してください。 これは、速度と品質の間の適切なトレードオフです。
で使用される CPU使用済み オプションを選択します。
リアルタイム
リアルタイムの品質期限を使用します。
速度、 CPU使用済み (CPU使用済み)
品質/速度比修飾子を設定します。 値を大きくすると、エンコードが高速化されますが、
品質。
nr (ノイズ感度)
静的しきい値
ブロックに変更しきい値を設定します。このしきい値を下回ると、エンコーダーによってスキップされます。
スライス (トークンパーツ)
FFmpegの スライス オプションはパーティションの総数を示しますが、 vpxenc's
トークンパーツ 「log2(partitions)」として与えられます。
最大レート内
最大Iフレームビットレートをターゲットビットレートのパーセンテージとして設定します。 値0は、
無制限。
フォースキーフレーム
「VPX_EFLAG_FORCE_KF」
代替の 参照 フレーム 関連する
自動代替参照
代替参照フレームの使用を有効にします(2パスのみ)。
arnr-最大フレーム
altrefノイズリダクションの最大フレーム数を設定します。
アームタイプ
altrefノイズリダクションフィルタータイプを設定します:後方、前方、中央。
腕の強さ
altrefノイズリダクションフィルターの強度を設定します。
rc-先読み、 ラグインフレーム (ラグインフレーム)
フレームタイプとレートコントロールを先読みするフレーム数を設定します。
エラー耐性
エラー回復機能を有効にします。
VP9固有 オプション
ロスレスの
ロスレスモードを有効にします。
タイル柱
使用するタイル列の数を設定します。 これは「log2(tile_columns)」として指定されていることに注意してください。 にとって
たとえば、次のように設定すると、8つのタイル列が要求されます。 タイル柱 オプション
3.
タイル列
使用するタイル行数を設定します。 これは「log2(tile_rows)」として指定されていることに注意してください。 にとって
たとえば、次のように設定すると、4つのタイル行が要求されます。 タイル列 2へのオプション。
フレームパラレル
フレーム並列デコード機能を有効にします。
aqモード
適応量子化モードを設定します(0:オフ(デフォルト)、1:分散2:複雑さ、3:
サイクリックリフレッシュ)。
色空間 色空間
入力色空間を設定します。 VP9ビットストリームは、以下のシグナリングをサポートします
カラースペース:
RGB sRGBの
bt709 bt709
不特定 未知の
bt470bg bt601
smpte170m smpte170
smpte240m smpte240
bt2020_ncl bt2020
libvpxの詳細については、以下を参照してください。http://www.webmproject.org/>
リブウェブ
libwebpWebP画像エンコーダラッパー
libwebpは、GoogleのWebP画像用の公式エンコーダーです。 非可逆または非可逆のいずれかでエンコードできます
ロスレスモード。 非可逆画像は、基本的にVP8フレームのラッパーです。 ロスレス画像
Googleによって開発された別のコーデックです。
ピクセル フォーマット
現在、libwebpは、制限により、損失のある場合はYUV420のみをサポートし、損失のない場合はRGBのみをサポートします。
フォーマットとlibwebpの。 Alphaはどちらのモードでもサポートされています。 APIのため
制限、非可逆のエンコード時にRGBが渡される場合、またはエンコードのためにYUVが渡される場合
ロスレスの場合、ピクセル形式はlibwebpの関数を使用して自動的に変換されます。
これは理想的ではなく、便宜上行われるだけです。
オプション
-無損失の boolean
ロスレスモードの使用を有効/無効にします。 デフォルトは0です。
-圧縮レベル 整数
損失のある場合、これは品質と速度のトレードオフです。 値が高いほど、品質が向上します。
エンコード時間が長くなる代わりに、指定されたサイズ。 ロスレスの場合、これはサイズ/速度です
トレード・オフ。 値を大きくすると、エンコード時間が長くなりますが、サイズが小さくなります。 もっと
具体的には、使用する追加のアルゴリズムと圧縮ツールの数を制御します。
これらのツールの組み合わせを変えます。 これはにマップされます 方法 libwebpのオプション。
有効な範囲は0〜6です。デフォルトは4です。
-qscale フロート
非可逆エンコーディングの場合、これは画質を0〜100に制御します。可逆エンコーディングの場合、これは
より多くの圧縮に費やされる労力と時間を制御します。 デフォルト値は75です。注
libavcodecを介して使用する場合、このオプションは呼び出されます グローバル品質 とする必要があります
を乗じた FF_QP2ラムダ.
-プリセット type
構成プリセット。 これは、一般的なタイプに基づいていくつかの自動設定を行います
画像。
なし
プリセットは使用しないでください。
デフォルト
エンコーダのデフォルトを使用します。
画像
ポートレート、インナーショットなどのデジタル画像
写真
自然光が差し込む屋外写真
描画
コントラストの高いディテールを備えた手描きまたは線画
アイコンを押します。
小さいサイズのカラフルな画像
클라우드 기반 AI/ML및 고성능 컴퓨팅을 통한 디지털 트윈의 기초 – Edward Hsu, Rescale CPO 많은 엔지니어링 중심 기업에게 클라우드는 R&D디지털 전환의 첫 단계일 뿐입니다. 클라우드 자원을 활용해 엔지니어링 팀의 제약을 해결하는 단계를 넘어, 시뮬레이션 운영을 통합하고 최적화하며, 궁극적으로는 모델 기반의 협업과 의사 결정을 지원하여 신제품을 결정할 때 데이터 기반 엔지니어링을 적용하고자 합니다. Rescale은 이러한 혁신을 돕기 위해 컴퓨팅 추천 엔진, 통합 데이터 패브릭, 메타데이터 관리 등을 개발하고 있습니다. 이번 자리를 빌려 비즈니스 경쟁력 제고를 위한 디지털 트윈 및 디지털 스레드 전략 개발 방법에 대한 인사이트를 나누고자 합니다.
テキストのような
libx264、 libx264rgb
x264 H.264 / MPEG-4AVCエンコーダラッパー。
このエンコーダーは、中にlibx264ヘッダーとライブラリーの存在を必要とします
構成。 「--enable-libx264」を使用してビルドを明示的に構成する必要があります。
libx264は、8x8および4x4アダプティブスペーシャルを含む印象的な数の機能をサポートします
変換、適応Bフレーム配置、CAVLC / CABACエントロピーコーディング、インターレース(MBAFF)、
ロスレスモード、詳細保持のためのpsy最適化(適応量子化、psy-RD、psy-
トレリス)。
多くのlibx264エンコーダオプションはFFmpegグローバルコーデックオプションにマッピングされていますが、
エンコーダオプションは、プライベートオプションを通じて提供されます。 さらに、 x264opts と
x264-パラメータ プライベートオプションを使用すると、によって受け入れられたkey = valueタプルのリストを渡すことができます。
libx264「x264_param_parse」関数。
x264プロジェクトのWebサイトは次のとおりです。http://www.videolan.org/developers/x264.html>.
libx264rgbエンコーダーはlibx264と同じですが、パックされたRGBピクセル形式を受け入れる点が異なります。
YUVの代わりに入力として。
サポート ピクセル フォーマット
x264は、8〜10ビットの色空間をサポートします。 正確なビット深度はx264で制御されます
時間を設定します。 FFmpegは、XNUMXつの特定のビルドでXNUMXビット深度のみをサポートします。 その他
つまり、x264の複数のバージョンでXNUMXつのFFmpegを構築することはできません
異なるビット深度。
オプション
以下のオプションは、libx264ラッパーでサポートされています。 ザ x264-同等のオプションまたは
簡単に移行できるように、値は括弧内にリストされています。
ドキュメントの重複を減らすために、プライベートオプションと他のいくつかのオプションのみ
特別な注意が必要な場合は、ここに記載されています。 文書化されていない文書化のために
一般的なオプションについては、を参照してください。 コーデック オプション 章.
libx264オプションのより正確で広範なドキュメントを入手するには、
command x264 -フルヘルプ または、libx264のドキュメントを参照してください。
b (ビットレート)
ビットレートをビット/秒で設定します。 FFmpegの b オプションはビット/秒で表されますが、
x264's ビットレート キロビット/秒です。
bf (Bフレーム)
g (キーイント)
qmin (qpmin)
最小量子化器スケール。
qmax (qpmax)
最大量子化器スケール。
クディフ (qpステップ)
量子化器スケール間の最大差。
クブラー (クブラー)
量子化曲線のぼけ
qcomp (qcomp)
量子化曲線の圧縮率
ヒント (参照)
各Pフレームが使用できる参照フレームの数。 範囲はからです 0-16.
sc_threshold (シーンカット)
シーンチェンジ検出のしきい値を設定します。
トレリス (トレリス)
トレリス量子化を実行して効率を高めます。 デフォルトで有効になっています。
nr (nr)
私_範囲 (メランジュ)
モーション検索の最大範囲(ピクセル単位)。
私_メソッド (me)
モーションエスティメーション方式を設定します。 速度の降順で可能な値:
日 (日)
epz (日)
半径1(最速)のダイヤモンド検索。 epz のエイリアスです 日.
16進法 (16進法)
半径2の六角形検索。
うーん (うーん)
不均一なマルチヘキサゴン検索。
ESA (ESA)
徹底的な検索。
つば (つば)
アダマール全数検索(最も遅い)。
サブク (サブメ)
サブピクセルモーションエスティメーション法。
b_戦略 (b-適応)
適応型Bフレーム配置決定アルゴリズム。 ファーストパスでのみ使用してください。
keyint_min (min-keyint)
最小GOPサイズ。
コーダー
エントロピーエンコーダーを設定します。 可能な値:
ac CABACを有効にします。
VLC CAVLCを有効にし、CABACを無効にします。 それはと同じ効果を生成します x264's --キャバックなし
オプションを選択します。
CMP フルピクセルモーションエスティメーション比較アルゴリズムを設定します。 可能な値:
彩度
モーションエスティメーションでクロマを有効にします。
悲しい モーションエスティメーションではクロマを無視します。 それはと同じ効果を生成します x264's
--no-chroma-me オプションを選択します。
スレッド (スレッド)
エンコーディングスレッドの数。
スレッドの種類
マルチスレッド技術を設定します。 可能な値:
スライス
スライスベースのマルチスレッド。 それはと同じ効果を生成します x264's
-スライスされたスレッド オプションを選択します。
フレーム
フレームベースのマルチスレッド。
フラグ
エンコーディングフラグを設定します。 クローズドGOPを無効にし、オープンGOPを有効にするために使用できます。
「-cgop」に設定します。 結果はの動作に似ています x264's --オープンゴップ
オプションを選択します。
rc_init_occupancy (vbv-init)
プリセット (プリセット)
エンコーディングプリセットを設定します。
曲 (曲)
エンコーディングパラメータの調整を設定します。
プロフィール (プロフィール)
プロファイル制限を設定します。
ファーストパス
1に設定すると、最初のパスをエンコードするときに高速設定を有効にします。0に設定すると、次のようになります。
の同じ効果 x264's --slow-firstpass オプションを選択します。
crf (crf)
定品質モードの品質を設定します。
crf_max (crf-max)
CRFモードで、VBVがこのポイントを超えて品質を低下させないようにします。
qp (qp)
一定の量子化率制御方式パラメータを設定します。
aqモード (aqモード)
AQメソッドを設定します。 可能な値:
なし (0)
無効です。
分散 (1)
分散AQ(複雑さマスク)。
自己共分散 (2)
自動分散AQ(実験的)。
アクア強度 (アクア強度)
AQ強度を設定し、平坦なテクスチャ領域でのブロッキングとぼやけを減らします。
PSY 1に設定すると、心理視覚的最適化を使用します。0に設定すると、と同じ効果があります。
x264's --ノーサイ オプションを選択します。
サイード (サイード)
心理視覚的最適化の強さを設定します。 サイード:psy-トレリス 形式でダウンロードすることができます。
rc-先読み (rc-先読み)
フレームタイプとレートコントロールを先読みするフレーム数を設定します。
重量b
1に設定すると、Bフレームの加重予測を有効にします。0に設定すると、同じになります。
としての効果 x264's --ウェイトなしb オプションを選択します。
重量p (重量p)
Pフレームの加重予測方法を設定します。 可能な値:
なし (0)
身体障がい者
シンプルな (1)
加重参照のみを有効にする
スマート (2)
加重参照と重複の両方を有効にする
シム (シム)
エンコード後にSSIM統計の計算と印刷を有効にします。
イントラリフレッシュ (イントラリフレッシュ)
1に設定すると、IDRフレームの代わりに定期的なイントラリフレッシュの使用を有効にします。
アシントラ級 (class)
AVC-Intraを生成するようにエンコーダーを構成します。 有効な値は50,100、200、およびXNUMXです。
ブルーレイコンパット (ブルーレイコンパット)
ブルーレイ規格と互換性があるようにエンコーダーを構成します。 速記です
「bluray-compat = 1force-cfr = 1」を設定します。
b-バイアス (b-バイアス)
Bフレームの使用頻度に影響を与えます。
b-ピラミッド (b-ピラミッド)
一部のBフレームを参照として保持する方法を設定します。 可能な値:
なし (なし)
無効です。
厳格な (厳格な)
厳密に階層化されたピラミッド。
通常の (通常の)
非厳密(Blu-ray互換ではありません)。
混合-refs
パーティションごとにXNUMXつの参照ではなく、パーティションごとにXNUMXつの参照の使用を有効にします
1に設定するとマクロブロック。0に設定すると、と同じ効果があります。 x264's
--no-mixed-refs オプションを選択します。
8x8dct
8に設定すると、適応空間変換(ハイプロファイル8x1変換)を有効にします。設定すると
0にすると、と同じ効果があります x264's --no-8x8dct オプションを選択します。
高速 pskip
1に設定すると、Pフレームでの早期SKIP検出を有効にします。0に設定すると、同じになります。
としての効果 x264's --no-fast-pskip オプションを選択します。
AUD (AUD)
1に設定すると、アクセスユニットの区切り文字の使用が有効になります。
mbツリー
1に設定すると、マクロブロックツリーのレート制御の使用を有効にします。0に設定すると、同じになります。
としての効果 x264's --no-mbtree オプションを選択します。
ブロックを解除する (ブロックを解除する)
ループフィルタパラメータを設定します。 アルファ:ベータ フォーム。
cplxブラー (cplxブラー)
QPの変動低減を設定します(曲線圧縮前)。
パーティション (パーティション)
のコンマ区切りリストと見なすパーティションを設定します。 リストで可能な値:
p8x8
8x8Pフレームパーティション。
p4x4
4x4Pフレームパーティション。
b8x8
4x4Bフレームパーティション。
i8x8
8x8Iフレームパーティション。
i4x4
4x4Iフレームパーティション。 (有効化 p4x4 必要 p8x8 有効にします。 有効化 i8x8
適応空間変換が必要です(8x8dct オプション)有効にします。)
なし (なし)
パーティションは考慮しないでください。
を (を)
すべてのパーティションを検討してください。
直接pred (直接)
直接MV予測モードを設定します。 可能な値:
なし (なし)
MV予測を無効にします。
空間的な (空間的な)
空間予測を有効にします。
一時的な (一時的な)
時間的予測を有効にします。
オート (オート)
自動的に決定されます。
スライス-最大サイズ (スライス-最大サイズ)
各スライスのサイズの制限をバイト単位で設定します。 指定されていないがRTPペイロードの場合
サイズ(ps)が指定され、それが使用されます。
統計情報 (統計情報)
マルチパス統計のファイル名を設定します。
ナルハード (ナルハード)
信号HRD情報を設定します(必須 vbv-bufsize 設定する)。 可能な値:
なし (なし)
HRD情報シグナリングを無効にします。
VBR (VBR)
可変ビットレート。
CBR (CBR)
固定ビットレート(MP4コンテナでは許可されていません)。
x264opts (NA)
x264オプションを設定します。を参照してください。 x264 --フルヘルプ リスト用。
引数はのリストです キー=値 「:」で区切られたカップル。 の filter と サイード オプション
区切り文字として「:」を使用する場合は、代わりに「、」を使用してください。 以来、彼らもそれを受け入れます
ずっと前ですが、これは何らかの理由で文書化されていません。
たとえば、libx264エンコーディングオプションを指定するには ffmpeg:
ffmpeg -i foo.mpg -vcodec libx264 -x264opts keyint = 123:min-keyint = 20 -an out.mkv
x264-パラメータ (NA)
key = valueパラメーターの:-区切りリストを使用して、x264構成をオーバーライドします。
このオプションは、機能的には x264opts、ただし、
Libavフォークとの互換性。
たとえば、libx264エンコーディングオプションを指定するには ffmpeg:
ffmpeg -i INPUT -c:v libx264 -x264-params level = 30:bframes = 0:weightp = 0:\
cabac = 0:ref = 1:vbv-maxrate = 768:vbv-bufsize = 2000:analyse = all:me = umh:\
no-fast-pskip=1:subq=6:8x8dct=0:trellis=0 OUTPUT
一般的な使用法のためのエンコーディングffpresetsが提供されているため、一般的な使用法で使用できます。
プリセットシステム(例: プレ オプション)。
libx265
x265 H.265 / HEVCエンコーダラッパー。
このエンコーダーは、中にlibx265ヘッダーとライブラリーの存在を必要とします
構成。 ビルドを明示的に構成する必要があります --enable-libx265.
オプション
プリセット
x265プリセットを設定します。
曲
x265tuneパラメーターを設定します。
x265-パラメータ
次のリストを使用してx265オプションを設定します キー=値 「:」で区切られたカップル。 見る x265 - 助けて
オプションのリストについては。
たとえば、libx265エンコーディングオプションを指定するには -x265-params:
ffmpeg -i input -c:v libx265 -x265-params crf = 26:psy-rd = 1 output.mp4
libxvid
Xvid MPEG-4 Part2エンコーダラッパー。
このエンコーダーは、中にlibxvidcoreヘッダーとライブラリーの存在を必要とします
構成。 「--enable-libxvid」を使用してビルドを明示的に構成する必要があります
--enable-gpl "。
ネイティブの「mpeg4」エンコーダーはMPEG-4パート2形式をサポートしているため、ユーザーはこれにエンコードできます
このライブラリなしのフォーマット。
オプション
以下のオプションは、libxvidラッパーでサポートされています。 次のオプションのいくつか
リストされていますが、文書化されておらず、共有コーデックオプションに対応しています。 見る コーデック
オプション 章 彼らのドキュメントのために。 リストされていない他の共有オプション
libxvidエンコーダーには影響しません。
b
g
qmin
qmax
mpeg_quant
スレッド
bf
b_qfactor
b_qoffset
フラグ
特定のエンコーディングフラグを設定します。 可能な値:
mv4 マクロブロックによるXNUMXつの動きベクトルを使用します。
アイック 高品質のAC予測を有効にします。
グレー
グレースケールのみをエンコードします。
GMC グローバルモーション補正(GMC)の使用を有効にします。
クペル
XNUMX/XNUMXピクセル動き補償を有効にします。
cgop
クローズドGOPを有効にします。
グローバルヘッダー
すべてのキーフレームではなく、extradataにグローバルヘッダーを配置します。
トレリス
私_メソッド
モーションエスティメーション方式を設定します。 速度の降順で可能な値
品質の昇順:
ゼロ
モーションエスティメーションを使用しない(デフォルト)。
フード
x1
ログ 16x16ブロックとハーフピクセルリファインメントの高度なダイヤモンドゾーン検索を有効にします
16x16ブロックの場合。 x1 と ログ のエイリアスです フード.
epz
上記のすべてに加えて、高度なダイヤモンドゾーン検索を有効にします
8x8ブロック、8x8ブロックのハーフピクセルリファインメント、およびクロマのモーションエスティメーション
飛行機。
フル
上記のすべてに加えて、拡張された16x16および8x8ブロックを有効にします
検索。
MBD マクロブロック決定アルゴリズムを設定します。 品質の昇順で可能な値:
シンプルな
マクロブロック比較関数アルゴリズムを使用します(デフォルト)。
ビット
16x16のレート歪みベースのハーフピクセルおよびクォーターピクセルの改良を有効にします
ブロック。
rd 上記のすべてに加えて、レート歪みベースのハーフピクセルを有効にします
8x8ブロックのXNUMX/XNUMXピクセルの改良、およびレート歪みベースの検索
正方形のパターンを使用します。
ルミアク
1に設定すると、ルミマスキング適応量子化を有効にします。デフォルトは0(無効)です。
分散_aq
1に設定すると、分散適応量子化を有効にします。デフォルトは0(無効)です。
と組み合わせると ルミアク、結果として得られる品質は、
XNUMXつは個別に指定されます。 言い換えれば、結果として得られる品質は悪化します
XNUMXつの効果のうちのXNUMXつ。
シム
構造的類似性(SSIM)の表示方法を設定します。 可能な値:
OFF SSIM情報の表示を無効にします。
平均 エンコード終了時の平均SSIMをstdoutに出力します。 表示の形式
平均的なSSIMは次のとおりです。
平均SSIM:%f
Cに精通していないユーザーの場合、%fは浮動小数点数または小数を意味します(例:
0.939232)。
フレーム
エンコード中のフレームごとのSSIMデータと最後の平均SSIMの両方を出力します
stdoutへのエンコード。 フレームごとの情報の形式は次のとおりです。
SSIM:平均:%1.3f最小:%1.3f最大:%1.3f
Cに慣れていないユーザーの場合、%1.3fは3に丸められた浮動小数点数を意味します
ドットの後の数字(例:0.932)。
ssim_acc
SSIMの精度を設定します。 有効なオプションは0〜4の範囲の整数ですが、0は
最も正確な結果と4が最も速く計算します。
mpeg2
MPEG-2ビデオエンコーダ。
オプション
seq_disp_ext 整数
エンコーダーがsequence_display_extensionを出力に書き込むかどうかを指定します。
-1
オート
書き込むかどうかを自動的に決定します(これがデフォルトです)。
書き込まれるデータは、デフォルト値または指定されていない値とは異なります。
0
決して
絶対に書かないでください。
1
常に
常に書いてください。
PNG
PNG画像エンコーダ。
プライベート オプション
解像度 整数
ピクセルの物理密度をインチあたりのドット数で設定します。デフォルトでは設定されていません
dpm 整数
ピクセルの物理密度をメートルあたりのドット数で設定します。デフォルトでは設定されていません
ProRes
AppleProResエンコーダ。
FFmpegには、prores-awエンコーダーとprores-ksエンコーダーの2つのProResエンコーダーが含まれています。 使用したエンコーダー
「-vcodec」オプションで選択できます。
プライベート オプション for プロレス-KS
プロフィール 整数
エンコードするProResプロファイルを選択します
代理
lt
標準
hq
4444
quant_mat 整数
量子化行列を選択します。
オート
デフォルト
代理
lt
標準
hq
に設定した場合 オート、プロファイルに一致するマトリックスが選択されます。 設定されていない場合、
最高品質を提供するマトリックス、 デフォルト、が選択されます。
bits_per_mb 整数
200つのマクロブロックをコーディングするために割り当てるビット数。 異なるプロファイルはXNUMXの間で使用します
マクロブロックあたり2400ビット、最大は8000です。
mbs_per_slice 整数
各スライスのマクロブロックの数(1〜8)。 デフォルト値(8)は、
ほとんどすべての状況。
ベンダー string
4バイトのベンダーIDをオーバーライドします。 次のようなカスタムベンダーID apl0 ストリームを要求します
Appleエンコーダーによって作成されました。
アルファビット 整数
アルファ成分のビット数を指定します。 可能な値は次のとおりです 0, 8 と 16。 使用 0
アルファ平面コーディングを無効にします。
速度 検討事項
デフォルトの動作モードでは、エンコーダはフレームの制約を尊重する必要があります(つまり、
要求よりも大きいサイズのフレームを作成します)出力画像を良好な状態に保ちます
できるだけ。 細かい部分がたくさん含まれているフレームは圧縮が難しく、
エンコーダーは、各スライスに適切な量子化器を検索するためにより多くの時間を費やします。
より高く設定する bits_per_mb 制限は速度を向上させます。
最速のエンコード速度を得るには、 qスケール パラメータ(4が推奨値)および
サイズ制約を設定しないでください。
リブクヴァザール
Kvazaar H.265 / HEVCエンコーダー。
構成中にlibkvazaarヘッダーとライブラリーが存在する必要があります。 あなたが必要です
ビルドを明示的に構成するには --enable-libkvazaar.
オプション
b ターゲットビデオのビットレートをビット/秒で設定し、レート制御を有効にします。
スレッド
エンコーディングスレッドの数を設定します。
クバザールパラメータ
kvazaarパラメータをのリストとして設定します 名=値 カンマ(、)で区切られたペア。 見る
オプションのリストについては、kvazaarのドキュメントを参照してください。
字幕 エンコーダー
DVDサブ
このコーデックは、DVDで使用されるビットマップ字幕形式をエンコードします。 通常、それらは
VOBSUBファイルペア(* .idx + * .sub)に保存され、Matroskaファイルでも使用できます。
オプション
偶数行修正
1に設定すると、すべてのピクセル行数が均等になる回避策を有効にします
字幕。 これにより、下の行を切り落とす一部のプレーヤーの問題が修正されます。
数が奇数です。 回避策は、必要に応じて完全に透明な行を追加するだけです。 ザ
オーバーヘッドは低く、通常、平均して字幕ごとにXNUMXバイトです。
デフォルトでは、この回避策は無効になっています。
ビットストリーム FILTERS
FFmpegビルドを構成すると、サポートされているすべてのビットストリームフィルターが有効になります。
ディフォルト。 構成オプション「--list-bsfs」を使用して、使用可能なすべてのものをリストできます。
構成オプション「--disable-bsfs」を使用して、すべてのビットストリームフィルターを無効にできます。
オプション「--enable-bsf = BSF」を使用してビットストリームフィルターを選択的に有効にするか、次のことができます
オプション「--disable-bsf = BSF」を使用して、特定のビットストリームフィルターを無効にします。
ff *ツールのオプション「-bsfs」は、サポートされているすべてのビットストリームのリストを表示します
ビルドに含まれるフィルター。
ff *ツールには、ストリームごとに適用される-bsfオプションがあり、カンマ区切りのリストを取得します。
フィルタ。そのパラメータは、「=」の後のフィルタ名の後に続きます。
ffmpeg -i INPUT -c:v copy -bsf:v filter1 [= opt1 = str1 / opt2 = str2] [、filter2] OUTPUT
以下は、現在利用可能なビットストリームフィルターの説明です。
パラメータ(ある場合)。
aac_adtstoasc
MPEG-2 / 4 AACADTSをMPEG-4オーディオ固有の構成ビットストリームフィルターに変換します。
このフィルタは、MPEG-4 / 2ADTSヘッダーからMPEG-4AudioSpecificConfigを作成し、削除します
ADTSヘッダー。
これは、たとえば、AACストリームを生のADTSAACコンテナから
FLVまたはMOV / MP4ファイル。
ムシャムシャ食べる
パケットの終わりにあるゼロパディングを削除します。
ダンプ_エクストラ
フィルタリングされたパケットの先頭にextradataを追加します。
追加の引数は、フィルタリングするパケットを指定します。 それは受け入れます
値:
a すべてのキーパケットにextradataを追加しますが、 ローカルヘッダー は、 フラグ2 コーデック
コンテキストフィールド
k すべてのキーパケットにextradataを追加します
e すべてのパケットにextradataを追加します
指定されていない場合、それが想定されます k.
たとえば、次のように ffmpeg コマンドはグローバルヘッダーを強制します(したがって、個人を無効にします
「libx264」エンコーダーによって生成されたH.264パケットのパケットヘッダー)が、それらを修正します
extradataに格納されているヘッダーをキーパケットに追加することにより、次のようになります。
ffmpeg -i INPUT -map 0 -flags:v + global_header -c:v libx264 -bsf:v dump_extra out.ts
h264_mp4toannexb
H.264ビットストリームを長さプレフィックスモードから開始コードプレフィックスモードに変換します(
ITU-TH.264仕様の付録Bで定義されています)。
これは、一部のストリーミング形式、通常はMPEG-2トランスポートストリーム形式で必要です。
(「mpegts」)。
たとえば、H.4ストリームを含むMP264ファイルをmpegts形式にリマックスするには ffmpeg,
次のコマンドを使用できます。
ffmpeg -i INPUT.mp4 -codec copy -bsf:v h264_mp4toannexb OUTPUT.ts
imxdump
MOVに収まり、Final CutProデコーダで使用できるようにビットストリームを変更します。 この
フィルタはmpeg2videoコーデックにのみ適用され、Final Cut Pro7には必要ない可能性があります。
適切な新しい -タグ:v.
たとえば、30MB /秒のNTSCIMXをMOVにリマックスするには、次のようにします。
ffmpeg -i input.mxf -c copy -bsf:v imxdump -tag:v mx3n output.mov
mjpeg2jpeg
MJPEG / AVI1パケットを完全なJPEG / JFIFパケットに変換します。
MJPEGは、各ビデオフレームが本質的にJPEG画像であるビデオコーデックです。 The
個々のフレームは、たとえば次の方法で損失なく抽出できます。
ffmpeg -i ../some_mjpeg.avi -c:v copy frame_%d.jpg
残念ながら、これらのチャンクはDHTセグメントがないため、不完全なJPEG画像です。
デコードに必要です。 からの引用
<http://www.digitalpreservation.gov/formats/fdd/fdd000063.shtml>:
2001年にrec.video.desktopニュースグループに書いたエイブリー・リーは、「MJPEG、または
少なくともMJPGfourccを持つAVIのMJPEGは、固定された制限付きJPEGです-そして
*省略*-ハフマンテーブル。 JPEGはYCbCr色空間である必要があり、4:2:2である必要があります。
算術またはプログレッシブではなく、基本的なハフマン符号化を使用する必要があります。 。 。 。 あなたは確かにすることができます
MJPEGフレームを抽出し、通常のJPEGデコーダーでデコードしますが、
それらの前にDHTセグメントを追加します。そうしないと、デコーダーは解凍する方法がわかりません。
データ。 必要な正確な表は、OpenDML仕様に記載されています。」
このビットストリームフィルターは、MJPEGストリームから抽出されたフレームのヘッダーにパッチを適用します
(AVI1ヘッダーIDを持ち、DHTセグメントがない)完全に修飾されたJPEGを生成する
画像。
ffmpeg -i mjpeg-movie.avi -c:v copy -bsf:v mjpeg2jpeg frame_%d.jpg
exiftran -i -9 frame * .jpg
ffmpeg -i frame_%d.jpg -c:v copyrotated.avi
mjpega_dump_header
モブサブ
mp3_header_decompress
mpeg4_unpack_bframes
DivXスタイルのパックされたBフレームを解凍します。
DivXスタイルのパックされたBフレームは有効なMPEG-4ではなく、壊れたものの回避策にすぎませんでした
Windowsサブシステムのビデオ。 彼らはより多くのスペースを使用し、マイナーなAV同期の問題を引き起こす可能性があり、
デコードするCPUパワーが増える(プレーヤーに補正するためのデコードされた画像キューがない場合)
パケットスタイルごとに2,0,2,0フレーム)、標準のコンテナにコピーすると問題が発生します
mp4やmpeg-ps / tsのように、MPEG-4デコーダーはそれらをデコードできない可能性があるためです。
有効なMPEG-4ではありません。
たとえば、DivXスタイルのパックされたBフレームを持つMPEG-4ストリームを含むAVIファイルを修正するには
ffmpeg、次のコマンドを使用できます。
ffmpeg -i INPUT.avi -codec copy -bsf:v mpeg4_unpack_bframes OUTPUT.avi
ノイズ
コンテナを損傷することなく、パケットの内容を損傷します。 ファジングまたは
エラーの回復力/隠蔽性のテスト。
パラメータ:数値文字列。その値は、出力バイトの頻度に関連しています。
変更されました。 したがって、0以下の値は禁止されており、値が小さいほど多くなります。
頻繁なバイトが変更されます。1はすべてのバイトが変更されることを意味します。
ffmpeg -i INPUT -c copy -bsf noise [= 1] output.mkv
すべてのバイトに変更を適用します。
追加の削除
FORMAT OPTIONS
libavformatライブラリは、すべての
マルチプレクサとデマルチプレクサ。 さらに、各マルチプレクサまたはデマルチプレクサは、いわゆるプライベートをサポートする場合があります
そのコンポーネントに固有のオプション。
オプションは、-を指定して設定できます。オプション 値 FFmpegツールで、またはを設定することによって
「AVFormatContext」オプションで明示的に値を指定するか、 libavutil / opt.h のAPI
プログラムによる使用。
サポートされているオプションのリストは次のとおりです。
アビオフラグ フラグ (入出力)
可能な値:
直接
バッファリングを減らします。
プローブサイズ 整数 ( )
プローブサイズをバイト単位で設定します。つまり、ストリームを取得するために分析するデータのサイズです。
情報。 値を大きくすると、より多くの情報を検出できるようになります。
ストリームに分散されますが、遅延が増加します。 整数以上である必要があります
32よりも大きい。デフォルトでは5000000です。
パケットサイズ 整数 (出力)
パケットサイズを設定します。
フラグ フラグ (入出力)
フォーマットフラグを設定します。
可能な値:
イグニド
インデックスを無視します。
ファストシーク
一部のフォーマットでは、高速ですが不正確なシークを有効にします。
ジェントス
PTSを生成します。
ノフィリン
正確に計算できる欠落値を入力しないでください。
パースなし
AVParsersを無効にします。これにも「+ nofillin」が必要です。
無視する
DTSを無視します。
破損した破棄
破損したフレームを破棄します。
並べ替え
DTSによって出力パケットをインターリーブしてみてください。
キープサイド
サイドデータをマージしないでください。
緯度
RTPMP4A-LATMペイロードを有効にします。
ノーバッファ
オプションのバッファリングによって導入されるレイテンシを削減します
ビット正確
プラットフォーム、ビルド、および時間に依存しないデータのみを書き込みます。 これにより、ファイルが確実になります
データチェックサムは再現可能であり、プラットフォーム間で一致します。 その主な用途
回帰テスト用です。
シーク2 整数 ( )
1に設定されている場合、サポートされている場合、デマルチプレクサレベルで非キーフレームをシークできるようにします。デフォルト
0です。
分析された 整数 ( )
入力をプローブするために分析されるマイクロ秒数を指定します。 より高い値は
より正確な情報の検出を可能にしますが、待ち時間が長くなります。 デフォルトは
5,000,000マイクロ秒= 5秒。
クリプトキー 16進数 string ( )
復号化キーを設定します。
インデックスメモリ 整数 ( )
タイムスタンプインデックスに使用される最大メモリを設定します(ストリームごと)。
rtbufsize 整数 ( )
リアルタイムフレームのバッファリングに使用する最大メモリを設定します。
fdebug フラグ (入出力)
特定のデバッグ情報を出力します。
可能な値:
ts
最大遅延 整数 (入出力)
最大マルチプレクサまたはデマルチプレクサ遅延をマイクロ秒単位で設定します。
fpsプローブサイズ 整数 ( )
fpsのプローブに使用するフレーム数を設定します。
audio_preload 整数 (出力)
オーディオパケットを早期にインターリーブするマイクロ秒を設定します。
チャンクデュレーション 整数 (出力)
各チャンクにマイクロ秒を設定します。
チャンクサイズ 整数 (出力)
各チャンクのサイズをバイト単位で設定します。
err_detect、 f_err_detect フラグ ( )
エラー検出フラグを設定します。 「f_err_detect」は非推奨であり、経由でのみ使用する必要があります
ffmpeg ツール。
可能な値:
crccheck
埋め込まれたCRCを確認します。
ビットストリーム
ビットストリーム仕様の逸脱を検出します。
バッファ
不適切なビットストリーム長を検出します。
爆発する
マイナーエラー検出でデコードを中止します。
注意深い
仕様に違反し、実際には見られていないものを
エラーが。
準拠した
すべての仕様の非準拠をエラーと見なします。
積極的な
正常なエンコーダーがエラーとして実行してはならないことを考慮してください。
max_interleave_delta 整数 (出力)
インターリーブの最大バッファリング期間を設定します。 期間はで表されます
マイクロ秒。デフォルトは1000000(1秒)です。
すべてのストリームが正しくインターリーブされるようにするために、libavformatはそれまで待機します
実際にパケットを書き込む前に、ストリームごとに少なくともXNUMXつのパケットがあります。
出力ファイル。 一部のストリームが「まばら」である場合(つまり、間に大きなギャップがある場合
連続するパケット)、これにより過剰なバッファリングが発生する可能性があります。
このフィールドは、最初のタイムスタンプとのタイムスタンプの最大差を指定します
muxingキューの最後のパケット。これを超えると、libavformatがパケットを出力します。
すべてのストリームのパケットをキューに入れたかどうかに関係なく。
0に設定すると、libavformatは、次のパケットができるまでパケットのバッファリングを続行します。
バッファリングされた間の最大タイムスタンプの違いに関係なく、各ストリーム
パケット。
use_wall Clock_as_timestamps 整数 ( )
タイムスタンプとしてwallclockを使用します。
aim_negative_ts 整数 (出力)
可能な値:
メイク_ノンネガティブ
タイムスタンプをシフトして、負でないようにします。 また、これはのみ影響することに注意してください
非単調な負のタイムスタンプではなく、先行する負のタイムスタンプ。
メイクゼロ
最初のタイムスタンプが0になるようにタイムスタンプをシフトします。
オート (デフォルト)
ターゲットフォーマットで必要な場合にシフトを有効にします。
無効
タイムスタンプのシフトを無効にします。
シフトを有効にすると、すべての出力タイムスタンプが同じ量だけシフトされます。 オーディオ、
ビデオ、字幕の非同期化と相対的なタイムスタンプの違いは保持されます
シフトしなかった場合と比較して。
Skip_initial_bytes 整数 ( )
1に設定されている場合、ヘッダーとフレームを読み取る前にスキップするバイト数を設定します。デフォルトは
0.
正しい_ts_オーバーフロー 整数 ( )
1に設定されている場合、単一のタイムスタンプオーバーフローを修正します。デフォルトは1です。
フラッシュ_パケット 整数 (出力)
各パケットの後に、基になるI / Oストリームをフラッシュします。 デフォルト1はそれを有効にし、
待ち時間を短縮する効果。 0はそれを無効にし、パフォーマンスをわずかに向上させる可能性があります
ある場合。
出力_ts_offset オフセット (出力)
出力時間オフセットを設定します。
オフセット 期間の指定である必要があります。を参照してください。 Time デュレーション in
ffmpeg-utils(1) マニュアル.
オフセットは、マルチプレクサによって出力タイムスタンプに追加されます。
正のオフセットを指定すると、対応するストリームが遅延します。
で指定された期間 オフセット。 デフォルト値は0です(オフセットがないことを意味します
適用)。
フォーマット_ホワイトリスト リスト ( )
"、"は許可されたデマルチプレクサのリストを分離しました。 デフォルトでは、すべてが許可されています。
ダンプセパレーター string ( )
ストリームに関するコマンドラインに出力されるフィールドを区切るために使用されるセパレータ
パラメーター。 たとえば、フィールドを改行とインデントで区切るには、次のようにします。
ffprobe -dump_separator "
" -私 〜/ videos / matrixbench_mpeg2.mpg
フォーマット 流れ 指定子
フォーマットストリーム指定子を使用すると、特定のストリームに一致するXNUMXつ以上のストリームを選択できます
プロパティ。
ストリーム指定子の可能な形式は次のとおりです。
ストリームインデックス
ストリームをこのインデックスと一致させます。
ストリームタイプ[:ストリームインデックス]
ストリームタイプ は次のいずれかです:「v」はビデオ、「a」はオーディオ、「s」は字幕、「d」
データの場合は「t」、添付ファイルの場合は「t」。 もしも ストリームインデックス が与えられると、それは一致します
ストリーム番号 ストリームインデックス このタイプの。 それ以外の場合は、このすべてのストリームに一致します
タイプ。
p:プログラムID[:ストリームインデックス]
If ストリームインデックス が与えられると、ストリームと番号が一致します ストリームインデックス 会場は
IDのプログラム プログラムID。 それ以外の場合は、プログラム内のすべてのストリームに一致します。
#ストリームID
フォーマット固有のIDでストリームを照合します。
ストリーム指定子の正確なセマンティクスは、
で宣言された「avformat_match_stream_specifier()」関数 libavformat / avformat.h
ヘッダ。
デミュクサー
デミュクサーはFFmpegで構成された要素であり、マルチメディアストリームを
特定の種類のファイル。
FFmpegビルドを設定すると、サポートされているすべてのデマルチプレクサがデフォルトで有効になります。
構成オプション「--list-demuxers」を使用して、使用可能なすべてのものをリストできます。
構成オプション「--disable-demuxers」を使用して、すべてのデマルチプレクサを無効にできます。
オプション「--enable-demuxer =」を使用して単一のデマルチプレクサを選択的に有効にしますデミュクサー」、または無効にする
オプション「--disable-demuxer =デミュクサー」.
ff *ツールのオプション「-formats」は、有効なデマルチプレクサのリストを表示します。
現在利用可能ないくつかのデマルチプレクサの説明は次のとおりです。
aa
Audible Format 2、3、および4のデマルチプレクサ。
このデマルチプレクサは、Audible Format 2、3、および4(.aa)ファイルをデマルチプレクサするために使用されます。
アップルhttp
AppleHTTPライブストリーミングデマルチプレクサ。
このデマルチプレクサは、すべてのバリアントストリームからのすべてのAVStreamを表示します。 idフィールドはに設定されます
ビットレートバリアントインデックス番号。 AVStreamsに破棄フラグを設定する(「a」を押す)
またはffplayの「v」)、呼び出し元は実際に受信するバリアントストリームを決定できます。 NS
ストリームが属するバリアントの合計ビットレートは、メタデータキーで利用できます
「variant_bitrate」という名前。
APNG
アニメーション化されたポータブルネットワークグラフィックスデマルチプレクサ。
このデマルチプレクサは、APNGファイルをデマルチプレクサするために使用されます。 PNG署名を除くすべてのヘッダー(ただし
含まない)最初のfcTLチャンクはextradataとして送信されます。 その後、フレームが分割されます
XNUMXつのfcTLチャンク間、または最後のfcTLチャンクとIENDチャンク間のすべてのチャンクとして。
-ignore_loop ブール
設定されている場合、ファイル内のループ変数を無視します。
-max_fps int型
0秒あたりのフレーム数で表した最大フレームレート(制限なしの場合はXNUMX)。
-default_fps int型
ファイルに何も指定されていない場合のデフォルトのフレームレート(フレーム/秒)(0は意味
できるだけ速く)。
ASF
Advanced SystemsFormatデマルチプレクサ。
このデマルチプレクサは、ASFファイルとMMSネットワークストリームをデマルチプレクサするために使用されます。
-no_resync_search ブール
特定のオプションの開始コードを探して再同期を試みないでください。
連結
仮想連結スクリプトデマルチプレクサ。
このデマルチプレクサは、テキストファイルからファイルとその他のディレクティブのリストを読み取り、それらをデマルチプレクサします
まるで彼らのすべてのパケットが一緒に混ぜ合わされたかのように、次々に。
ファイルのタイムスタンプは、最初のファイルが0から始まり、次の各ファイルが始まるように調整されます。
ファイルは前のファイルが終了するところから始まります。 これはグローバルに行われ、原因となる可能性があることに注意してください
すべてのストリームの長さがまったく同じでない場合はギャップが発生します。
すべてのファイルは同じストリーム(同じコーデック、同じタイムベースなど)を持っている必要があります。
各ファイルの期間は、次のファイルのタイムスタンプを調整するために使用されます。
期間が正しくない(ビットレートを使用して計算されたため、またはファイルが
たとえば、切り捨てられた場合)、アーティファクトが発生する可能性があります。 「duration」ディレクティブは、
各ファイルに保存されている期間を上書きします。
構文
スクリプトは拡張ASCIIのテキストファイルで、XNUMX行にXNUMXつのディレクティブがあります。 空の行、
'#'で始まる先頭のスペースと行は無視されます。 次のディレクティブは
認識された:
"ファイル path"
読み取るファイルへのパス。 特殊文字とスペースは円記号でエスケープする必要があります
または一重引用符。
以降のすべてのファイル関連のディレクティブは、そのファイルに適用されます。
「ffconcat バージョン 1.0 "
スクリプトの種類とバージョンを特定します。 また、 安全な する場合は1へのオプション
デフォルトは-1です。
FFmpegにフォーマットを自動的に認識させるには、このディレクティブが正確に表示される必要があります
スクリプトの最初の行にそのまま(余分なスペースやバイト順マークはありません)。
"間隔 DUR"
ファイルの期間。 この情報はファイルから指定できます。 それを指定する
ここでは、ファイルの情報が利用できない場合に、より効率的または役立つ場合があります
または正確。
すべてのファイルに期間が設定されている場合、全体をシークすることが可能です
連結されたビデオ。
「インポイント タイムスタンプ"
ファイルのポイントで。 デマルチプレクサがファイルを開くと、即座に
指定されたタイムスタンプ。 すべてのストリームを正常に表示できるようにシークが行われます
インポイントで。
このディレクティブは、フレーム内コーデックでは最適に機能します。これは、フレーム内コーデックではないためです。
通常、実際のインポイントとデコードされたコンテンツの前に追加のパケットを取得します
ほとんどの場合、インポイントの前にもフレームが含まれます。
ファイルごとに、ファイルインポイントの前のパケットのタイムスタンプは
ファイルの計算された開始タイムスタンプ(最初のファイルの場合は負)、および
ファイルの期間(「duration」ディレクティブで指定されていない場合)が短縮されます
指定されたインポイントに基づきます。
指定されたインポイントより前の潜在的なパケットのため、パケットのタイムスタンプは
XNUMXつの連結されたファイル間の重なり。
「アウトポイント タイムスタンプ"
ファイルのアウトポイント。 デマルチプレクサがで指定されたデコードタイムスタンプに達したとき
ストリームのいずれか、それはファイルの終わりの状態としてそれを処理し、現在のをスキップします
そして、すべてのストリームからの残りのすべてのパケット。
アウトポイントは排他的です。つまり、デマルチプレクサはパケットを出力しません。
アウトポイント以上のタイムスタンプをデコードします。
このディレクティブは、すべてのストリームが存在するフレーム内コーデックおよびフォーマットで最適に機能します。
しっかりとインターリーブされています。 非イントラフレームコーデックの場合、通常は追加のコーデックを取得します
アウトポイントの後にプレゼンテーションタイムスタンプがあるパケット、したがってデコードされたコンテンツは
ほとんどの場合、アウトポイントの後にフレームも含まれています。 ストリームがタイトでない場合
インターリーブされた場合、アウトポイントの前にすべてのストリームからすべてのパケットを取得できない場合があります。
アウトポイントまで、最も早いストリームのみをデコードできる可能性があります。
ファイルの期間(「duration」ディレクティブで指定されていない場合)は次のようになります
指定されたアウトポイントに基づいて削減されます。
"file_packet_metadata key = value"
ファイルのパケットのメタデータ。 指定したメタデータがファイルごとに設定されます
パケット。 このディレクティブを複数回指定して、複数のメタデータを追加できます
エントリー。
"ストリーム"
仮想ファイルにストリームを導入します。 後続のすべてのストリーム関連のディレクティブ
最後に導入されたストリームに適用されます。 一部のストリームプロパティは、次のように設定する必要があります
サブファイル内の一致するストリームを識別できるようにします。 でストリームが定義されていない場合
スクリプトでは、最初のファイルからのストリームがコピーされます。
"exact_stream_id id"
ストリームのIDを設定します。 このディレクティブが指定されている場合、
サブファイル内の対応するIDが使用されます。 これは、MPEG-PSで特に役立ちます
(VOB)ファイル。ストリームの順序が信頼できません。
オプション
このデマルチプレクサは、次のオプションを受け入れます。
安全な
1に設定すると、安全でないファイルパスを拒否します。 そうでない場合、ファイルパスは安全であると見なされます
プロトコル仕様を含み、相対的であり、すべてのコンポーネントにはのみが含まれます
ポータブル文字セットの文字(文字、数字、ピリオド、アンダースコア、および
ハイフン)であり、コンポーネントの先頭にピリオドはありません。
0に設定すると、任意のファイル名が受け入れられます。
デフォルトは-1で、フォーマットが自動的にプローブされた場合は1に相当し、0に相当します。
さもないと。
auto_convert
1に設定されている場合は、パケットデータに対して自動変換を実行してストリームを作成してみてください
連結可能。 デフォルトは1です。
現在、唯一の変換は、h264_mp4toannexbビットストリームフィルターをに追加することです。
MP264形式のH.4ストリーム。 これは特に解決策がある場合に必要です
変更。
FLV
Adobe Flash VideoFormatデマルチプレクサ。
このデマルチプレクサは、FLVファイルとRTMPネットワークストリームをデマルチプレクサするために使用されます。
-flv_メタデータ ブール
onMetaData配列の内容に従ってストリームを割り当てます。
libgme
Game Music Emuライブラリは、ビデオゲーム音楽ファイルエミュレータのコレクションです。
見るhttp://code.google.com/p/game-music-emu/>詳細については。
一部のファイルには複数のトラックがあります。 デマルチプレクサは、デフォルトで最初のトラックを選択します。 NS
トラックインデックス オプションを使用して、別のトラックを選択できます。 トラックインデックスは0から始まります。
demuxerはトラック数を次のようにエクスポートします トラック メタデータエントリ。
非常に大きなファイルの場合、 最大サイズ オプションを調整する必要がある場合があります。
リブクヴィ
quviプロジェクトを使用してインターネットサービスからメディアを再生します。
デマルチプレクサは、 形式でアーカイブしたプロジェクトを保存します. 特定の品質を要求するオプション。 デフォルトではに設定されています
最良.
見るhttp://quvi.sourceforge.net/>詳細については。
このデマルチプレクサを有効にするには、FFmpegを「--enable-libquvi」でビルドする必要があります。
GIF
アニメーションGIFデマルチプレクサ。
次のオプションを受け入れます。
min_delay
フレーム間の最小有効遅延を0分のXNUMX秒単位で設定します。 範囲はXNUMX〜
6000。デフォルト値は2です。
max_gif_遅延
フレーム間の最大有効遅延を0分のXNUMX秒単位で設定します。 範囲はXNUMX〜
65535。デフォルト値は65535(約XNUMX分)で、許可される最大値は
仕様。
デフォルト_遅延
フレーム間のデフォルトの遅延を0分の6000秒単位で設定します。 範囲はXNUMX〜XNUMXです。
デフォルト値は10です。
無視ループ
GIFファイルには、特定の回数(または無限に)ループする情報を含めることができます。
If 無視ループ が1に設定されている場合、入力からのループ設定は無視され、
ループは発生しません。 0に設定すると、ループが発生し、番号が循環します
GIFによると何度も。 デフォルト値は1です。
たとえば、オーバーレイフィルタを使用して、無限にループするGIFを別のビデオの上に配置します。
ffmpeg -i input.mp4 -ignore_loop 0 -i input.gif -filter_complex overlay = shortest = 1 out.mkv
上記の例では、オーバーレイフィルターの最短オプションを使用して
最短の入力ファイルの長さでビデオを出力します。この場合は、 入力.mp4 as
この例のGIFは無限にループします。
image2
画像ファイルのデマルチプレクサ。
このデマルチプレクサは、パターンで指定された画像ファイルのリストから読み取ります。 構文と
パターンの意味はオプションで指定されます パターンタイプ.
パターンには、次の形式を自動的に判別するために使用される接尾辞が含まれる場合があります。
ファイルに含まれる画像。
サイズ、ピクセル形式、および各画像の形式は、すべての画像で同じである必要があります。
シーケンス内のファイル。
このデマルチプレクサは、次のオプションを受け入れます。
フレームレート
ビデオストリームのフレームレートを設定します。 デフォルトは25です。
ループ
1に設定すると、入力をループします。 デフォルト値は0です。
パターンタイプ
提供されたファイル名の解釈に使用されるパターンタイプを選択します。
パターンタイプ 次のいずれかの値を受け入れます。
なし
パターンマッチングを無効にするため、ビデオには指定されたもののみが含まれます
画像。 からシーケンスを作成したくない場合は、このオプションを使用する必要があります
複数の画像とファイル名に特殊なパターン文字が含まれている場合があります。
シーケンス
シーケンスパターンタイプを選択します。これは、によってインデックスが付けられたファイルのシーケンスを指定するために使用されます。
連番。
シーケンスパターンには、文字列「%d」または「%0」を含めることができますNd "、これは
各ファイル名の連番を表す文字の位置
パターンに一致します。 フォームが「%d0」の場合Nd "が使用され、文字列は
各ファイル名の数字は0で埋められ、 N 0が埋め込まれた桁の総数です
数を表します。 リテラル文字 '%'をパターンで指定できます
文字列「%%」を使用します。
シーケンスパターンに「%d」または「%0」が含まれている場合Nd "、ファイルの最初のファイル名
パターンで指定されたリストには、間に含まれる数値が含まれている必要があります
開始番号 と 開始番号+開始番号範囲-1、および以下のすべての番号
シーケンシャルである必要があります。
たとえば、パターン「img-%03d.bmp」は、
フォーム img-001.bmp, img-002.bmp……、 img-010.bmp、 NS。; パターン
"i %% m %% g-%d.jpg" Loading = "lazy"は、フォームのファイル名のシーケンスと一致します i%m%g-1.jpg,
i%m%g-2.jpg……、 i%m%g-10.jpg, etc.
パターンには必ずしも「%d」または「%0」が含まれている必要はないことに注意してくださいNd "、例えば
単一の画像ファイルを変換する img.jpeg 次のコマンドを使用できます。
ffmpeg -i img.jpeg img.png
地球
グロブワイルドカードパターンタイプを選択します。
このパターンは「glob()」パターンのように解釈されます。 これは、次の場合にのみ選択できます
libavformatはglobbingをサポートしてコンパイルされました。
グロブシーケンス (非推奨、 意志 be 除去された)
混合グロブワイルドカード/シーケンスパターンを選択します。
ご使用のバージョンのlibavformatがglobbingサポートを使用してコンパイルされている場合、および
指定されたパターンには、「%*?[] {}」の中に少なくともXNUMXつのグロブメタ文字が含まれています。
エスケープされていない「%」が前に付いている場合、パターンは「glob()」パターンのように解釈されます。
それ以外の場合は、シーケンスパターンのように解釈されます。
すべてのグロブ特殊文字「%*?[] {}」の前に「%」を付ける必要があります。 脱出するには
文字通りの「%」は「%%」を使用します。
たとえば、パターン「foo-%*。jpeg」は、接頭辞が付いたすべてのファイル名と一致します
「foo-」で「.jpeg」で終了し、「foo-%?%?%?。 jpeg」はすべての
「foo-」で始まり、その後にXNUMX文字のシーケンスが続くファイル名、および
「.jpeg」で終了します。
このパターンタイプは廃止され、 地球 と シーケンス.
デフォルト値は グロブシーケンス.
ピクセル形式
読み取る画像のピクセル形式を設定します。 指定されていない場合、ピクセル形式は
シーケンスの最初の画像ファイルから推測されます。
開始番号
読み取りを開始する画像ファイルパターンに一致するファイルのインデックスを設定します。
デフォルト値は0です。
開始番号範囲
で最初の画像ファイルを探すときにチェックするインデックス間隔の範囲を設定します
から始まるシーケンス 開始番号。 デフォルト値は5です。
ts_from_file
1に設定すると、フレームのタイムスタンプが画像ファイルの変更時刻に設定されます。 ご了承ください
タイムスタンプの単調性は提供されません:画像はこれがない場合と同じ順序になります
オプション。 デフォルト値は0です。2に設定すると、フレームのタイムスタンプが変更に設定されます
ナノ秒の精度での画像ファイルの時間。
ビデオサイズ
読み取る画像のビデオサイズを設定します。 指定されていない場合、ビデオサイズが推測されます
シーケンスの最初の画像ファイルから。
例
・ 使用する ffmpeg ファイルシーケンス内の画像からビデオを作成するため img-001.jpeg,
img-002.jpeg、...、10秒あたりXNUMXフレームの入力フレームレートを想定:
ffmpeg -framerate 10 -i'img-%03d.jpeg 'out.mkv
・上記と同じですが、次の順序でインデックス100のファイルから読み取ることから始めます。
ffmpeg -framerate 10 -start_number 100 -i'img-%03d.jpeg 'out.mkv
・「*。png」loading = "lazy"グロブパターンに一致する画像を読み取ります。これは、で終了するすべてのファイルです。
「.png」loading = "lazy"サフィックス:
ffmpeg -framerate 10 -pattern_type glob -i "* .png" Loading = "lazy" out.mkv
mov / mp4 / 3gp / Quicktme
Quicktime / MP4デマルチプレクサ。
このデマルチプレクサは、次のオプションを受け入れます。
有効化_drefs
外部トラックのロードを有効にします。デフォルトでは無効になっています。 これを有効にすると
理論的には、一部のユースケースで情報が漏洩します。
use_absolute_path
絶対パスを介した外部トラックのロードを許可します。デフォルトでは無効になっています。 有効化
これはセキュリティリスクをもたらします。 ソースが非であることがわかっている場合にのみ有効にする必要があります
悪意のある。
mpegt
MPEG-2トランスポートストリームデマルチプレクサ。
このデマルチプレクサは、次のオプションを受け入れます。
再同期サイズ
新しい同期を検索するためのサイズ制限を設定します。 デフォルト値は65536です。
fix_teletext_pts
文字放送パケットのPTSおよびDTS値を、から計算されたタイムスタンプで上書きします。
文字放送ストリームが含まれ、破棄されない最初のプログラムのPCR。
デフォルト値は1です。テレテキストパケットPTSおよびDTSが必要な場合は、このオプションを0に設定します。
手つかずの値。
ts_packetsize
生のパケットサイズをバイト単位で伝送する出力オプション。 検出された生のパケットを表示する
サイズ、ユーザーが設定することはできません。
scan_all_pmts
すべてのPMTをスキャンして結合します。 値は-1から1までの値の整数です(-1は
自動設定、1は有効、0は無効を意味します)。 デフォルト値は-1です。
生ビデオ
生のビデオデマルチプレクサ。
このデマルチプレクサを使用すると、生のビデオデータを読み取ることができます。 を指定するヘッダーがないため
想定されるビデオパラメータの場合、ユーザーはそれらをデコードできるようにするためにそれらを指定する必要があります
データを正しく。
このデマルチプレクサは、次のオプションを受け入れます。
フレームレート
入力ビデオのフレームレートを設定します。 デフォルト値は25です。
ピクセル形式
入力ビデオのピクセルフォーマットを設定します。 デフォルト値は「yuv420p」です。
ビデオサイズ
入力ビデオサイズを設定します。 この値は明示的に指定する必要があります。
たとえば、rawvideoファイルを読み取るには 入力.生 再生する、のピクセルフォーマットを想定
「rgb24」、「320x240」のビデオサイズ、および10秒あたりXNUMX画像のフレームレートを使用するには、
コマンド:
ffplay -f rawvideo -pixel_format rgb24 -video_size 320x240 -framerate 10 input.raw
SBG
SBaGenスクリプトデマルチプレクサ。
このデマルチプレクサは、SBaGenで使用されるスクリプト言語を読み取りますhttp://uazu.net/sbagen/>へ
バイノーラルビートセッションを生成します。 SBGスクリプトは次のようになります。
-SE
a: 300-2.5/3 440+4.5/0
b: 300-2.5/0 440+4.5/3
オフ: -
今==
+0:07:00 == b
+0:14:00 == a
+0:21:00 == b
+0:30:00オフ
SBGスクリプトは、絶対タイムスタンプと相対タイムスタンプを混在させることができます。 スクリプトがいずれかのみを使用する場合
絶対タイムスタンプ(スクリプトの開始時刻を含む)または相対タイムスタンプのみ、その後
レイアウトは固定されており、変換は簡単です。 一方、スクリプトの場合
両方の種類のタイムスタンプを混合し、次に 現在 相対タイムスタンプの参照は次のようになります
スクリプトが読み取られた現在の時刻とスクリプトのレイアウトから取得
その参照に従って凍結されます。 つまり、スクリプトが直接である場合
再生すると、実際の時間はサウンドコントローラーの絶対タイムスタンプまで一致します
時計の精度ですが、ユーザーが何らかの理由で再生を一時停止したりシークしたりすると、常に
それに応じてシフトしました。
字幕
に使用されるJSONキャプションhttp://www.ted.com/>.
TEDはキャプションへのリンクを提供していませんが、ページから推測できます。 NS
file tools / bookmarklets.html FFmpegソースツリーから公開するブックマークレットが含まれています
それら。
このデマルチプレクサは、次のオプションを受け入れます。
始まる時間
TEDトークの開始時間をミリ秒単位で設定します。 デフォルトは15000(15秒)です。 です
15秒が含まれているため、キャプションをダウンロード可能なビデオと同期するために使用されます
イントロ。
例:キャプションをほとんどのプレーヤーが理解できる形式に変換します。
ffmpeg -i http://www.ted.com/talks/subtitles/id/1/lang/en talk1-ja.srt
マルチプレクサ
マルチプレクサはFFmpegで構成された要素であり、マルチメディアストリームを
特定の種類のファイル。
FFmpegビルドを設定すると、サポートされているすべてのマルチプレクサがデフォルトで有効になります。 君は
構成オプション「--list-muxers」を使用して、使用可能なすべてのマルチプレクサを一覧表示できます。
構成オプション「--disable-muxers」を使用してすべてのマルチプレクサを無効にできます。
オプション "--enable-muxer =を使用して、単一のマルチプレクサを選択的に有効/無効にします。ミュクサー」 /
"--disable-muxer =ミュクサー」.
ff *ツールのオプション「-formats」は、有効なマルチプレクサのリストを表示します。
現在利用可能ないくつかのマルチプレクサの説明は次のとおりです。
エフ
オーディオインターチェンジファイル形式マルチプレクサ。
オプション
次のオプションを受け入れます。
write_id3v2
3に設定すると、ID2v1タグの書き込みが有効になります。デフォルトは0(無効)です。
id3v2_バージョン
書き込むID3v2バージョンを選択します。 現在、バージョン3および4のみ(別名ID3v2.3および
ID3v2.4)がサポートされています。 デフォルトはバージョン4です。
CRM
CRC(巡回冗長検査)テスト形式。
このマルチプレクサは、すべての入力オーディオおよびビデオフレームのAdler-32CRCを計算して印刷します。
デフォルトでは、オーディオフレームは署名された16ビットのrawオーディオおよびビデオフレームに変換されます。
CRCを計算する前のビデオ。
マルチプレクサの出力は、CRC = 0xの形式の単一行で構成されます。CRCここで、 CRC
デコードされたすべての入力のCRCを含む0桁に8が埋め込まれたXNUMX進数
フレーム。
参照してください フレームCRC マルチプレクサ。
例
たとえば、入力のCRCを計算し、それをファイルに保存するには out.crc:
ffmpeg -i INPUT -f crc out.crc
次のコマンドを使用して、CRCをstdoutに出力できます。
ffmpeg -i INPUT -f crc-
各フレームの出力形式は、次のコマンドで選択できます。 ffmpeg 音声を指定して
ビデオコーデックとフォーマット。 たとえば、PCMに変換された入力オーディオのCRCを計算するには
符号なし8ビットおよび入力ビデオをMPEG-2ビデオに変換するには、次のコマンドを使用します。
ffmpeg -i INPUT -c:a pcm_u8 -c:v mpeg2video -f crc-
フレームCRC
パケットごとのCRC(Cyclic Redundancy Check)テスト形式。
このマルチプレクサは、オーディオおよびビデオパケットごとにAdler-32CRCを計算して出力します。 に
デフォルトのオーディオフレームは、署名された16ビットのrawオーディオおよびビデオフレームに変換されます。
CRCを計算する前のビデオ。
マルチプレクサの出力は、次の形式の各オーディオおよびビデオパケットの行で構成されます。
、 、 、 、 、0x
CRC パケットのCRCを含む0桁に8が埋め込まれたXNUMX進数です。
例
たとえば、オーディオおよびビデオフレームのCRCを計算するには 入力、生に変換
オーディオパケットとビデオパケットをファイルに保存します out.crc:
ffmpeg -i INPUT -f Framecrc out.crc
情報をstdoutに出力するには、次のコマンドを使用します。
ffmpeg -i INPUT -f framecrc-
連絡先 ffmpeg、オーディオおよびビデオフレームの出力形式を選択できます
オーディオおよびビデオコーデックを指定することにより、各パケットのCRCを計算する前にエンコードされます。
たとえば、PCMに変換されたデコードされた各入力オーディオフレームのCRCを計算するには
符号なし8ビットおよびMPEG-2ビデオに変換されたデコードされた各入力ビデオフレームの、
コマンド:
ffmpeg -i INPUT -c:a pcm_u8 -c:v mpeg2video -f framecrc-
参照してください CRM マルチプレクサ。
フレームmd5
パケットごとのMD5テスト形式。
このマルチプレクサは、オーディオおよびビデオパケットごとにMD5ハッシュを計算して出力します。 デフォルトでは
オーディオフレームは、署名された16ビットのrawオーディオおよびビデオフレームからrawビデオに変換されます。
ハッシュを計算します。
マルチプレクサの出力は、次の形式の各オーディオおよびビデオパケットの行で構成されます。
、 、 、 、 、
MD5 パケットの計算されたMD5ハッシュを表すXNUMX進数です。
例
たとえば、オーディオおよびビデオフレームのMD5を計算するには 入力、生に変換
オーディオパケットとビデオパケットをファイルに保存します アウト.md5:
ffmpeg -i INPUT -f Framemd5 out.md5
情報をstdoutに出力するには、次のコマンドを使用します。
ffmpeg -i INPUT -f framemd5-
参照してください md5 マルチプレクサ。
GIF
アニメーションGIFマルチプレクサ。
次のオプションを受け入れます。
ループ
出力をループする回数を設定します。 ループなしの場合は「-1」を使用し、ループの場合は0を使用します
無期限(デフォルト)。
最終遅延
最後のフレームの後に遅延(センチ秒で表される)を強制します。 各フレームはで終わります
次のフレームまでの遅延。 デフォルトは「-1」です。これは、伝えるための特別な値です。
前の遅延を再利用するためのマルチプレクサ。 ループの場合は、カスタマイズすることをお勧めします
この値は、たとえば一時停止をマークします。
たとえば、ループ間に10秒の遅延を設定して、gifループを5回エンコードするには、次のようにします。
ffmpeg -i INPUT -loop 10 -final_lay 500 out.gif
注1:フレームを別々のGIFファイルに抽出する場合は、強制的に
image2 マルチプレクサ:
ffmpeg -i INPUT -c:v gif -f image2 "out%d.gif"
注2:GIF形式のタイムベースは非常に小さいため、XNUMXつのフレーム間の遅延は
XNUMXセンチ秒未満。
hls
HTTPライブストリーミングに従ってMPEG-TSをセグメント化するAppleHTTPライブストリーミングマルチプレクサ
(HLS)仕様。
プレイリストファイルとXNUMXつ以上のセグメントファイルを作成します。 出力ファイル名は次のように指定します
プレイリストのファイル名。
デフォルトでは、muxerは生成されたセグメントごとにファイルを作成します。 これらのファイルは同じです
プレイリストとして名前を付け、その後に連番と.ts拡張子を付けます。
たとえば、入力ファイルを次のように変換するには ffmpeg:
ffmpeg -i in.nut out.m3u8
この例では、プレイリストを作成します。 out.m3u8、およびセグメントファイル: out0.ts, out1.ts,
out2.ts, etc.
参照してください セグメント muxerは、より一般的で柔軟な実装を提供します
セグメンテーション、およびHLSセグメンテーションを実行するために使用できます。
オプション
このマルチプレクサは、次のオプションをサポートしています。
hls_time 秒
セグメントの長さを秒単位で設定します。 デフォルト値は2です。
hls_list_size サイズ
プレイリストエントリの最大数を設定します。 0に設定すると、リストファイルにはすべてが含まれます
セグメント。 デフォルト値は5です。
hls_ts_options オプションリスト
key = valueパラメーターの:-区切りリストを使用して、出力フォーマットオプションを設定します。 値
「:」を含む特殊文字はエスケープする必要があります。
hls_wrap ラップ
セグメントファイル名番号(それぞれに指定された番号)の後に番号を設定します
セグメントファイル)ラップ。 0に設定すると、数値が折り返されることはありません。 デフォルト値は0です。
このオプションは、ディスクが多くのセグメントファイルでいっぱいになるのを回避するのに役立ちます。
ディスクに書き込まれるセグメントファイルの最大数 ラップ.
開始番号 数
からプレイリストシーケンス番号を開始します 数。 デフォルト値は0です。
hls_allow_cache 許可キャッシュ
クライアントが\fIs0(1)またはしてはいけない\fIs0(0)キャッシュメディア
セグメント。
hls_base_url ベースURL
追加 ベースURL プレイリストのすべてのエントリに。 でプレイリストを生成するのに便利です
絶対パス。
プレイリストのシーケンス番号はセグメントごとに一意である必要があり、一意ではないことに注意してください
循環する可能性のあるセグメントファイル名シーケンス番号と混同される
例 ラップ オプションが指定されています。
hls_segment_filename ファイル名
セグメントのファイル名を設定します。 hls_flagssingle_fileが設定されていない限り ファイル名 として使用されます
セグメント番号付きの文字列形式:
ffmpeg in.nut -hls_segment_filename'file%03d.ts 'out.m3u8
この例では、プレイリストを作成します。 out.m3u8、およびセグメントファイル: ファイル000.ts,
ファイル001.ts, ファイル002.ts, etc.
hls_key_info_file キー情報ファイル
の情報を使用してください キー情報ファイル セグメント暗号化用。 の最初の行
キー情報ファイル プレイリストに書き込まれるキーURIを指定します。 キーURLは次の目的で使用されます
再生中に暗号化キーにアクセスします。 XNUMX行目は、
暗号化プロセス中にキーを取得するために使用されるキーファイル。 キーファイルは次のように読み取られます
バイナリ形式の16オクテットの単一パック配列。 オプションのXNUMX行目は、
の代わりに使用されるXNUMX進文字列としての初期化ベクトル(IV)
暗号化用のセグメントシーケンス番号(デフォルト)。 への変更 キー情報ファイル 結果になります
新しいキー/ IVと新しいキーのプレイリストのエントリを使用したセグメント暗号化
URI / IV。
キー情報ファイル形式:
(オプション)
キーURIの例:
http://server/file.key
/path/to/file.key
ファイルキー
キーファイルパスの例:
ファイルキー
/path/to/file.key
例IV:
0123456789ABCDEF0123456789ABCDEF
キー情報ファイルの例:
http://server/file.key
/path/to/file.key
0123456789ABCDEF0123456789ABCDEF
シェルスクリプトの例:
#!/bin/sh
BASE_URL = $ {1:-'。'}
openssl rand 16> file.key
echo $ BASE_URL / file.key> file.keyinfo
エコーfile.key >> file.keyinfo
echo $(openssl rand -hex 16)>> file.keyinfo
ffmpeg -f lavfi -re -i testsrc -c:v h264 -hls_flags delete_segments \
-hls_key_info_file file.keyinfo out.m3u8
hls_flags 単一ファイル
このフラグが設定されている場合、マルチプレクサはすべてのセグメントを単一のMPEG-TSファイルに保存します。
プレイリストのバイト範囲を使用します。 この方法で生成されたHLSプレイリストには
バージョン番号4。例:
ffmpeg -i in.nut -hls_flags single_file out.m3u8
プレイリストを作成します、 out.m3u8、および単一セグメントファイル、 アウト.ts.
hls_flags セグメントの削除
プレイリストから削除されたセグメントファイルは、次の期間が経過すると削除されます。
セグメントの期間とプレイリストの期間。
ICO
ICOファイルマルチプレクサ。
Microsoftのアイコンファイル形式(ICO)には、注意すべきいくつかの厳しい制限があります。
・サイズはどの寸法でも256ピクセルを超えることはできません
・保存できるのはBMPとPNGの画像のみです
・BMP画像を使用する場合は、次のいずれかのピクセル形式である必要があります。
BMPビット深度FFmpegピクセル形式
1ビットpal8
4ビットpal8
8ビットpal8
16ビットrgb555le
24ビットbgr24
32ビットbgra
・BMPイメージを使用する場合は、BITMAPINFOHEADERDIBヘッダーを使用する必要があります
・PNG画像を使用する場合は、rgbaピクセル形式を使用する必要があります
image2
画像ファイルマルチプレクサ。
画像ファイルmuxerは、ビデオフレームを画像ファイルに書き込みます。
出力ファイル名はパターンで指定され、順次生成するために使用できます
番号付きの一連のファイル。 パターンには、文字列「%d」または「%0」を含めることができますNd "、この文字列
ファイル名の番号付けを表す文字の位置を指定します。 の場合
フォーム "%0Nd "を使用すると、各ファイル名の数値を表す文字列に0が埋め込まれます。 N
数字。 リテラル文字 '%'は、文字列 "%%"を使用してパターンで指定できます。
パターンに「%d」または「%0」が含まれている場合Nd "、指定されたファイルリストの最初のファイル名は
番号1を含み、以下の番号はすべて連続します。
パターンには、次の形式を自動的に判別するために使用される接尾辞が含まれる場合があります。
書き込む画像ファイル。
たとえば、パターン「img-%03d.bmp」は、フォームのファイル名のシーケンスを指定します
img-001.bmp, img-002.bmp……、 img-010.bmpなど。パターン「img %%-%d.jpg」loading = "lazy"は指定します
フォームのファイル名のシーケンス img%-1.jpg, img%-2.jpg……、 img%-10.jpg, etc.
例
次の例は、使用方法を示しています ffmpeg 一連のファイルを作成するため
img-001.jpeg, img-002.jpeg、...、入力ビデオから毎秒XNUMXつの画像を取得します。
ffmpeg -i in.avi -vsync 1 -r 1 -f image2'img-%03d.jpeg '
と注意してください ffmpeg、「-f」オプションと出力でフォーマットが指定されていない場合
filenameは画像ファイル形式を指定し、image2 muxerが自動的に選択されるため、
前のコマンドは次のように書くことができます:
ffmpeg -i in.avi -vsync 1 -r 1'img-%03d.jpeg '
パターンには必ずしも「%d」または「%0」が含まれている必要はないことにも注意してくださいNd "、例えば
単一の画像ファイルを作成する img.jpeg 入力ビデオから、次のコマンドを使用できます。
ffmpeg -i in.avi -f image2 -frames:v 1 img.jpeg
この ストラフタイム オプションを使用すると、日付と時刻の情報を使用してファイル名を展開できます。
構文については、「strftime()」関数のドキュメントを確認してください。
たとえば、「strftime()」「%Y-%m-%d_%H-%M-%S」パターンから画像ファイルを生成するには、
フォロー中 ffmpeg コマンドを使用できます:
ffmpeg -f v4l2 -r 1 -i / dev / video0 -f image2 -strftime 1 "%Y-%m-%d_%H-%M-%S.jpg"
オプション
開始番号
指定された番号からシーケンスを開始します。 デフォルト値は0です。
update
1に設定すると、ファイル名は常にファイル名として解釈され、
パターン、および対応するファイルは新しい画像で継続的に上書きされます。
デフォルト値は0です。
ストラフタイム
1に設定されている場合、「strftime()」からの日付と時刻の情報でファイル名を展開します。
デフォルト値は0です。
画像マルチプレクサは、.YUV画像ファイル形式をサポートしています。 このフォーマットはその点で特別です
各画像フレームは、YUV420PコンポーネントごとにXNUMXつのファイルで構成されています。 読むまたは
この画像ファイル形式を記述し、「。Y」ファイルの名前を指定します。 マルチプレクサは
必要に応じて、「。U」ファイルと「.V」ファイルを自動的に開きます。
Matroskaは
Matroskaコンテナマルチプレクサ。
このマルチプレクサは、matroskaおよびwebmコンテナの仕様を実装しています。
このマルチプレクサで認識されるメタデータ設定は次のとおりです。
タイトル
XNUMXつのトラックに提供されるタイトル名を設定します。
言語
Matroska言語フォームでトラックの言語を指定します。
言語は、3文字の書誌ISO-639-2(ISO 639-2 / B)形式のいずれかです。
(フランス語の「fre」など)、または専門分野の国コードと混合された言語コード
言語(カナダフランス語の「fre-ca」など)。
Stereo_mode
3つのビデオトラックでXNUMXつのビューのステレオXNUMXDビデオレイアウトを設定します。
次の値が認識されます。
モノ
ビデオはステレオではありません
左右
両方のビューが並んで配置され、左目ビューが左側にあります
ボトムトップ
両方のビューは上下方向に配置され、左目ビューは下にあります
上_下
両方のビューが上下方向に配置され、左目ビューが上になります
チェッカーボード_rl
各ビューはチェッカーボードのインターリーブパターンで配置され、左目ビューは
最初の
チェッカーボード_lr
各ビューはチェッカーボードのインターリーブパターンで配置され、右目ビューは
最初の
row_interleaved_rl
各ビューは行ベースのインターリーブで構成され、右目ビューは最初の行です
row_interleaved_lr
各ビューは行ベースのインターリーブで構成され、左目ビューは最初の行です
Col_interleaved_rl
両方のビューは列ベースのインターリーブ方式で配置され、右目ビューは
最初の列
Col_interleaved_lr
両方のビューは列ベースのインターリーブ方式で配置され、左目ビューは
最初の列
アナグリフ_シアン_レッド
すべてのフレームは、赤シアンのフィルターを通して表示できるアナグリフ形式です。
右左
両方のビューが並んで配置され、右目ビューが左側にあります
アナグリフ_グリーン_マゼンタ
すべてのフレームは、グリーンマゼンタのフィルターを通して表示できるアナグリフ形式です。
ブロック_lr
両方の目がXNUMXつのブロックにまとめられ、左目ビューが最初になります
ブロックrl
両目がXNUMXつのブロックにひもで締められ、右目ビューが最初です
たとえば、3D WebMクリップは、次のコマンドラインを使用して作成できます。
ffmpeg -i sample_left_right_clip.mpg -an -c:v libvpx -metadata Stereo_mode = left_right -y Stereo_clip.webm
オプション
このマルチプレクサは、次のオプションをサポートしています。
reserved_index_space
デフォルトでは、このマルチプレクサはシーク用のインデックス(Matroska用語ではキューと呼ばれます)を次の場所に書き込みます。
ファイルの終わり。これは、ファイルの残りのスペースを事前に知ることができないためです。
ファイルの先頭にあるインデックス。 ただし、一部のユースケース(ストリーミングなど)の場合
シークは可能だが遅い場合-インデックスを最初に置くと便利です
ファイルの。
このオプションがゼロ以外の値に設定されている場合、マルチプレクサは指定された量の
ファイルヘッダーにスペースを入れてから、多重化するときにそこにキューを書き込もうとします
終了します。 使用可能なスペースが十分でない場合、多重化は失敗します。 のための安全なサイズ
ほとんどの使用例は、ビデオの50時間あたり約XNUMXkBである必要があります。
キューは、出力がシーク可能であり、このオプションにはない場合にのみ書き込まれることに注意してください
そうでない場合の効果。
md5
MD5テスト形式。
このマルチプレクサは、すべての入力オーディオおよびビデオフレームのMD5ハッシュを計算して出力します。 に
デフォルトのオーディオフレームは、署名された16ビットのrawオーディオおよびビデオフレームに変換されます。
ハッシュを計算する前のビデオ。
マルチプレクサの出力は、次の形式の5行で構成されます。MDXNUMX=MD5ここで、 MD5
計算されたMD5ハッシュを表すXNUMX進数。
たとえば、生のオーディオとビデオに変換された入力のMD5ハッシュを計算し、
ファイルに保存します アウト.md5:
ffmpeg -i INPUT -f md5 out.md5
次のコマンドを使用して、MD5をstdoutに出力できます。
ffmpeg -i INPUT -fmd5-
参照してください フレームmd5 マルチプレクサ。
mov、 mp4、 ismv
MOV / MP4 / ISMV(スムーズストリーミング)マルチプレクサ。
mov / mp4 / ismvマルチプレクサはフラグメンテーションをサポートします。 通常、MOV / MP4ファイルにはすべての
XNUMXつの場所に保存されているすべてのパケットに関するメタデータ(ファイルの最後に書き込まれます。
追加することでより良い再生のために最初に移動します ファストスタート から モフフラグ、またはを使用して
qt-ファストスタート 道具)。 フラグメント化されたファイルは、パケットが含まれるいくつかのフラグメントで構成されます。
これらのパケットに関するメタデータは一緒に保存されます。 断片化されたファイルの書き込みには、
書き込みが中断されてもファイルがデコード可能であるという利点(通常の場合
MOV / MP4は、適切に終了していない場合はデコードできません)。
非常に長いファイルを書き込む(通常のMOV / MP4ファイルを書き込むと、すべてのファイルに関する情報が保存されるため)
ファイルが閉じられるまでメモリ内のパケット)。 欠点は、互換性が低いことです
他のアプリケーションで。
オプション
断片化は、ファイルの切り取り方法を定義するAVOptionのXNUMXつを設定することで有効になります
断片に:
-moov_size バイト
ファイルを配置する代わりに、ファイルの先頭にmoovアトム用のスペースを予約します
最後にmoovアトム。 予約したスペースが不足している場合、多重化は失敗します。
-movflags フラグキーフレーム
各ビデオキーフレームで新しいフラグメントを開始します。
-frag_duration デュレーション
次のようなフラグメントを作成します デュレーション マイクロ秒の長さ。
-frag_size サイズ
最大を含むフラグメントを作成します サイズ ペイロードデータのバイト。
-movflags フラグカスタム
呼び出し元が呼び出すことにより、フラグメントをカットするタイミングを手動で選択できるようにします
「av_write_frame(ctx、NULL)」は、これまでに書き込まれたパケットでフラグメントを書き込みます。 (この
libavformatを統合している他のアプリケーションでのみ役立ちます。 ffmpeg.)
-min_frag_duration デュレーション
より短いフラグメントを作成しないでください デュレーション マイクロ秒の長さ。
複数の条件が指定されている場合、指定された条件のXNUMXつが指定されたときにフラグメントがカットされます
条件が満たされています。 これの例外は「-min_frag_duration」であり、
適用する他の条件のいずれかについて満たされている。
さらに、出力ファイルの書き込み方法は、他のいくつかの方法で調整できます。
オプション:
-movflags 空のムーブ
ファイルの先頭に最初のmoovアトムを、何も記述せずに直接書き込みます
その中のサンプル。 通常、mdat / moovペアは、ファイルの先頭に次のように書き込まれます。
ファイルの短い部分のみを含む通常のMOV / MP4ファイル。 このオプションで
セットでは、最初のmdatアトムはなく、moovアトムはトラックのみを記述しますが
期間はゼロです。
このオプションは、ismv(スムーズストリーミング)ファイルを書き込むときに暗黙的に設定されます。
-movflags セパレートムーフ
トラックごとに個別のmoof(ムービーフラグメント)アトムを記述します。 通常、すべてのパケット
トラックはmoofアトム(少し効率的です)で書かれていますが、これを使用すると
オプションを設定すると、muxerはトラックごとにXNUMXつのmoof / mdatペアを書き込むため、次の操作が簡単になります。
別々のトラック。
このオプションは、ismv(スムーズストリーミング)ファイルを書き込むときに暗黙的に設定されます。
-movflags ファストスタート
インデックス(moovアトム)をファイルの先頭に移動するXNUMX番目のパスを実行します。 この
操作には時間がかかる場合があり、断片化などのさまざまな状況では機能しません
出力、したがって、デフォルトでは有効になっていません。
-movflags rtphint
RTPヒントトラックを出力ファイルに追加します。
-movflags 無効化_chpl
Neroチャプターマーカー(chplアトム)を無効にします。 通常、Neroの章と
QuickTimeチャプタートラックがファイルに書き込まれます。 このオプションを設定すると、
QuickTimeチャプタートラックが書き込まれます。 Neroチャプターは、次の場合に失敗を引き起こす可能性があります。
ファイルは、mp3Tag2.61aやiTunes11.3などの特定のタグ付けプログラムで再処理されます。
ほとんどの場合、他のバージョンも影響を受けます。
-movflags 省略_tfhd_offset
tfhdアトムに絶対base_data_offsetを書き込まないでください。 これにより、フラグメントの結合が回避されます
ファイル/ストリーム内の絶対バイト位置に。
-movflags デフォルト_ベース_ムーフ
omit_tfhd_offsetと同様に、このフラグは絶対値の書き込みを回避します
tfhdアトムのbase_data_offsetフィールド。ただし、新しいdefault-base-is-を使用してこれを行います。
代わりにmoofフラグ。 このフラグは14496-12:2012から新しいものです。 これは断片を作るかもしれません
特定の状況での解析が容易(ベーストラックフラグメントの場所を回避)
前のトラックフラグメントの暗黙の終わりの計算)。
例
これにより、スムーズなストリーミングコンテンツをIISの公開ポイントにリアルタイムでプッシュできます。
マルチプレクサ。 例:
ffmpeg -re < > -movflags isml + frag_keyframe -f ismv http://server/publishingpoint.isml/Streams(エンコーダー1)
聞こえる AAX
可聴AAXファイルは暗号化されたM4Bファイルであり、4を指定することで復号化できます
バイトアクティベーションシークレット。
ffmpeg -activation_bytes 1CEB00DA -i test.aax -vn -c:a copy output.mp4
mp3
MP3マルチプレクサは、次のオプション機能を使用して生のMP3ストリームを書き込みます。
・最初のID3v2メタデータヘッダー(デフォルトで有効)。 バージョン2.3および2.4
サポートされている場合、「id3v2_version」プライベートオプションはどちらを使用するかを制御します(3または4)。
「id3v2_version」を0に設定すると、ID3v2ヘッダーが完全に無効になります。
マルチプレクサは、添付画像(APICフレーム)のID3v2ヘッダーへの書き込みをサポートしています。 NS
写真は、単一のパケットを含むビデオストリームの形式でマルチプレクサに提供されます。
これらのストリームはいくつでも存在でき、それぞれが単一のAPICフレームに対応します。
ストリームメタデータタグ タイトル と コメント APICにマップ 説明 と 画像 type
それぞれ。 見るhttp://id3.org/id3v2.4.0-frames>許可された画像タイプの場合。
APICフレームは最初に書き込む必要があるため、マルチプレクサはバッファリングすることに注意してください
すべての画像を取得するまでオーディオフレーム。 したがって、提供することをお勧めします
過度のバッファリングを避けるために、できるだけ早く写真を。
・ID3v2ヘッダーの直後のXing / LAMEフレーム(存在する場合)。 デフォルトで有効になっていますが、
ただし、出力がシーク可能である場合にのみ書き込まれます。 「write_xing」プライベートオプション
無効にするために使用できます。 フレームには、役立つ可能性のあるさまざまな情報が含まれています
オーディオの持続時間やエンコーダの遅延など、デコーダに送信します。
・ファイルの最後にあるレガシーID3v1タグ(デフォルトでは無効)。 有効になっている可能性があります
「write_id3v1」プライベートオプションを使用しますが、その機能は非常に限られているため、
使用はお勧めしません。
例:
ID3v3ヘッダーとID2.3v3フッターを使用してmp1を記述します。
ffmpeg -i INPUT -id3v2_version 3 -write_id3v1 1 out.mp3
画像をmp3ファイルに添付するには、オーディオと画像ストリームの両方を選択します。
"地図":
ffmpeg -i input.mp3 -i cover.png -c コピー -map 0 -map 1
-metadata:s:v title = "アルバムカバー" -metadata:s:v comment = "Cover(Front)" out.mp3
追加機能なしで「クリーンな」MP3を作成します。
ffmpeg -i 入力.wav -write_xing 0 -id3v2_version 0 out.mp3
mpegt
MPEGトランスポートストリームマルチプレクサ。
このマルチプレクサは、ISO13818-1およびETSIEN 300の一部を実装しています。
mpegts muxerで認識されるメタデータ設定は、「service_provider」と
"サービス名"。 それらが設定されていない場合、「service_provider」のデフォルトは「FFmpeg」であり、
「service_name」のデフォルトは「Service01」です。
オプション
マルチプレクサのオプションは次のとおりです。
-mpegts_original_network_id 数
original_network_id(デフォルトは0x0001)を設定します。 これはネットワークの一意の識別子です
DVBで。 その主な用途は、パスを介したサービスの一意の識別です。
Original_Network_ID、Transport_Stream_ID。
-mpegts_transport_stream_id 数
transport_stream_idを設定します(デフォルトは0x0001)。 これにより、DVBのトランスポンダが識別されます。
-mpegts_service_id 数
DVBではプログラムとも呼ばれるservice_id(デフォルトは0x0001)を設定します。
-mpegts_service_type 数
プログラムservice_typeを設定します(デフォルト デジタルテレビ)、以下の事前定義されたリストを参照してください
値。
-mpegts_pmt_start_pid 数
PMTの最初のPIDを設定します(デフォルトは0x1000、最大は0x1f00)。
-mpegts_start_pid 数
データパケットの最初のPIDを設定します(デフォルトは0x0100、最大は0x0f00)。
-mpegts_m2ts_mode 数
2に設定されている場合は、m1tsモードを有効にします。デフォルト値は-1で、m2tsモードを無効にします。
-マックスレート 数
一定のmuxrate(デフォルトのVBR)を設定します。
-pcr_期間 数
デフォルトのPCR再送信時間(デフォルトは20ms)をオーバーライドし、可変の場合は無視します
muxrateが選択されています。
パット期間 数
PAT / PMTテーブル間の最大時間(秒単位)。
sdt_期間 数
SDTテーブル間の最大時間(秒単位)。
-pes_payload_size 数
最小PESパケットペイロードをバイト単位で設定します。
-mpegts_flags フラグ
フラグを設定します(以下を参照)。
-mpegts_copyts 数
値が1に設定されている場合、元のタイムスタンプを保持します。デフォルト値は-1であり、結果は-XNUMXになります。
タイムスタンプを0から開始するようにシフトします。
-tables_version 数
PAT、PMT、およびSDTのバージョンを設定します(デフォルトは0、有効な値は0から31までです)。
このオプションを使用すると、ストリーム構造を更新して、標準のコンシューマーが
変化する。 これを行うには、出力AVFormatContextを再度開くか(APIを使用する場合)、再起動します
ffmpegインスタンス、周期的に変化するtables_version値:
ffmpeg -i source1.ts -codec copy -f mpegts -tables_version 0 udp://1.1.1.1:1111
ffmpeg -i source2.ts -codec copy -f mpegts -tables_version 1 udp://1.1.1.1:1111
...
ffmpeg -i source3.ts -codec copy -f mpegts -tables_version 31 udp://1.1.1.1:1111
ffmpeg -i source1.ts -codec copy -f mpegts -tables_version 0 udp://1.1.1.1:1111
ffmpeg -i source2.ts -codec copy -f mpegts -tables_version 1 udp://1.1.1.1:1111
...
オプションmpegts_service_typeは、次の値を受け入れます。
hex_value
ETSI 0で定義されている01x0から300xffまでの任意の468進値。
デジタルテレビ
デジタルTVサービス。
デジタルラジオ
デジタルラジオサービス。
テレテキスト
文字放送サービス。
Advanced_codec_digital_radio
高度なコーデックデジタルラジオサービス。
mpeg2_デジタル_hdtv
MPEG2デジタルHDTVサービス。
Advanced_codec_digital_sdtv
高度なコーデックデジタルSDTVサービス。
Advanced_codec_digital_hdtv
高度なコーデックデジタルHDTVサービス。
オプションmpegts_flagsは、次のようなフラグのセットを取ることができます。
再送信ヘッダー
次のパケットを書き込む前に、PAT / PMTを再送信してください。
緯度
AACにはLATMパケット化を使用します。
pat_pmt_at_frames
各ビデオフレームでPATとPMTを再送信します。
例
ffmpeg -i file.mpg -c コピー\
-mpegts_original_network_id 0x1122 \
-mpegts_transport_stream_id 0x3344 \
-mpegts_service_id 0x5566 \
-mpegts_pmt_start_pid 0x1500 \
-mpegts_start_pid 0x150 \
-metadata service_provider = "一部のプロバイダー" \
-metadata service_name = "Some Channel" \
-y out.ts
mxf、 mxf_d10
MXFマルチプレクサ。
オプション
マルチプレクサのオプションは次のとおりです。
ストア_ユーザー_コメント ブール
ユーザーコメントを保存するか、使用しないかを設定します。 IRTD-10は許可しません
ユーザーコメント。 したがって、デフォルトでは、mxfには書き込みますが、mxf_d10には書き込みません。
ヌル
ヌルマルチプレクサ。
このマルチプレクサは出力ファイルを生成しません。主にテストや
ベンチマークの目的。
たとえば、でデコードをベンチマークする ffmpeg 次のコマンドを使用できます。
ffmpeg -benchmark -i INPUT -f null out.null
上記のコマンドは読み取りまたは書き込みを行わないことに注意してください out.null ファイルですが、
出力ファイルは ffmpeg 構文。
または、次のようにコマンドを記述できます。
ffmpeg -benchmark -i INPUT -f null-
ナット
-同期点 フラグ
nutで同期点の使用法を変更します。
デフォルト つかいます 通常の 低オーバーヘッド を求める AIDS。
なし do つかいます 同期点 at 全て、 縮小 オーバーヘッド 焙煎が極度に未発達や過発達のコーヒーにて、クロロゲン酸の味わいへの影響は強くなり、金属を思わせる味わいと乾いたマウスフィールを感じさせます。 メイキング 流れ
求めることはできません。
結果のファイルは非常に損傷しているため、このオプションの使用はお勧めしません
敏感でシークすることはできません。 また、一般的にからのオーバーヘッド
同期点はごくわずかです。 注、-C 0を使用して無効にすることができます
増大するすべてのデータテーブルにより、限られたメモリで無限のストリームを多重化できます
そしてこれらの不利な点なしで。
タイムスタンプ付き 伸ばす 同期点 a 壁時計 フィールド。
この なし と タイムスタンプ付き フラグは実験的なものです。
-write_index ブール
最後にインデックスを書き込みます。デフォルトでは、インデックスを書き込みます。
ffmpeg -i INPUT-f_strict実験的-syncpointsなし-| プロセッサ
OGG
Oggコンテナマルチプレクサ。
-page_duration デュレーション
マイクロ秒単位の優先ページ期間。 マルチプレクサは、次のようなページを作成しようとします
おおよそです デュレーション マイクロ秒の長さ。 これにより、ユーザーは妥協することができます
シーク粒度とコンテナオーバーヘッドの間。 デフォルトは1秒です。 値0
すべてのセグメントを埋め、ページをできるだけ大きくします。 値が1の場合
ほとんどの状況でページごとに1パケットを効果的に使用し、シークの粒度を小さくします
追加のコンテナオーバーヘッドを犠牲にして。
-serial_offset 値
ストリームのシリアル番号を設定するシリアル値。 別の設定と
十分に大きな値は、生成されたoggファイルを安全にチェーンできることを保証します。
セグメント、 stream_segment、 セグメント
基本的なストリームセグメンター。
このマルチプレクサは、ほぼ固定された期間の多数の個別のファイルにストリームを出力します。 出力
ファイル名のパターンは、次のような方法で設定できます。 image2、または「strftime」を使用して
テンプレートの場合 ストラフタイム オプションは有効です。
「stream_segment」は、ストリーミング出力形式への書き込みに使用されるマルチプレクサの変形です。
グローバルヘッダーを必要とせず、MPEGなどへの出力に推奨されます
トランスポートストリームセグメント。 「ssegment」は「stream_segment」の短いエイリアスです。
すべてのセグメントは、選択された参照ストリームのキーフレームで始まります。
スルー 参照ストリーム オプションを選択します。
ビデオファイルを正確に分割したい場合は、入力キーを作成する必要があることに注意してください
フレームは、セグメンテーションまたはセグメントによって予想される正確な分割時間に対応します
muxerは、指定された開始の次に見つかったキーフレームで新しいセグメントを開始します
時間。
セグメントマルチプレクサは、単一の一定のフレームレートのビデオで最適に機能します。
オプションで、オプションを設定することにより、作成されたセグメントのリストを生成できます
セグメントリスト。 リストタイプは、 セグメントリストの種類 オプション。 エントリ
セグメントリストのファイル名は、デフォルトで対応する対応するベース名に設定されます
セグメントファイル。
参照してください hls muxerは、HLSのより具体的な実装を提供します
セグメンテーション。
オプション
セグメントマルチプレクサは、次のオプションをサポートしています。
参照ストリーム 指定子
文字列で指定されているように、参照ストリームを設定します 指定子。 場合 指定子 設定されている
「自動」にすると、参照が自動的に選択されます。 それ以外の場合はストリームである必要があります
指定子(ffmpegマニュアルの「ストリーム指定子」の章を参照)
参照ストリーム。 デフォルト値は「auto」です。
セグメント形式 形式でアーカイブしたプロジェクトを保存します.
内部コンテナ形式をオーバーライドします。デフォルトでは、ファイル名によって推測されます。
拡大。
セグメント形式オプション オプションリスト
key = valueパラメーターの:-区切りリストを使用して、出力フォーマットオプションを設定します。 値
「:」を含む特殊文字はエスケープする必要があります。
セグメントリスト 名
次の名前のリストファイルも生成します 名。 指定しない場合、リストファイルは生成されません。
セグメントリストフラグ フラグ
セグメントリストの生成に影響するフラグを設定します。
現在、次のフラグをサポートしています。
キャッシュ
キャッシュを許可します(M3U8リストファイルにのみ影響します)。
ライブ
ライブフレンドリーなファイル生成を許可します。
セグメントリストサイズ サイズ
リストファイルを更新して、最大で含まれるようにします サイズ セグメント。 0の場合、リストファイル
すべてのセグメントが含まれます。 デフォルト値は0です。
セグメントリストエントリプレフィックス 接頭辞
プリペンド 接頭辞 各エントリに。 絶対パスを生成するのに便利です。 デフォルトではプレフィックスなし
適用される。
セグメントリストの種類 type
リスト形式を選択します。
次の値が認識されます。
フラットな
作成されたセグメントのフラットリストを、XNUMX行にXNUMXセグメントずつ生成します。
csv、 EXT
作成されたセグメントのリストを生成します。各行が一致する、行ごとにXNUMXつのセグメントです。
形式(カンマ区切り値):
、 、
セグメント_ファイル名 は、muxerによって生成された出力ファイルの名前です。
提供されたパターンに。 CSVエスケープ(RFC4180に準拠)は、次の場合に適用されます。
必要。
セグメント開始時刻 と セグメント終了時間 セグメントの開始時刻と終了時刻を指定します
秒単位で表されます。
接尾辞が「.csv」または「.ext」のリストファイルは、この形式を自動選択します。
EXT 賛成または非推奨です csvファイル.
ffconcat
作成したセグメントのffconcatファイルを生成します。 結果のファイルを読み取ることができます
FFmpegを使用する 連結 demuxer。
接尾辞が「.ffcat」または「.ffconcat」のリストファイルは、この形式を自動選択します。
m3u8
に準拠した拡張M3U8ファイルバージョン3を生成します
<http://tools.ietf.org/id/draft-pantos-http-live-streaming>.
接尾辞「.m3u8」が付いたリストファイルは、この形式を自動選択します。
指定しない場合、タイプはリストファイル名のサフィックスから推測されます。
セグメント時間 時間
セグメント期間をに設定 時間、値は期間の指定である必要があります。 ディフォルト
値は「2」です。 も参照してください セグメント時間 オプションを選択します。
参照ストリームキーを強制しない限り、分割は正確でない可能性があることに注意してください-
指定された時間のフレーム。 紹介通知と以下の例を参照してください。
セグメント時刻 1 | 0
「1」に設定すると、00:00から始まる一定の時間間隔で分割されます。 NS
時間 で指定された値 セグメント時間 分割の長さを設定するために使用されます
間隔。
たとえば セグメント時間 「900」に設定すると、次の場所でファイルを作成できます。
12時、00時12分、15時12分など。
デフォルト値は「0」です。
セグメント時間デルタ デルタ
セグメントの開始時刻を選択するときに、精度時間を指定します。
期間の指定。 デフォルト値は「0」です。
デルタが指定されている場合、そのPTSが条件を満たす場合、キーフレームは新しいセグメントを開始します。
関係:
PTS> = start_time --time_delta
このオプションは、GOPで常に分割されるビデオコンテンツを分割するときに役立ちます
指定された分割時間の直前にキーフレームが見つかった場合の境界。
特に、 ffmpeg オプション フォースキーフレームを選択します。
によって指定されたキーフレーム時間 フォースキーフレーム のため、正確に設定できない場合があります
丸めの問題。その結果、キーフレーム時間が直前に設定される可能性があります。
指定された時間。 一定のフレームレートのビデオの場合、値は1 /(2 *フレームレート) すべき
指定された時間とによって設定された時間の間の最悪の場合の不一致に対処します
フォースキーフレーム.
セグメント時間 <font style="vertical-align: inherit;">回数</font>
分割点のリストを指定します。 <font style="vertical-align: inherit;">回数</font> カンマ区切りの期間のリストが含まれています
仕様、昇順。 も参照してください セグメント時間 オプションを選択します。
セグメント_フレーム フレーム
分割ビデオフレーム番号のリストを指定します。 フレーム カンマ区切りのリストが含まれています
整数、昇順。
このオプションは、参照ストリームのキーフレームが
が見つかり、フレームの連続番号(0から開始)が次の値以上である
リスト内の次の値。
セグメント_ラップ 制限
セグメントインデックスに到達したら、ラップアラウンドします 制限.
セグメント開始番号 数
最初のセグメントのシーケンス番号を設定します。 デフォルトは0です。
ストラフタイム 1 | 0
「strftime」関数を使用して、書き込む新しいセグメントの名前を定義します。 これなら
が選択されている場合、出力セグメント名には「strftime」関数テンプレートが含まれている必要があります。
デフォルト値は0です。
ブレーク非キーフレーム 1 | 0
有効になっている場合は、キーフレーム以外のフレームでセグメントを開始できるようにします。 これは改善します
キーフレーム間の時間が一貫していない場合の一部のプレーヤーの動作
他の人にとっては事態が悪化し、シーク中に奇妙なことが起こる可能性があります。 デフォルトは0です。
リセットタイムスタンプ 1 | 0
各セグメントの先頭でタイムスタンプをリセットして、各セグメントがで始まるようにします
ほぼゼロのタイムスタンプ。 これは、生成されたセグメントの再生を容易にすることを目的としています。 XNUMX月
マルチプレクサ/コーデックのいくつかの組み合わせでは機能しません。 デフォルトでは0に設定されています。
初期オフセット オフセット
出力パケットのタイムスタンプに適用するタイムスタンプオフセットを指定します。 引数はする必要があります
期間の指定であり、デフォルトは0です。
例
・ファイルの内容を再多重化する in.mkv セグメントのリストに out-000.nut, out-001.nutなど
生成されたセグメントのリストをに書き込みます アウトリスト:
ffmpeg -i in.mkv -codec copy -map 0 -f segment -segment_list out.list out%03d.nut
・セグメント入力および出力セグメントの出力フォーマットオプションの設定:
ffmpeg -i in.mkv -f segment -segment_time 10 -segment_format_options movflags = + faststart out%03d.mp4
・指定された分割点に従って入力ファイルをセグメント化します。 セグメント時間
オプション:
ffmpeg -i in.mkv -codec copy -map 0 -f segment -segment_list out.csv -segment_times 1,2,3,5,8,13,21 out%03d.nut
・ 使用 ffmpeg フォースキーフレーム で入力にキーフレームを強制するオプション
指定された場所とセグメントオプション セグメント時間デルタ を説明する
キーフレーム時間を設定するときに操作される可能性のある丸め。
ffmpeg -i in.mkv -force_key_frames 1,2,3,5,8,13,21 -codec:v mpeg4 -codec:a pcm_s16le -map 0 \
-f segment -segment_list out.csv -segment_times 1,2,3,5,8,13,21 -segment_time_delta 0.05 out%03d.nut
入力ファイルにキーフレームを強制するには、トランスコーディングが必要です。
・フレーム番号に従って入力ファイルを分割することにより、入力ファイルをセグメント化します
で指定されたシーケンス セグメント_フレーム オプション:
ffmpeg -i in.mkv -codec copy -map 0 -f segment -segment_list out.csv -segment_frames 100,200,300,500,800 out%03d.nut
・変換 in.mkv 「libx264」および「libfaac」エンコーダーを使用してTSセグメントに:
ffmpeg -i in.mkv -map 0 -codec:v libx264 -codec:a libfaac -f ssegment -segment_list out.list out%03d.ts
・入力ファイルをセグメント化し、M3U8ライブプレイリストを作成します(ライブHLSとして使用できます)
ソース):
ffmpeg -re -i in.mkv -codec copy -map 0 -f segment -segment_listplaylist.m3u8 \
-segment_list_flags + live -segment_time 10 out%03d.mkv
スムーズストリーミング
Smooth Streaming muxerは、配信に適した一連のファイル(マニフェスト、チャンク)を生成します
従来のWebサーバーで。
ウィンドウサイズ
マニフェストに保持されるフラグメントの数を指定します。 デフォルトは0(すべて保持)。
エクストラウィンドウサイズ
マニフェストから削除する前にマニフェストの外部に保持されるフラグメントの数を指定します
ディスク。 デフォルト5。
先読み回数
先読みフラグメントの数を指定します。 デフォルト2。
min_frag_duration
最小フラグメント期間(マイクロ秒単位)を指定します。 デフォルトは5000000です。
出口で削除
終了時にすべてのフラグメントを削除するかどうかを指定します。 デフォルトは0(削除しないでください)。
tee
ティーマルチプレクサを使用して、同じデータを複数のファイルまたはその他の種類のファイルに書き込むことができます
マルチプレクサ。 たとえば、ビデオをネットワークにストリーミングしたり、保存したりするために使用できます。
同時にディスク。
これは、複数の出力を指定することとは異なります。 ffmpeg コマンドラインツールの理由
オーディオおよびビデオデータは、ティーマルチプレクサでXNUMX回だけエンコードされます。 エンコーディングは
非常に高価なプロセス。 libavformat APIを直接使用する場合は、役に立たないためです。
その後、同じパケットを複数のマルチプレクサに直接フィードすることができます。
スレーブ出力は、マルチプレクサに付けられたファイル名で「|」で区切られて指定されます。 もしも
スレーブ名のいずれかに「|」が含まれていますセパレータ、先頭または末尾のスペース、または
特殊文字、エスケープする必要があります(を参照) 「引用 と 逃げる」 in
ffmpeg-utils(1) マニュアル).
Muxerオプションは、スレーブごとにリストとして追加することで指定できます。 キー=値
角かっこで囲まれた「:」で区切られたペア。 オプション値に特別な値が含まれている場合
文字または ':'区切り文字、これらはエスケープする必要があります。 これは第XNUMXレベルであることに注意してください
脱出。
次の特別なオプションも認識されます。
f フォーマット名を指定します。 出力名のサフィックスから推測できない場合に便利です。
bsfs [/スペック]
指定された出力に適用するビットストリームフィルターのリストを指定します。
特定のビットストリームフィルターを適用するストリームを指定することができます。
「/」で区切られたオプションにストリーム指定子を追加します。 スペック ストリームである必要があります
指定子(を参照) フォーマット 流れ 指定子)。 ストリーム指定子が指定されていない場合、
ビットストリームフィルターは、出力内のすべてのストリームに適用されます。
「、」で区切って、いくつかのビットストリームフィルターを指定できます。
select
ストリームで指定された、スレーブ出力にマップする必要があるストリームを選択します
指定子。 指定しない場合、これはデフォルトですべての入力ストリームになります。
例
・何かをエンコードし、WebMファイルにアーカイブしてMPEG-TS overUDPとしてストリーミングする
(ストリームは明示的にマッピングする必要があります):
ffmpeg -i ... -c:v libx264 -c:a mp2 -f tee -map 0:v -map 0:a
"archive-20121107.mkv | [f = mpegts] udp://10.0.1.255:1234 /"
・ 使用する ffmpeg 入力をエンコードし、出力をXNUMXつの異なる宛先に送信します。
「dump_extra」ビットストリームフィルターは、すべての
MPEG-TS形式の要求に応じて、ビデオキーフレームパケットを出力します。 選択オプション
に適用されます out.aac オーディオパケットのみを含めるため。
ffmpeg -i ... -map 0 -flags + global_header -c:v libx264 -c:a aac -strict Experimental
-f tee "[bsfs / v = dump_extra] out.ts | [movflags = + faststart] out.mp4 | [select = a] out.aac"
・以下のとおりですが、オーディオ出力にはストリーム「a:1」のみを選択してください。 XNUMX番目のレベルに注意してください
「:」はオプションを区切るために使用される特殊文字であるため、エスケープを実行する必要があります。
ffmpeg -i ... -map 0 -flags + global_header -c:v libx264 -c:a aac -strict Experimental
-f tee "[bsfs / v = dump_extra] out.ts | [movflags = + faststart] out.mp4 | [select = \ 'a:1 \'] out.aac"
注:一部のコーデックでは、出力形式に応じて異なるオプションが必要になる場合があります。 自動-
これの検出はティーマルチプレクサでは機能しません。 主な例は グローバルヘッダー
フラグ。
webm_dash_manifest
WebMDASHマニフェストマルチプレクサ。
このマルチプレクサは、WebM DASHマニフェスト仕様を実装して、DASHマニフェストを生成します
XML。 また、DASHライブストリームのマニフェスト生成もサポートしています。
詳細については、以下を参照してください。
・WebM DASH仕様:
<https://sites.google.com/a/webmproject.org/wiki/adaptive-streaming/webm-dash-specification>
・ISO DASH仕様:
<http://standards.iso.org/ittf/PubliclyAvailableStandards/c065274_ISO_IEC_23009-1_2014.zip>
オプション
このマルチプレクサは、次のオプションをサポートしています。
Adaptation_sets
このオプションの構文は次のとおりです。 "id = x、streams = a、b、c id = y、streams = d、e"ここで、x
およびyは適応セットの一意の識別子であり、a、b、c、dおよびeは
対応するオーディオおよびビデオストリームのインデックス。 任意の数の適応セット
このオプションを使用して追加できます。
ライブ
これを1に設定すると、ライブストリームのDASHマニフェストが作成されます。 デフォルト:0。
チャンクスタートインデックス
最初のチャンクの開始インデックス。 これは 開始番号 の属性
セグメント テンプレート マニフェストの要素。 デフォルト:0。
チャンクデュレーション_ms
ミリ秒単位の各チャンクの期間。 これは デュレーション の属性
セグメント テンプレート マニフェストの要素。 デフォルト:1000。
utc_timing_url
UTCタイムスタンプをISO形式で返すページのURL。 これは
値 の属性 UTCタイミング マニフェストの要素。 デフォルト:なし。
time_shift_buffer_ Depth
表現が保証されている最小時間(秒単位)のシフトバッファー
利用可能になります。 これは タイムシフトバッファ深度 の属性 MPD
エレメント。 デフォルト:60。
最小更新期間
マニフェストの最小更新期間(秒単位)。 これは
最小更新期間 の属性 MPD エレメント。 デフォルト:0。
例
ffmpeg -f webm_dash_manifest -i video1.webm \
-f webm_dash_manifest -i video2.webm \
-f webm_dash_manifest -i audio1.webm \
-f webm_dash_manifest -i audio2.webm \
-マップ 0 -マップ 1 -マップ 2 -マップ 3 \
-cコピー\
-f webm_dash_manifest \
-adaptation_sets "id = 0、streams = 0,1 id = 1、streams = 2,3" \
マニフェスト.xml
webm_chunk
WebM Live ChunkMuxer。
このマルチプレクサは、WebMヘッダーとチャンクを個別のファイルとして書き出します。
DASHを介してWebMライブストリームをサポートするクライアント。
オプション
このマルチプレクサは、次のオプションをサポートしています。
チャンクスタートインデックス
最初のチャンクのインデックス(デフォルトは0)。
ヘッダ
初期化データが書き込まれるヘッダーのファイル名。
audio_chunk_duration
ミリ秒単位の各オーディオチャンクの継続時間(デフォルトは5000)。
例
ffmpeg -f v4l2 -i / dev / video0 \
-f alsa -i hw:0 \
-マップ0:0 \
-c:v libvpx-vp9 \
-s 640x360 -keyint_min 30 -g 30 \
-f webm_chunk \
-ヘッダーwebm_live_video_360.hdr\
-chunk_start_index 1 \
webm_live_video_360_%d.chk \
-マップ1:0 \
-c:a libvorbis \
-b:a 128k \
-f webm_chunk \
-ヘッダーwebm_live_audio_128.hdr\
-chunk_start_index 1 \
-audio_chunk_duration 1000 \
webm_live_audio_128_%d.chk
METADATA
FFmpegは、メディアファイルから単純なUTF-8でエンコードされたINIのようなテキストにメタデータをダンプすることができます
ファイルを作成し、メタデータmuxer / demuxerを使用してロードし直します。
ファイル形式は次のとおりです。
1.ファイルは、ヘッダーと、セクションに分割されたいくつかのメタデータタグで構成されます。
独自のラインで。
2.ヘッダーは ; FFMETADATA 文字列の後にバージョン番号(現在は1)が続きます。
3.メタデータタグの形式は key = value
4.ヘッダーがグローバルメタデータに続く直後
5.グローバルメタデータの後に、ストリームごと/チャプターごとのメタデータを持つセクションが存在する場合があります。
6.セクションは、大文字のセクション名(STREAMまたはCHAPTER)で始まります。
角かっこ([, ])そして次のセクションまたはファイルの終わりで終わります。
7.章のセクションの冒頭に、次の目的で使用されるオプションのタイムベースがある場合があります。
開始/終了値。 それは形でなければなりません タイムベース=NUM/日ここで、 NUM と 日 は整数です。
タイムベースが欠落している場合、開始/終了時間はミリ秒単位であると見なされます。
次に、チャプターセクションには、チャプターの開始時刻と終了時刻がフォームに含まれている必要があります =スタートNUM,
END =NUMここで、 NUM は正の整数です。
8.空の行とで始まる行 ; or # 無視されます。
9.メタデータキーまたは特殊文字を含む値(=, ;, #, \ および改行)は
バックスラッシュでエスケープする \.
10.メタデータの空白に注意してください(例: foo = バー)はの一部と見なされます
タグ(上記の例では、キーは foo 、値は
バー).
ffmetadataファイルは次のようになります。
; FFMETADATA1
title = Bike \\ shed
;これはコメントです
アーティスト= FFmpegトロールチーム
[章]
タイムベース= 1/1000
START = 0
#chapterは0:01:00に終了します
END = 60000
タイトル=章\#1
[ストリーム]
title = multi \
ライン
ffmetadata muxerとdemuxerを使用することにより、入力からメタデータを抽出することができます。
ファイルをffmetadataファイルに変換してから、ファイルを出力ファイルにトランスコードします。
ffmetadataファイルを編集しました。
でffmetadataファイルを抽出する ffmpeg 次のようになります:
ffmpeg -i INPUT -f ffmetadata FFMETADATAFILE
編集したメタデータ情報をFFMETADATAFILEファイルから再挿入するには、次のようにします。
ffmpeg -i INPUT -i FFMETADATAFILE -map_metadata 1 -codec copy OUTPUT
プロトコル
プロトコルはFFmpegで構成された要素であり、必要なリソースへのアクセスを可能にします
特定のプロトコル。
FFmpegビルドを設定すると、サポートされているすべてのプロトコルがデフォルトで有効になります。
構成オプション「--list-protocols」を使用して、使用可能なすべてのものをリストできます。
構成オプション「--disable-protocols」を使用してすべてのプロトコルを無効にできます。
オプション「--enable-protocol =」を使用してプロトコルを選択的に有効にしますプロトコル"、またはあなたができる
オプション「--disable-protocol =」を使用して特定のプロトコルを無効にしますプロトコル".
ff *ツールのオプション「-protocols」は、サポートされているプロトコルのリストを表示します。
現在利用可能なプロトコルの説明は次のとおりです。
非同期
入力ストリームの非同期データ入力ラッパー。
バックグラウンドスレッドにデータを入力して、I / O操作をdemuxスレッドから切り離します。
非同期:
非同期:http://host/resource
async:cache:http://host/resource
ブルーレイ
BluRayプレイリストを読みます。
受け入れられるオプションは次のとおりです。
角度
ブルーレイアングル
章
チャプターを開始(1 ... N)
プレイリスト
読み取るプレイリスト(BDMV / PLAYLIST / ?????。mpls)
例:
/ mnt / blurayにマウントされたBluRayから最長のプレイリストを読み取ります。
ブルーレイ:/ mnt /ブルーレイ
/ mnt / BlurayにマウントされたBluRayからプレイリスト2の角度4を読み取り、第2章から開始します。
-プレイリスト4-角度2-第2章ブルーレイ:/ mnt /ブルーレイ
キャッシュ
入力ストリームのキャッシングラッパー。
入力ストリームを一時ファイルにキャッシュします。 ライブストリームにシーク機能をもたらします。
キャッシュ:
連結
物理的な連結プロトコル。
ユニークなリソースであるかのように、多くのリソースを順番に読んで探します。
このプロトコルで受け入れられるURLの構文は次のとおりです。
concat: | | ... |
コラボレー URL1, URL2……、 URLN 連結されるリソースのURLであり、それぞれが
おそらく別個のプロトコルを指定します。
たとえば、一連のファイルを読み取る場合 分割1.mpeg, 分割2.mpeg, 分割3.mpeg 再生する
次のコマンドを使用します。
ffplay concat:split1.mpeg \ | split2.mpeg \ | split3.mpeg
文字「|」をエスケープする必要がある場合があることに注意してくださいこれは多くのシェルにとって特別です。
クリプト
AESで暗号化されたストリーム読み取りプロトコル。
受け入れられるオプションは次のとおりです。
キー 指定されたXNUMX進表現からAES復号化キーのバイナリブロックを設定します。
iv 指定されたXNUMX進数からAES復号化初期化ベクトルバイナリブロックを設定します
表現。
受け入れられるURL形式:
暗号:
crypto +
データ
URIのインラインデータ。 見るhttp://en.wikipedia.org/wiki/Data_URI_scheme>.
たとえば、インラインで指定されたGIFファイルを変換するには ffmpeg:
ffmpeg -i "data:image/gif;base64,R0lGODdhCAAIAMIEAAAAAAAA//8AAP//AP///////////////ywAAAAACAAIAAADF0gEDLojDgdGiJdJqUX02iB4E8Q9jUMkADs=" smiley.png
file
ファイルアクセスプロトコル。
ファイルからの読み取りまたはファイルへの書き込み。
ファイルURLの形式は次のとおりです。
ファイル:
コラボレー ファイル名 読み取るファイルのパスです。
プロトコルプレフィックスを持たないURLは、ファイルURLと見なされます。 応じて
ビルド、先頭にドライブ文字が付いたWindowsパスのようなURL
また、ファイルURLであると見なされます(通常、UNIXライクのビルドではそうではありません)
システム)。
たとえば、ファイルから読み取るには 入力.mpeg ffmpeg 次のコマンドを使用します。
ffmpeg -i file:input.mpeg output.mpeg
このプロトコルは、次のオプションを受け入れます。
切り詰める
1に設定されている場合、書き込み時に既存のファイルを切り捨てます。値0は、切り捨てを防ぎます。
デフォルト値は1です。
ブロック化する
I / O操作の最大ブロックサイズをバイト単位で設定します。 デフォルト値は「INT_MAX」で、これは
その結果、要求されたブロックサイズが制限されません。 この値を適度に低く設定する
ユーザー終了要求の反応時間を改善します。これは、低速のファイルに役立ちます。
中。
FTP
FTP(ファイル転送プロトコル)。
FTPプロトコルを使用して、リモートリソースからの読み取りまたはリモートリソースへの書き込み。
次の構文が必要です。
ftp:// [user [:password] @] server [:port] /path/to/remote/resource.mpeg
このプロトコルは、次のオプションを受け入れます。
タイムアウト
基になる低レベルで使用されるソケットI / O操作のマイクロ秒単位でタイムアウトを設定します
手術。 デフォルトでは-1に設定されています。これは、タイムアウトが指定されていないことを意味します。
ftp-匿名-パスワード
匿名ユーザーとしてログインするときに使用されるパスワード。 通常、電子メールアドレスは次のようになります。
中古。
ftp 書き込みシーク可能
エンコード中の接続のシークアビリティを制御します。 1に設定すると、リソースは
シーク可能であると想定され、0に設定されている場合、シーク可能ではないと見なされます。 デフォルト値
0です。
注:プロトコルは出力として使用できますが、特別な場合を除いて、使用しないことをお勧めします
注意が払われます(テスト、カスタマイズされたサーバー構成など)。 異なるFTPサーバーが動作します
シーク操作中は別の方法で。 ff *ツールは、次の理由により不完全なコンテンツを生成する場合があります
サーバーの制限。
ゴーファー
Gopherプロトコル。
hls
Apple HTTP LiveStreamingに準拠したセグメント化されたストリームを統一されたものとしてお読みください。 M3U8
セグメントを説明するプレイリストは、リモートHTTPリソースまたはローカルファイルであり、アクセスできます
標準のファイルプロトコルを使用します。 ネストされたプロトコルは、「+プロト"
hls URIスキーム名の後、ここで プロト 「ファイル」または「http」のいずれかです。
hls +http://host/path/to/remote/resource.m3u8
hls + file://path/to/local/resource.m3u8
このプロトコルを使用することはお勧めしません-hlsdemuxerも同様に機能するはずです(そうでない場合)
問題を報告してください)そしてより完全です。 代わりにhlsdemuxerを使用するには、単に
m3u8ファイルへの直接URLを使用します。
HTTP
HTTP(ハイパーテキスト転送プロトコル)。
このプロトコルは、次のオプションを受け入れます。
シーク可能
接続のシーカビリティを制御します。 1に設定すると、リソースは次のようになります。
シーク可能。0に設定するとシーク可能ではないと見なされ、-1に設定するとシーク可能になります。
シーク可能かどうかを自動検出します。 デフォルト値は-1です。
チャンクポスト
1に設定すると、投稿にチャンク転送エンコーディングを使用します。デフォルトは1です。
content_type
POSTメッセージに特定のコンテンツタイプを設定します。
ヘッダーの
カスタムHTTPヘッダーを設定し、組み込みのデフォルトヘッダーを上書きできます。 値は
ヘッダーをエンコードする文字列。
複数のリクエスト
1に設定されている場合は、持続的接続を使用します。デフォルトは0です。
ポストデータ
カスタムHTTPPOSTデータを設定します。
ユーザーエージェント
USER_AGENT
User-Agentヘッダーをオーバーライドします。 指定しない場合、プロトコルは文字列を使用します
libavformatビルドについて説明します。 ( "Lavf / ")
タイムアウト
基になる低レベルで使用されるソケットI / O操作のマイクロ秒単位でタイムアウトを設定します
手術。 デフォルトでは-1に設定されています。これは、タイムアウトが指定されていないことを意味します。
mime_type
MIMEタイプをエクスポートします。
冷たい 1に設定されている場合、サーバーからICY(SHOUTcast)メタデータを要求します。 サーバーがサポートしている場合
これは、メタデータをアプリケーションが読み取ることによって取得する必要があります
icy_metadata_headers と icy_metadata_packet オプション。 デフォルトは1です。
icy_metadata_headers
サーバーがICYメタデータをサポートしている場合、これにはICY固有のHTTP応答が含まれます
改行文字で区切られたヘッダー。
icy_metadata_packet
サーバーがICYメタデータをサポートしている場合、および 冷たい 1に設定されました。これには、最後の非
サーバーから送信された空のメタデータパケット。 定期的にポーリングする必要があります
ミッドストリームメタデータの更新に関心のあるアプリケーション。
クッキー
今後のリクエストで送信されるCookieを設定します。 各Cookieの形式は同じです
Set-CookieHTTP応答フィールドの値として。 複数のCookieは次のように区切ることができます
改行文字。
オフセット
初期バイトオフセットを設定します。
終了オフセット
リクエストをこのオフセットの前のバイトに制限してみてください。
方法
クライアントオプションとして使用すると、リクエストのHTTPメソッドを設定します。
サーバーオプションとして使用すると、
クライアント。 期待されるHTTPメソッドと受信されたHTTPメソッドがクライアントと一致しない場合
BadRequest応答が返されます。 設定を解除すると、HTTPメソッドはチェックされません
今。 これは、将来的に自動検出に置き換えられる予定です。
聞く
1に設定すると、実験的なHTTPサーバーが有効になります。 これは、使用時にデータを送信するために使用できます
出力オプションとして、または入力として使用される場合はHTTPPOSTを使用してクライアントからデータを読み取ります
オプション。 2に設定すると、実験的なマルチクライアントHTTPサーバーが有効になります。 これはまだです
ffmpeg.cまたはffserver.cで実装されているため、コマンドラインとして使用しないでください
オプションを選択します。
#サーバー側(送信):
ffmpeg -i somefile.ogg -c copy -listen 1 -f ogg http:// :
#クライアント側(受信):
ffmpeg -i http:// : -csomefile.oggをコピーします
#クライアントはwgetでも実行できます:
wget http:// : -O somefile.ogg
#サーバー側(受信):
ffmpeg -listen 1 -i http:// : -csomefile.oggをコピーします
#クライアント側(送信):
ffmpeg -i somefile.ogg -chunked_post 0 -c copy -f ogg http:// :
#クライアントはwgetでも実行できます:
wget --post-file = somefile.ogg http:// :
HTTP クッキー(Cookie)について
一部のHTTPリクエストは、Cookie値がリクエストとともに渡されない限り拒否されます。 The
クッキー オプションを使用すると、これらのCookieを指定できます。 少なくとも、各Cookieは
パスとドメインとともに値を指定します。 両方のドメインに一致するHTTPリクエスト
パスには、HTTPCookieヘッダーフィールドにCookie値が自動的に含まれます。
複数のCookieは改行で区切ることができます。
Cookieを指定してストリームを再生するために必要な構文は次のとおりです。
ffplay -cookies "nlqptid = nltid = tsn; path = /; domain = somedomain.com;" http://somedomain.com/somestream.m3u8
アイスキャスト
Icecastプロトコル(Icecastサーバーへのストリーム)
このプロトコルは、次のオプションを受け入れます。
氷のジャンル
ストリームのジャンルを設定します。
氷の名前
ストリーム名を設定します。
氷の説明
ストリームの説明を設定します。
アイスURL
ストリームWebサイトのURLを設定します。
アイスパブリック
ストリームを公開するかどうかを設定します。 デフォルトは0(公開されていません)です。
USER_AGENT
User-Agentヘッダーをオーバーライドします。 指定されていない場合は、「Lavf /」の形式の文字列「」
使用されます。
password
Icecastマウントポイントのパスワードを設定します。
content_type
ストリームコンテンツタイプを設定します。 audio / mpegと異なる場合は、これを設定する必要があります。
legend_icecast
これにより、HTTPPUTをサポートしないIcecastバージョン<2.4.0のサポートが有効になります
メソッドですが、SOURCEメソッドです。
icecast:// [ [: ] @] : /
mmst
TCPを介したMMS(Microsoft Media Server)プロトコル。
うーん
HTTPを介したMMS(Microsoft Media Server)プロトコル。
必要な構文は次のとおりです。
mmsh:// [: ] [/ ] [/ ]
md5
MD5出力プロトコル。
書き込まれるデータのMD5ハッシュを計算し、閉じるとこれを
指定された出力または指定されていない場合はstdout。 それはなしでマルチプレクサをテストするために使用することができます
実際のファイルを書き込む。
以下にいくつかの例を示します。
#エンコードされたAVIファイルのMD5ハッシュをファイルoutput.avi.md5に書き込みます。
ffmpeg -i input.flv -f avi -y md5:output.avi.md5
#エンコードされたAVIファイルのMD5ハッシュをstdoutに書き込みます。
ffmpeg -i input.flv -f avi -y md5:
一部の形式(通常はMOV)では、出力プロトコルがシーク可能である必要があるため、
MD5出力プロトコルで失敗します。
パイプ
UNIXパイプアクセスプロトコル。
UNIXパイプからの読み取りと書き込み。
受け入れられる構文は次のとおりです。
パイプ:[ ]
数 パイプのファイル記述子に対応する番号です(たとえば、stdinの場合は0、1
stdoutの場合、stderrの場合は2)。 もしも 数 は指定されていません。デフォルトでは、stdoutファイルです。
記述子は書き込みに使用され、stdinは読み取りに使用されます。
たとえば、stdinから読み取るには ffmpeg:
cat test.wav | ffmpeg -i pipe:0
#...これは...と同じです
cat test.wav | ffmpeg -iパイプ:
stdoutへの書き込み用 ffmpeg:
ffmpeg -i test.wav -f avi pipe:1 | 猫> test.avi
#...これは...と同じです
ffmpeg -i test.wav -f aviパイプ:| 猫> test.avi
このプロトコルは、次のオプションを受け入れます。
ブロック化する
I / O操作の最大ブロックサイズをバイト単位で設定します。 デフォルト値は「INT_MAX」で、これは
その結果、要求されたブロックサイズが制限されません。 この値を適度に低く設定する
ユーザーの終了要求の反応時間を改善します。これは、データの場合に役立ちます
送信が遅い。
一部の形式(通常はMOV)では、出力プロトコルがシーク可能である必要があることに注意してください。
それらはパイプ出力プロトコルで失敗します。
rtmp
リアルタイムメッセージングプロトコル。
リアルタイムメッセージングプロトコル(RTMP)は、マルチメディアコンテンツを
TCP / IPネットワーク。
必要な構文は次のとおりです。
rtmp:// [ : @] [: ] [/ ] [/ ] [/ ]
受け入れられるパラメータは次のとおりです。
ユーザ名
オプションのユーザー名(主に公開用)。
password
オプションのパスワード(主に公開用)。
RTMPサーバーのアドレス。
ポート
使用するTCPポートの番号(デフォルトは1935)。
アプリ アクセスするアプリケーションの名前です。 これは通常、次のパスに対応します
アプリケーションがRTMPサーバーにインストールされている(例: /オンデマンド/, / flash / live /など)。
「rtmp_app」オプションを使用して、URIから解析された値をオーバーライドすることもできます。
プレイパス
これは、アプリケーションを参照して再生するリソースのパスまたは名前です。
で指定 アプリ、接頭辞「mp4:」を付けることができます。 から解析された値をオーバーライドできます
「rtmp_playpath」オプションを介したURIも。
聞く
サーバーとして機能し、着信接続をリッスンします。
タイムアウト
着信接続を待機する最大時間。 リッスンを意味します。
さらに、次のパラメータは、コマンドラインオプションを介して(またはコードを介して)設定できます。
"AVOption" s):
rtmp_app
RTMPサーバーに接続するアプリケーションの名前。 このオプションはパラメータを上書きします
URIで指定されます。
rtmp_buffer
クライアントのバッファ時間をミリ秒単位で設定します。 デフォルトは3000です。
rtmp_conn
文字列から解析された、たとえば「B:1」のような追加の任意のAMF接続パラメータ
S:authMe O:1 NN:code:1.23 NS:flag:ok O:0 "。各値の前には、単一の値が付いています。
タイプを表す文字、ブール値を表すB、数値を表すN、文字列を表すS、オブジェクトを表すO、
またはヌルの場合はZ、その後にコロンが続きます。 ブール値の場合、データは0または1のいずれかである必要があります。
それぞれFALSEまたはTRUE。 同様に、オブジェクトの場合、データは0または1で終了する必要があります。
それぞれオブジェクトを開始します。 サブオブジェクトのデータ項目には、接頭辞を付けることで名前を付けることができます。
'N'を入力し、値の前に名前を指定します(つまり、 "NB:myFlag:1")。 これ
オプションを複数回使用して、任意のAMFシーケンスを作成できます。
rtmp_flashver
SWFプレーヤーの実行に使用されるFlashプラグインのバージョン。 デフォルトはLNX9,0,124,2です。
(公開時のデフォルトはFMLE / 3.0(互換性あり; )。)
rtmp_flush_interval
同じリクエストでフラッシュされたパケットの数(RTMPTのみ)。 デフォルトは10です。
rtmp_live
メディアがライブストリームであることを指定します。 ライブストリームで再開したり探したりすることはできません
可能。 デフォルト値は「any」です。これは、サブスクライバーが最初に再生を試みることを意味します
プレイパスで指定されたライブストリーム。 その名前のライブストリームが見つからない場合は、
記録されたストリームを再生します。 他の可能な値は「live」と「recorded」です。
rtmp_pageurl
メディアが埋め込まれたWebページのURL。 デフォルトでは、値は送信されません。
rtmp_playpath
再生または公開するストリーム識別子。 このオプションは、指定されたパラメーターをオーバーライドします
URIで。
rtmp_subscribe
購読するライブストリームの名前。 デフォルトでは、値は送信されません。 それだけです
オプションが指定されている場合、またはrtmp_liveがliveに設定されている場合に送信されます。
rtmp_swfhash
解凍されたSWFファイルのSHA256ハッシュ(32バイト)。
rtmp_swfsize
SWFVerificationに必要な解凍されたSWFファイルのサイズ。
rtmp_swfurl
メディアのSWFプレーヤーのURL。 デフォルトでは、値は送信されません。
rtmp_swfverify
プレーヤーのswfファイルへのURL。ハッシュ/サイズを自動的に計算します。
rtmp_tcurl
ターゲットストリームのURL。 デフォルトはproto:// host [:port] / appです。
たとえば、 再生する アプリケーションからの「サンプル」という名前のマルチメディアリソース
RTMPサーバー「myserver」からの「vod」:
ffplay rtmp:// myserver / vod / sample
パスワードで保護されたサーバーに公開するには、プレイパスとアプリの名前を別々に渡します。
ffmpeg -re -i -f flv -rtmp_playpath some / long / path -rtmp_app long / app / name rtmp:// username:password @ myserver /
RTMPE
暗号化されたリアルタイムメッセージングプロトコル。
暗号化リアルタイムメッセージングプロトコル(RTMPE)は、マルチメディアのストリーミングに使用されます
Diffie-Hellman鍵で構成される、標準の暗号化プリミティブ内のコンテンツ
交換とHMACSHA256、RC4キーのペアを生成します。
rtmp
安全なSSL接続を介したリアルタイムメッセージングプロトコル。
リアルタイムメッセージングプロトコル(RTMPS)は、マルチメディアコンテンツをストリーミングするために使用されます
暗号化された接続。
rtmpt
HTTPを介してトンネリングされたリアルタイムメッセージングプロトコル。
HTTP(RTMPT)を介してトンネリングされたReal-Time MessagingProtocolがストリーミングに使用されます
ファイアウォールを通過するHTTPリクエスト内のマルチメディアコンテンツ。
RTMPTE
HTTPを介してトンネリングされた暗号化されたリアルタイムメッセージングプロトコル。
HTTPを介してトンネリングされた暗号化リアルタイムメッセージングプロトコル(RTMPTE)は、
ファイアウォールを通過するHTTPリクエスト内のマルチメディアコンテンツのストリーミング。
rtmpt
HTTPSを介してトンネリングされたリアルタイムメッセージングプロトコル。
HTTPS(RTMPTS)を介してトンネリングされたReal-Time MessagingProtocolがストリーミングに使用されます
ファイアウォールを通過するHTTPS要求内のマルチメディアコンテンツ。
libsmbクライアント
libsmbclientを使用すると、CIFS / SMBネットワークリソースを操作できます。
次の構文が必要です。
smb:// [[domain:] user [:password @]] server [/ share [/ path [/ file]]]
このプロトコルは、次のオプションを受け入れます。
タイムアウト
基になる低レベルで使用されるソケットI / O操作のミリ秒単位でタイムアウトを設定します
手術。 デフォルトでは-1に設定されています。これは、タイムアウトが指定されていないことを意味します。
切り詰める
1に設定されている場合、書き込み時に既存のファイルを切り捨てます。値0は、切り捨てを防ぎます。
デフォルト値は1です。
workgroup
接続に使用するワークグループを設定します。 デフォルトでは、ワークグループは指定されていません。
詳細については、以下を参照してください。http://www.samba.org/>.
libsh
libsshを介した安全なファイル転送プロトコル
SFTPプロトコルを使用して、リモートリソースからの読み取りまたはリモートリソースへの書き込み。
次の構文が必要です。
sftp:// [user [:password] @] server [:port] /path/to/remote/resource.mpeg
このプロトコルは、次のオプションを受け入れます。
タイムアウト
基になる低レベル操作で使用されるソケットI / O操作のタイムアウトを設定します。 に
デフォルトでは-1に設定されています。これは、タイムアウトが指定されていないことを意味します。
切り詰める
1に設定されている場合、書き込み時に既存のファイルを切り捨てます。値0は、切り捨てを防ぎます。
デフォルト値は1です。
秘密鍵
認証時に使用する秘密鍵を含むファイルのパスを指定します。 に
デフォルトのlibsshは、 〜/ .ssh / ディレクトリにあります。
例:リモートサーバーに保存されているファイルを再生します。
ffプレイftp:// user:password @ server_address:22 / home / user / resource.mpeg
librtmp rtmp、 rtmpe、 rtmps、 rtmpt、 RTMPTE
librtmpを介してサポートされるリアルタイムメッセージングプロトコルとそのバリアント。
構成中にlibrtmpヘッダーとライブラリーが存在する必要があります。 必要がある
「--enable-librtmp」を使用してビルドを明示的に構成します。 有効にすると、これが置き換えられます
ネイティブRTMPプロトコル。
このプロトコルは、サポートに必要なほとんどのクライアント機能といくつかのサーバー機能を提供します
RTMP、HTTPでトンネリングされたRTMP(RTMPT)、暗号化されたRTMP(RTMPE)、SSL / TLSを介したRTMP(RTMPS)、および
これらの暗号化されたタイプのトンネリングされたバリアント(RTMPTE、RTMPTS)。
必要な構文は次のとおりです。
:// [: ] [/ ] [/ ]
コラボレー rtmp_proto 文字列「rtmp」、「rtmpt」、「rtmpe」、「rtmps」、「rtmpte」、
各RTMPバリアントに対応する「rtmpts」、および , ポート, アプリ と プレイパス 持っています
RTMPネイティブプロトコルに指定されているのと同じ意味です。 オプション スペースのリストが含まれています-
フォームの個別のオプション キー=ヴァル.
詳細については、librtmpのマニュアルページ(man 3 librtmp)を参照してください。
たとえば、を使用してファイルをRTMPサーバーにリアルタイムでストリーミングするには ffmpeg:
ffmpeg -re -i myfile -f flv rtmp:// myserver / live / mystream
を使用して同じストリームを再生するには 再生する:
ffplay "rtmp:// myserver / live / mystream live = 1"
RTP
リアルタイムトランスポートプロトコル。
RTP URLに必要な構文は次のとおりです。rtp://hostname[:ポート] [?オプション=ヴァル...]
ポート 使用するRTPポートを指定します。
次のURLオプションがサポートされています。
ttl =n
TTL(Time-To-Live)値を設定します(マルチキャストのみ)。
rtcpport =n
リモートRTCPポートをに設定します n.
localrtpport =n
ローカルRTPポートをに設定します n.
localrtcpport =n'
ローカルRTCPポートをに設定します n.
pkt_size =n
最大パケットサイズ(バイト単位)をに設定します n.
connect = 0 | 1
UDPソケット(1に設定されている場合)で「connect()」を実行するか、実行しない(0に設定されている場合)。
ソース=ip[,ip]
許可された送信元IPアドレスを一覧表示します。
ブロック=ip[,ip]
許可されていない(ブロックされている)送信元IPアドレスを一覧表示します。
write_to_source = 0 | 1
最後に受信したパケットの送信元アドレス(1に設定されている場合)または
デフォルトのリモートアドレス(0に設定されている場合)。
localport =n
ローカルRTPポートをに設定します n.
これは非推奨のオプションです。 その代わり、 ローカルRTポート 使用すべきです。
重要な注意事項:
1。 もし rtcpポート が設定されていない場合、RTCPポートはRTPポート値に1を加えた値に設定されます。
2。 もし ローカルRTポート (ローカルRTPポート)が設定されていない使用可能なポートが使用されます
ローカルRTPおよびRTCPポート。
3。 もし ローカルRTCPポート (ローカルRTCPポート)が設定されていない場合は、ローカルRTPポートに設定されます
値プラス1。
RTSP
リアルタイムストリーミングプロトコル。
RTSPは、技術的にはlibavformatのプロトコルハンドラーではなく、demuxerおよびmuxerです。 The
demuxerは、通常のRTSP(RTPを介して転送されるデータを使用)の両方をサポートします。これは、たとえば次のように使用されます。
AppleおよびMicrosoft)およびReal-RTSP(RDTを介して転送されたデータを使用)。
マルチプレクサを使用して、RTSPANNOUNCEを使用してストリームをサポートしているサーバーに送信できます。
(現在、Darwin StreamingServerとMischaSpiegelmockの
<https://github.com/revmischa/rtsp-server>)。
RTSPURLに必要な構文は次のとおりです。
rtsp:// [: ] /
オプションはで設定することができます ffmpeg/再生する コマンドライン、または「AVOption」またはでコードに設定
「avformat_open_input」。
次のオプションがサポートされています。
初期_一時停止
1に設定されている場合は、ストリームの再生をすぐに開始しないでください。デフォルト値は0です。
rtsp_transport
RTSPトランスポートプロトコルを設定します。
次の値を受け入れます。
UDP 下位のトランスポートプロトコルとしてUDPを使用します。
TCP 下位トランスポートとしてTCP(RTSP制御チャネル内でインターリーブ)を使用する
プロトコル。
udp_マルチキャスト
下位のトランスポートプロトコルとしてUDPマルチキャストを使用します。
HTTP
通過するのに役立つ下位トランスポートプロトコルとしてHTTPトンネリングを使用する
プロキシ。
複数の下位トランスポートプロトコルを指定できます。その場合、それらはXNUMXつ試されます。
一度に(XNUMXつのセットアップが失敗した場合、次のセットアップが試行されます)。 マルチプレクサの場合、
TCP と UDP オプションがサポートされています。
rtsp_flags
RTSPフラグを設定します。
次の値が受け入れられます。
フィルターソース
ネゴシエートされたピアアドレスとポートからのパケットのみを受け入れます。
聞く
サーバーとして機能し、着信接続をリッスンします。
優先_tcp
TCPがRTSPRTPトランスポートとして使用できる場合は、最初にRTPトランスポートにTCPを試してください。
デフォルト値は なし.
allowed_media_types
サーバーから受け入れるメディアタイプを設定します。
次のフラグが受け入れられます。
ビデオ
オーディオ
データ
デフォルトでは、すべてのメディアタイプを受け入れます。
min_port
最小ローカルUDPポートを設定します。 デフォルト値は5000です。
最大ポート
最大ローカルUDPポートを設定します。 デフォルト値は65000です。
タイムアウト
着信接続を待機する最大タイムアウト(秒単位)を設定します。
-1の値は無限を意味します(デフォルト)。 このオプションは、 rtsp_flags に設定
聞く.
reorder_queue_size
並べ替えられたパケットを処理するためにバッファリングするパケット数を設定します。
タイムアウト
ソケットTCPI / Oタイムアウトをマイクロ秒単位で設定します。
ユーザーエージェント
User-Agentヘッダーをオーバーライドします。 指定しない場合、デフォルトでlibavformatになります
識別子文字列。
UDPを介してデータを受信する場合、デマルチプレクサは受信したパケットを並べ替えようとします(
順不同で到着したり、パケットが完全に失われたりする可能性があります)。 これは、設定することで無効にできます
ゼロへの最大デマックス遅延(AVFormatContextの「max_delay」フィールドを介して)。
マルチビットレートのReal-RTSPストリームを視聴する場合 再生する、表示するストリームは
「-vst」で選択 n および「-ast」 n それぞれビデオとオーディオ用で、オンに切り替えることができます
「v」と「a」を押してフライします。
例
次の例はすべて、 再生する と ffmpeg ツール。
・最大再注文遅延0.5秒で、UDPを介してストリームを視聴します。
ffplay -max_delay 500000 -rtsp_transport udp rtsp://server/video.mp4
・HTTPを介してトンネリングされたストリームを監視します。
ffplay -rtsp_transport http rtsp://server/video.mp4
・他の人が視聴できるように、ストリームをRTSPサーバーにリアルタイムで送信します。
ffmpeg -re -i -f rtsp -muxdelay 0.1 rtsp://server/live.sdp
・リアルタイムでストリームを受信します。
ffmpeg -rtsp_flags listen -i rtsp://ownaddress/live.sdp
樹液
セッションアナウンスプロトコル(RFC2974)。 これは技術的にはプロトコルハンドラではありません
libavformat、それはマルチプレクサとデマルチプレクサです。 これは、RTPストリームのシグナリングに使用されます。
別のポートで定期的にストリームのSDPをアナウンスします。
ミュクサー
マルチプレクサに指定されたSAPURLの構文は次のとおりです。
sap:// [: ] [? ]
RTPパケットはに送信されます デスティネーション ポート上 ポート、またはポートがない場合はポート5004に
指定。 オプション 「&」で区切られたリストです。 次のオプションがサポートされています。
announce_addr =住所
アナウンスの送信先IPアドレスを指定します。 省略した場合、
アナウンスは、一般的に使用されるSAPアナウンスマルチキャストアドレスに送信されます
224.2.127.254(sap.mcast.net)、またはff0e :: 2:7ffeの場合 デスティネーション IPv6アドレスです。
アナウンスポート=ポート
アナウンスを送信するポートを指定します。指定しない場合、デフォルトは9875です。
ttl =TTL
アナウンスとRTPパケットの存続時間の値を指定します。デフォルトは255です。
same_port =0 | 1
1に設定すると、すべてのRTPストリームを同じポートペアで送信します。 ゼロ(デフォルト)の場合、すべて
ストリームは一意のポートで送信され、ポートの各ストリームは2よりも大きい番号になります。
前。 VLC / Live555では、ストリームを受信できるように、これを1に設定する必要があります。
受信用のlibavformatのRTPスタックでは、すべてのストリームを一意で送信する必要があります
ポート。
コマンドラインの例を次に示します。
VLCで視聴するために、ローカルサブネットでストリームをブロードキャストするには:
ffmpeg -re -i -f sap sap://224.0.0.255?same_port = 1
同様に、 再生する:
ffmpeg -re -i -f sap sap://224.0.0.255
そしてで見るために 再生する、IPv6経由:
ffmpeg -re -i -f sap sap:// [ff0e :: 1:2:3:4]
デミュクサー
デマルチプレクサに指定されたSAPURLの構文は次のとおりです。
sap:// [ ] [: ]
住所 アナウンスをリッスンするマルチキャストアドレスです。省略した場合、デフォルト
224.2.127.254(sap.mcast.net)が使用されます。 ポート リッスンされているポートです。
省略。
デマルチプレクサは、指定されたアドレスとポートでアナウンスをリッスンします。 一度
アナウンスが受信されると、その特定のストリームを受信しようとします。
コマンドラインの例を次に示します。
通常のSAPマルチキャストアドレスでアナウンスされた最初のストリームを再生するには:
ffplay sap://
デフォルトのIPv6SAPマルチキャストアドレスのXNUMXつでアナウンスされた最初のストリームを再生するには、次のようにします。
ffplay sap:// [ff0e :: 2:7ffe]
sctp
ストリーム制御伝送プロトコル。
受け入れられるURL構文は次のとおりです。
sctp:// : [? ]
プロトコルは次のオプションを受け入れます。
聞く
任意の値に設定されている場合は、着信接続をリッスンします。 発信接続はによって行われます
デフォルト。
最大ストリーム数
ストリームの最大数を設定します。 デフォルトでは、制限は設定されていません。
srtp
安全なリアルタイムトランスポートプロトコル。
受け入れられるオプションは次のとおりです。
srtp_in_suite
srtp_out_suite
入力および出力エンコーディングスイートを選択します。
サポートされている値:
AES_CM_128_HMAC_SHA1_80
SRTP_AES128_CM_HMAC_SHA1_80
AES_CM_128_HMAC_SHA1_32
SRTP_AES128_CM_HMAC_SHA1_32
srtp_in_params
srtp_out_params
base64でエンコードされたコードで表される入力および出力のエンコードパラメータを設定します
バイナリブロックの表現。 このバイナリブロックの最初の16バイトは次のように使用されます
マスターキー。次の14バイトがマスターソルトとして使用されます。
サブファイル
ファイルまたは別のストリームのセグメントを仮想的に抽出します。 基になるストリームは
シーク可能。
受け入れられるオプション:
start
抽出されたセグメントの開始オフセット(バイト単位)。
end 抽出されたセグメントの終了オフセット(バイト単位)。
例:
DVD VOBファイルからチャプターを抽出します(外部で取得した開始セクターと終了セクター、および
2048を掛けたもの):
サブファイル,, start、153391104、end、268142592 ,,:/ media / dvd / VIDEO_TS / VTS_08_1.VOB
TARアーカイブから直接AVIファイルを再生します。
サブファイル,, start、183241728、end、366490624 ,,:archive.tar
TCP
伝送制御プロトコル。
TCPURLに必要な構文は次のとおりです。
tcp:// : [? ]
オプション フォームの&で区切られたオプションのリストが含まれています キー=ヴァル.
サポートされているオプションのリストは次のとおりです。
listen =1 | 0
着信接続をリッスンします。 デフォルト値は0です。
タイムアウト=マイクロ秒
マイクロ秒単位で表される、発生エラータイムアウトを設定します。
このオプションは、読み取りモードにのみ関連します。この時間以上にデータが到着しなかった場合
間隔、エラーを発生させます。
listen_timeout =ミリ秒
ミリ秒単位で表されるリッスンタイムアウトを設定します。
次の例は、リスニングTCP接続をセットアップする方法を示しています。 ffmpegボタンの隣にある
その後、でアクセス 再生する:
ffmpeg -i -f tcp:// : ?聞く
ffplay tcp:// :
TLS
トランスポート層セキュリティ(TLS)/ Secure Sockets Layer(SSL)
TLS / SSLURLに必要な構文は次のとおりです。
tls:// : [? ]
次のパラメータは、コマンドラインオプションを介して(または「AVOption」を介してコードで)設定できます。
ca_file、 cafile =ファイル名
信頼できるものとして扱う認証局(CA)のルート証明書を含むファイル。 もしも
リンクされたTLSライブラリにはデフォルトが含まれているため、これを指定する必要がない場合があります。
検証は機能しますが、すべてのライブラリとセットアップにデフォルトが組み込まれているわけではありません。
ファイルはOpenSSLPEM形式である必要があります。
tls_verify =1 | 0
有効になっている場合は、通信しているピアを確認してみてください。 注意、使用する場合
OpenSSL、これは現在、ピア証明書が次のいずれかによって署名されていることを確認するだけです
CAデータベースのルート証明書ですが、
証明書は、実際に接続しようとしているホスト名と一致します。 (GnuTLSを使用すると、
ホスト名も検証されます。)
これは、CAデータベースがによって提供される必要があるため、デフォルトで無効になっています。
多くの場合、発信者。
cert_file、 cert =ファイル名
ピアとのハンドシェイクで使用する証明書を含むファイル。 (いつ
サーバーとして動作し、リッスンモードでは、これはピアによってより頻繁に必要になりますが、
クライアント証明書は、特定の設定でのみ義務付けられています。)
key_file、 キー=ファイル名
証明書の秘密鍵を含むファイル。
listen =1 | 0
有効になっている場合は、提供されたポートで接続をリッスンし、でサーバーの役割を引き受けます
クライアントロールの代わりにハンドシェイク。
コマンドラインの例:
入力ストリームを提供するTLS / SSLサーバーを作成します。
ffmpeg -i -f tls:// : ?listen&cert = &key =
を使用してTLS / SSLサーバーからストリームを再生するには 再生する:
ffplay tls:// :
UDP
ユーザーデータグラムプロトコル。
UDPURLに必要な構文は次のとおりです。
udp:// : [? ]
オプション フォームの&で区切られたオプションのリストが含まれています キー=ヴァル.
システムでスレッド化が有効になっている場合、循環バッファを使用して
着信データ。これにより、UDPソケットバッファのオーバーランによるデータの損失を減らすことができます。
この fifo_size と オーバーラン_非致命的 オプションはこのバッファに関連しています。
サポートされているオプションのリストは次のとおりです。
buffer_size =サイズ
UDPの最大ソケットバッファサイズをバイト単位で設定します。 これは、
ソケットの用途に応じて、受信または送信バッファサイズ。 デフォルトは
64KB。 も参照してください fifo_size.
localport =ポート
バインドするローカルUDPポートをオーバーライドします。
localaddr =addr
ローカルIPアドレスを選択します。 これは、たとえばマルチキャストを送信し、ホストが
複数のインターフェース。ユーザーは送信するインターフェースを選択できます。
そのインターフェイスのIPアドレスを指定します。
pkt_size =サイズ
UDPパケットのサイズをバイト単位で設定します。
再利用=1 | 0
UDPソケットの再利用を明示的に許可または禁止します。
ttl =TTL
存続時間の値を設定します(マルチキャストの場合のみ)。
connect =1 | 0
「connect()」でUDPソケットを初期化します。 この場合、宛先アドレス
後でff_udp_set_remote_urlで変更することはできません。 宛先アドレスが
最初に知られているように、このオプションはff_udp_set_remote_urlでも指定できます。 これ
getsocknameを使用してパケットの送信元アドレスを見つけることができ、
「destinationunreachable」を受信した場合、書き込みはAVERROR(ECONNREFUSED)で返されます。
受信の場合、これにより、指定されたパケットからのみパケットを受信できるという利点があります。
ピアアドレス/ポート。
ソース=住所[,住所]
指定された送信者IPのXNUMXつからマルチキャストグループに送信されたパケットのみを受信します
アドレス。
ブロック=住所[,住所]
指定された送信者IPアドレスからマルチキャストグループに送信されたパケットを無視します。
fifo_size =ユニット
サイズのあるパケットの数として表されるUDP受信循環バッファサイズを設定します
188バイトの。 指定しない場合、デフォルトは7*4096です。
overrun_nonfatal =1 | 0
UDPが循環バッファオーバーランを受信した場合に存続します。 デフォルト値は0です。
タイムアウト=マイクロ秒
マイクロ秒単位で表される、発生エラータイムアウトを設定します。
このオプションは、読み取りモードにのみ関連します。この時間以上にデータが到着しなかった場合
間隔、エラーを発生させます。
放送=1 | 0
UDPブロードキャストを明示的に許可または禁止します。
ブロードキャストストームのあるネットワークでは、ブロードキャストが正しく機能しない場合があることに注意してください
保護。
例
・ 使用する ffmpeg UDPを介してリモートエンドポイントにストリーミングするには:
ffmpeg -i -f udp:// :
・ 使用する ffmpeg 188サイズのUDPパケットを使用してUDP経由でmpegts形式でストリーミングするには、
大きな入力バッファ:
ffmpeg -i -f mpegts udp:// : ?pkt_size = 188&buffer_size = 65535
・ 使用する ffmpeg リモートエンドポイントからUDPを介して受信するには:
ffmpeg -i udp:// [ ]: ..。
UNIX
Unixローカルソケット
UnixソケットURLに必要な構文は次のとおりです。
unix://
次のパラメータは、コマンドラインオプションを介して(または「AVOption」を介してコードで)設定できます。
タイムアウト
タイムアウト(ミリ秒)。
聞く
リスニングモードでUnixソケットを作成します。
デバイス OPTIONS
libavdeviceライブラリは、libavformatと同じインターフェイスを提供します。 つまり、入力
デバイスはデマルチプレクサのようなものと見なされ、出力デバイスはマルチプレクサのようなものと見なされ、インターフェイス
および汎用デバイスオプションは、libavformatによって提供されるものと同じです(ffmpeg-formatsを参照)
マニュアル)。
さらに、各入力または出力デバイスは、いわゆるプライベートオプションをサポートする場合があります。
そのコンポーネントに固有です。
オプションは、-を指定して設定できます。オプション 値 FFmpegツールで、またはを設定することによって
デバイスの「AVFormatContext」オプションで明示的に値を指定するか、 libavutil / opt.h API
プログラムで使用します。
入力 デバイス
入力デバイスはFFmpegで構成された要素であり、着信データへのアクセスを可能にします
システムに接続されているマルチメディアデバイスから。
FFmpegビルドを構成すると、サポートされているすべての入力デバイスが
デフォルト。 構成オプション「--list-indevs」を使用して、使用可能なすべてのものをリストできます。
構成オプション「--disable-indevs」を使用して、すべての入力デバイスを無効にすることができます。
オプション「--enable-indev=」を使用して入力デバイスを選択的に有効にしますインド"、またはあなたができる
オプション「--disable-indev=」を使用して特定の入力デバイスを無効にしますインド".
ff *ツールのオプション「-devices」は、サポートされている入力デバイスのリストを表示します。
現在利用可能な入力デバイスの説明は次のとおりです。
アルサ
ALSA(Advanced Linux Sound Architecture)入力デバイス。
構成中にこの入力デバイスを有効にするには、libasoundをにインストールする必要があります
システム。
このデバイスは、ALSAデバイスからのキャプチャを可能にします。 キャプチャするデバイスの名前は
ALSAカード識別子である。
ALSA識別子の構文は次のとおりです。
hw: [、 [、 ]]
どこ DEV と サブデブ コンポーネントはオプションです。
XNUMXつの引数(順番に: カード,DEV,サブデブ)カード番号または識別子、デバイスを指定します
番号とサブデバイス番号(-1は任意を意味します)。
システムで現在認識されているカードのリストを確認するには、ファイルを確認してください
/ proc / asound /カード と / proc / asound / devices.
たとえば、 ffmpeg カードID0のALSAデバイスから、
コマンド:
ffmpeg -f alsa -i hw:0 alsaout.wav
詳細については、以下を参照してください。http://www.alsa-project.org/alsa-doc/alsa-lib/pcm.html>
オプション
サンプルレート
サンプルレートをHzで設定します。 デフォルトは48000です。
チャンネル
チャンネル数を設定します。 デフォルトは2です。
アファウンデーション
AVFoundation入力デバイス。
AVFoundationは、OSXでストリームグラブするためにAppleが現在推奨しているフレームワークです> =
10.7およびiOS。 古いQTKitフレームワークは、OSX以降非推奨としてマークされています
バージョン10.7。
入力ファイル名は、次の構文で指定する必要があります。
-i「[[ビデオ]:[オーディオ]]」
最初のエントリはビデオ入力を選択し、後者はオーディオ入力を選択します。 The
ストリームは、デバイスによって示されるように、デバイス名またはデバイスインデックスによって指定する必要があります
リスト。 または、ビデオおよび/またはオーディオ入力デバイスは、インデックスを使用して選択できます。
B <-video_device_index E INDEXE >>
および
B <-audio_device_index E INDEXE >>
、入力ファイル名で指定されたデバイス名またはインデックスを上書きします。
使用可能なすべてのデバイスは、を使用して列挙できます -list_devices true、すべてのデバイスを一覧表示
名前と対応するインデックス。
XNUMXつのデバイス名エイリアスがあります。
"デフォルト"
対応するタイプのAVFoundationデフォルトデバイスを選択します。
"なし"
対応するメディアタイプを記録しないでください。 これは、空を指定するのと同じです
デバイス名またはインデックス。
オプション
AVFoundationは次のオプションをサポートしています。
-list_devices
trueに設定すると、使用可能なすべての入力デバイスのリストが表示され、すべてのデバイスが表示されます
名前とインデックス。
-video_device_index
インデックスでビデオデバイスを指定します。 入力ファイル名で指定されたものをすべてオーバーライドします。
-audio_device_index
オーディオデバイスをインデックスで指定します。 入力ファイル名で指定されたものをすべてオーバーライドします。
-ピクセルフォーマット
特定のピクセル形式を使用するようにビデオデバイスに要求します。 指定された形式が
サポートされていない場合、使用可能な形式のリストが表示され、このリストの最初の形式は次のとおりです。
代わりに使用されます。 使用可能なピクセル形式は次のとおりです。"monob、rgb555be、rgb555le、rgb565be、
rgb565le、rgb24、bgr24、0rgb、bgr0、0bgr、rgb0、
bgr48be、uyvy422、yuva444p、yuva444p16le、yuv444p、yuv422p16、yuv422p10、yuv444p10、
yuv420p、nv12、yuyv422、グレー」
-フレームレート
グラブフレームレートを設定します。 デフォルトは「ntsc」で、のフレームレートに対応します。
「30000/1001」。
-ビデオサイズ
ビデオのフレームサイズを設定します。
-capture_cursor
マウスポインタをキャプチャします。 デフォルトは0です。
-capture_mouse_clicks
画面のマウスクリックをキャプチャします。 デフォルトは0です。
例
・AVFoundationがサポートするデバイスのリストを印刷して終了します。
$ ffmpeg -f avfoundation -list_devices true -i ""
・ビデオデバイス0からのビデオとオーディオデバイス0からのオーディオをout.aviに記録します。
$ ffmpeg -f avfoundation -i "0:0" out.avi
・ビデオデバイス2からのビデオとオーディオデバイス1からのオーディオをout.aviに記録します。
$ ffmpeg -f avfoundation -video_device_index 2 -i ":1" out.avi
・ピクセル形式bgr0を使用して、システムのデフォルトのビデオデバイスからビデオを録画します。
out.aviにオーディオを録音しない:
$ ffmpeg -f avfoundation -pixel_format bgr0 -i "default:none" out.avi
BKTR
BSDビデオ入力デバイス。
オプション
フレームレート
フレームレートを設定します。
ビデオサイズ
ビデオのフレームサイズを設定します。 デフォルトは「vga」です。
標準
使用可能な値は次のとおりです。
パル
NTSC
ドライ
パルン
ヤシ
NTSCJ
デッキリンク
デッキリンク入力デバイスは、BlackmagicDeckLinkデバイスのキャプチャ機能を提供します。
この入力デバイスを有効にするには、Blackmagic DeckLink SDKが必要であり、
適切な「--extra-cflags」および「--extra-ldflags」を使用して構成します。 Windowsでは、
IDLファイルを実行する必要があります 幅.
DeckLinkは、サポートするフォーマットについて非常に慎重です。 ピクセル形式はuyvy422またはv210、
フレームレートとビデオサイズは、デバイスのフレームレートとビデオサイズを決定する必要があります。 -list_formats 1。 オーディオ
サンプルレートは常に48kHzで、チャンネル数は2、8、または16にすることができます。
オプション
リストデバイス
に設定した場合 true、デバイスのリストを印刷して終了します。 デフォルトは false.
リスト形式
に設定した場合 true、サポートされている形式のリストを印刷して終了します。 デフォルトは false.
bm_v210
に設定した場合 1、ビデオはuyvy10ではなく210ビットv422でキャプチャされます。 すべてのBlackmagicが
デバイスはこのオプションをサポートしています。
例
・入力デバイスの一覧表示:
ffmpeg -f Decklink -list_devices1-iダミー
・サポートされている形式を一覧表示します。
ffmpeg -f Decklink -list_formats 1 -i'Intensity Pro'
・1080i50(フォーマット11)でビデオクリップをキャプチャします。
ffmpeg -f Decklink -i'Intensity Pro @ 11' -acodec copy -vcodec copy output.avi
・1080i50ビットでビデオクリップをキャプチャします。
ffmpeg -bm_v210 1 -f Decklink -i'UltraStudio Mini Recorder @ 11' -acodec copy -vcodec copy output.avi
表示する
WindowsDirectShow入力デバイス。
DirectShowのサポートは、FFmpegがmingw-w64プロジェクトでビルドされたときに有効になります。 現在
オーディオデバイスとビデオデバイスのみがサポートされています。
複数のデバイスを別々の入力として開くことができますが、同じもので開くこともできます
入力。これにより、それらの間の同期が改善されます。
入力名は次の形式である必要があります。
= [: = ]
コラボレー タイプ どちらでもかまいません オーディオ or ビデオ, NAME デバイスの名前または代替
名前 ..
オプション
オプションが指定されていない場合、デバイスのデフォルトが使用されます。 デバイスがそうでない場合
要求されたオプションをサポートすると、開くことができなくなります。
ビデオサイズ
キャプチャしたビデオのビデオサイズを設定します。
フレームレート
キャプチャしたビデオのフレームレートを設定します。
サンプルレート
キャプチャしたオーディオのサンプルレート(Hz)を設定します。
サンプルサイズ
キャプチャされたオーディオのサンプルサイズ(ビット単位)を設定します。
チャンネル
キャプチャしたオーディオのチャンネル数を設定します。
リストデバイス
に設定した場合 true、デバイスのリストを印刷して終了します。
リストオプション
に設定した場合 true、選択したデバイスのオプションのリストを印刷して終了します。
video_device_number
同じ名前のデバイスのビデオデバイス番号を設定します(0から始まり、デフォルトは0です)。
オーディオデバイス番号
同じ名前のデバイスのオーディオデバイス番号を設定します(0から始まり、デフォルトは0です)。
ピクセル形式
DirectShowで使用するピクセル形式を選択します。 これは、ビデオが
コーデックがrawvideoに設定または設定されていません。
audio_buffer_size
オーディオデバイスのバッファサイズをミリ秒単位で設定します(これはレイテンシに直接影響する可能性がありますが、
デバイスによって異なります)。 デフォルトでは、オーディオデバイスのデフォルトのバッファサイズを使用します
(通常、500msの倍数)。 この値を低く設定しすぎると、劣化する可能性があります
パフォーマンス。 も参照してください
<http://msdn.microsoft.com/en-us/library/windows/desktop/dd377582(v = vs.85).aspx>
ビデオピン名
名前または別名で使用するビデオキャプチャピンを選択します。
オーディオピン名
名前または別名で使用するオーディオキャプチャピンを選択します。
crossbar_video_input_pin_number
クロスバーデバイスのビデオ入力ピン番号を選択します。 これはクロスバーにルーティングされます
デバイスのビデオデコーダー出力ピン。 この値を変更すると、将来に影響を与える可能性があることに注意してください
システムの再起動が発生するまでの呼び出し(新しいデフォルトを設定)。
crossbar_audio_input_pin_number
クロスバーデバイスのオーディオ入力ピン番号を選択します。 これはクロスバーにルーティングされます
デバイスのオーディオデコーダー出力ピン。 この値を変更すると、将来に影響を与える可能性があることに注意してください
システムの再起動が発生するまでの呼び出し(新しいデフォルトを設定)。
show_video_device_dialog
に設定した場合 true、キャプチャを開始する前に、エンドユーザーに表示ダイアログをポップアップします。
ビデオフィルターのプロパティと構成を手動で変更できるようにします。 ノート
クロスバーデバイスの場合、このダイアログの値を調整する必要がある場合があります。
PAL(25 fps)とNTSC(29.97)の入力フレームレート、サイズ、インターレース、
これらの値を変更すると、さまざまなスキャンレート/フレームレートが有効になり、回避できます。
下部の緑色のバー、点滅するスキャンラインなど。一部のデバイスでは、
これらのプロパティを変更すると、将来の呼び出しにも影響を与える可能性があります(新しいデフォルトを設定します)。
システムの再起動が発生します。
show_audio_device_dialog
に設定した場合 true、キャプチャを開始する前に、エンドユーザーに表示ダイアログをポップアップします。
オーディオフィルターのプロパティと構成を手動で変更できるようにします。
show_video_crossbar_connection_dialog を表示
に設定した場合 true、キャプチャを開始する前に、エンドユーザーに表示ダイアログをポップアップします。
ビデオデバイスを開くときに、クロスバーピンのルーティングを手動で変更できるようにします。
show_audio_crossbar_connection_dialog を表示
に設定した場合 true、キャプチャを開始する前に、エンドユーザーに表示ダイアログをポップアップします。
オーディオデバイスを開くときに、クロスバーのピンルーティングを手動で変更できるようにします。
show_analog_tv_tuner_dialog
に設定した場合 true、キャプチャを開始する前に、エンドユーザーに表示ダイアログをポップアップします。
TVチャンネルと周波数を手動で変更できるようにします。
show_analog_tv_tuner_audio_dialog
に設定した場合 true、キャプチャを開始する前に、エンドユーザーに表示ダイアログをポップアップします。
TVオーディオを手動で変更できるようにします(モノラルとステレオ、言語A、B、Cなど)。
audio_device_load
名前で検索するのではなく、ファイルからオーディオキャプチャフィルターデバイスをロードします。 それはかもしれません
フィルタがそのシリアル化をサポートしている場合は、追加のパラメータもロードします
にプロパティ。 これを使用するには、オーディオキャプチャソースを指定する必要がありますが、
偽物でも何でも。
オーディオデバイス保存
現在使用されているオーディオキャプチャフィルターデバイスとそのパラメーターを保存します(フィルターの場合)
それをサポートします)ファイルに。 同じ名前のファイルが存在する場合、そのファイルは上書きされます。
video_device_load
名前で検索するのではなく、ファイルからビデオキャプチャフィルターデバイスをロードします。 それはかもしれません
フィルタがそのシリアル化をサポートしている場合は、追加のパラメータもロードします
にプロパティ。 これを使用するには、ビデオキャプチャソースを指定する必要がありますが、
偽物でも何でも。
video_device_save
現在使用されているビデオキャプチャフィルターデバイスとそのパラメーターを保存します(フィルターの場合)
それをサポートします)ファイルに。 同じ名前のファイルが存在する場合、そのファイルは上書きされます。
例
・DirectShowでサポートされているデバイスのリストを印刷して終了します。
$ ffmpeg -list_devices true -fdshow-iダミー
・ビデオデバイスを開く カメラ:
$ ffmpeg -f dshow -i video = "Camera"
・名前でXNUMX番目のビデオデバイスを開きます カメラ:
$ ffmpeg -f dshow -video_device_number 1 -i video = "Camera"
・ビデオデバイスを開く カメラ およびオーディオデバイス マイク:
$ ffmpeg -f dshow -i video = "Camera":audio = "Microphone"
・選択したデバイスでサポートされているオプションのリストを印刷して終了します。
$ ffmpeg -list_options true -f dshow -i video = "Camera"
・名前または代替名でキャプチャするピン名を指定し、代替デバイスを指定します
名前:
$ ffmpeg -f dshow -audio_pin_name "Audio Out" -video_pin_name 2 -i video=video="@device_pnp_\\?\pci#ven_1a0a&dev_6200&subsys_62021461&rev_01#4&e2c7dd6&0&00e1#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\{ca465100-deb0-4d59-818f-8c477184adf6}":audio="Microphone"
・クロスバーピンを指定してクロスバーデバイスを構成し、ユーザーがビデオを調整できるようにします
起動時にプロパティをキャプチャします。
$ ffmpeg -f dshow -show_video_device_dialog true -crossbar_video_input_pin_number 0
-crossbar_audio_input_pin_number 3 -i video = "AVerMedia BDA Analog Capture":audio = "AVerMedia BDA Analog Capture"
dv1394
LinuxDV1394入力デバイス。
オプション
フレームレート
フレームレートを設定します。 デフォルトは25です。
標準
使用可能な値は次のとおりです。
パル
NTSC
デフォルト値は「ntsc」です。
FBdev
Linuxフレームバッファ入力デバイス。
Linuxフレームバッファは、グラフィックを表示するためのグラフィックハードウェアに依存しない抽象化レイヤーです。
コンピューターのモニター、通常はコンソール。 ファイルデバイスを介してアクセスします
ノード、通常 / dev / fb0.
詳細については、次のファイルに含まれているDocumentation / fb/framebuffer.txtを参照してください。
Linuxソースツリー。
こちらもご覧くださいhttp://linux-fbdev.sourceforge.net/>、および FBセットとします。
フレームバッファデバイスから記録するには / dev / fb0 ffmpeg:
ffmpeg -f fbdev -framerate 10 -i /dev/fb0 out.avi
次のコマンドを使用して、XNUMXつのスクリーンショット画像を撮ることができます。
ffmpeg -f fbdev -framerate 1 -i / dev / fb0 -frames:v 1screenshot.jpeg
オプション
フレームレート
フレームレートを設定します。 デフォルトは25です。
グディグラブ
Win32GDIベースの画面キャプチャデバイス。
このデバイスを使用すると、Windowsのディスプレイの領域をキャプチャできます。
入力ファイル名にはXNUMXつのオプションがあります。
デスクトップ
or
title =
最初のオプションは、デスクトップ全体、またはデスクトップの固定領域をキャプチャします。 The
XNUMX番目のオプションは、代わりに、そのウィンドウに関係なく、単一のウィンドウのコンテンツをキャプチャします
画面上の位置。
たとえば、を使用してデスクトップ全体を取得するには ffmpeg:
ffmpeg -f gdigrab -framerate 6 -i デスクトップ out.mpg
位置「640」で480x10,20の領域を取得します。
ffmpeg -f gdigrab -framerate 6 -offset_x 10 -offset_y 20 -video_size vga -i デスクトップ出力.mpg
「電卓」という名前のウィンドウの内容を取得します
ffmpeg -f gdigrab -framerate 6 -i title = Calculator out.mpg
オプション
ドローマウス
マウスポインタを描画するかどうかを指定します。 ポインタを描画しない場合は、値0を使用します。
デフォルト値は1です。
フレームレート
グラブフレームレートを設定します。 デフォルト値は「ntsc」で、のフレームレートに対応します。
「30000/1001」。
show_region
取得した領域を画面に表示します。
If show_region が1で指定されている場合、グラブ領域はに示されます。
画面。 このオプションを使用すると、一部だけで何が取得されているかを簡単に知ることができます
画面のをつかみます。
注意してください show_region 単一のウィンドウのコンテンツを取得することと互換性がありません。
例:
ffmpeg -f gdigrab -show_region 1 -framerate 6 -video_size cif -offset_x 10 -offset_y 20 -i デスクトップ out.mpg
ビデオサイズ
ビデオのフレームサイズを設定します。 デフォルトでは、次の場合に全画面をキャプチャします デスクトップ is
選択した場合、またはウィンドウ全体のサイズ title = window_title 選択されています。
オフセット_x
でリージョンをキャプチャする場合 ビデオサイズ、の左端からの距離を設定します
画面またはデスクトップ。
オフセットの計算は、プライマリモニターの左上隅からのものであることに注意してください。
ウィンドウズ。 プライマリモニターの左側にモニターを配置している場合は、
ネガを使用する必要があります オフセット_x 領域をそのモニターに移動する値。
オフセット_y
でリージョンをキャプチャする場合 ビデオサイズ、の上端からの距離を設定します
画面またはデスクトップ。
オフセットの計算は、プライマリモニターの左上隅からのものであることに注意してください。
ウィンドウズ。 プライマリモニターの上にモニターを配置している場合は、次のことを行う必要があります。
ネガを使用する オフセット_y 領域をそのモニターに移動する値。
はい61883
libiec61883を使用したFireWireDV/HDV入力デバイス。
この入力デバイスを有効にするには、libiec61883、libraw1394、およびlibavc1394がにインストールされている必要があります。
あなたのシステム。 構成オプション「--enable-libiec61883」を使用して、デバイスでコンパイルします
有効になりました。
iec61883キャプチャデバイスは、IEEE1394経由で接続されたビデオデバイスからのキャプチャをサポートします
(FireWire)、libiec61883と新しいLinux FireWireスタック(juju)を使用。 これがデフォルトです
Linuxカーネル2.6.37以降のDV/HDV入力方式(古いFireWireスタックは
除去された。
入力ファイルとして使用するFireWireポートを指定するか、「自動」で最初のポートを選択します
接続されています。
オプション
dvtype
DV/HDVの自動検出をオーバーライドします。 これは、自動検出が行われない場合にのみ使用する必要があります
動作する場合、または別のデバイスタイプの使用を禁止する必要がある場合。 DVの扱い
HDVとしてのデバイス(またはその逆)は機能せず、未定義の動作になります。 The
値 オート, dv と HDV サポートされています。
dvバッファ
受信データのバッファの最大サイズをフレーム単位で設定します。 DVの場合、これは正確です
価値。 HDVの場合、HDVのフレームサイズは固定されていないため、正確なフレームではありません。
dvguid
GUIDを指定して、キャプチャデバイスを選択します。 キャプチャは実行されるだけです
指定されたデバイスから送信され、指定されたGUIDを持つデバイスが見つからない場合は失敗します。 これは
複数のデバイスが同時に接続されている場合に入力を選択すると便利です。 見て
/ sys / bus / firewire / devicesで、GUIDを確認してください。
例
・FireWire DV/HDVデバイスの入力を取得して表示します。
ffplay -f iec61883 -i 自動
・100000のパケットバッファを使用して、FireWire DV/HDVデバイスの入力を取得して記録します
ソースがHDVの場合はパケット。
ffmpeg -f iec61883 -i 自動 -hdvbuffer 100000 out.mpg
ジャック
JACK入力デバイス。
構成中にこの入力デバイスを有効にするには、libjackをにインストールする必要があります
システム。
JACK入力デバイスは、オーディオチャネルごとにXNUMXつずつ、XNUMXつ以上のJACK書き込み可能クライアントを作成します。
名前付き クライアント名:入力_Nここで、 クライアント名 アプリケーションによって提供される名前です。
と N チャネルを識別する番号です。 書き込み可能な各クライアントは、
取得したデータをFFmpeg入力デバイスに送信します。
XNUMXつ以上のJACK読み取り可能クライアントを作成したら、それらをXNUMXつに接続する必要があります
以上のJACK書き込み可能クライアント。
JACKクライアントを接続または切断するには、 ジャック接続 と ジャック_切断
プログラム、またはグラフィカルインターフェイスを介してそれを行う qjackctl.
JACKクライアントとそのプロパティを一覧表示するには、コマンドを呼び出すことができます ジャック_lsp.
JACK読み取り可能クライアントをキャプチャする方法を示す例に従います。 ffmpeg.
#「ffmpeg」という名前のJACK書き込み可能クライアントを作成します。
$ ffmpeg -f ジャック -i ffmpeg -y out.wav
#サンプルのjack_metro読み取り可能クライアントを起動します。
$ ジャックメトロ -b 120 -d 0.2 -f 4000
#現在のJACKクライアントを一覧表示します。
$ jack_lsp -c
system:capture_1
system:capture_2
system:playback_1
system:playback_2
ffmpeg:input_1
メトロ:120_bpm
#メトロをffmpeg書き込み可能クライアントに接続します。
$ jack_connect Metro:120_bpm ffmpeg:input_1
詳細については、以下をお読みください。http://jackaudio.org/>
オプション
チャンネル
チャンネル数を設定します。 デフォルトは2です。
ラフフィ
Libavfilter入力仮想デバイス。
この入力デバイスは、libavfilterフィルターグラフの開いている出力パッドからデータを読み取ります。
フィルタグラフのオープン出力ごとに、入力デバイスは対応するストリームを作成します
これは、生成された出力にマップされます。 現在、ビデオデータのみがサポートされています。 The
filtergraphはオプションで指定されます グラフ.
オプション
グラフ
入力として使用するフィルターグラフを指定します。 各ビデオオープン出力には、
「out」という形式の一意の文字列N"、 どこ N は0から始まる数字で、
デバイスによって生成されたマップされた入力ストリーム。 最初のラベルのない出力は
「out0」ラベルに自動的に割り当てられますが、他のすべては指定する必要があります
明示的に
接尾辞「+subcc」を出力ラベルに追加して、次のような追加のストリームを作成できます。
その出力に添付されたクローズドキャプションパケット(実験的。EIA-608のみ/
今のところCEA-708)。 subccストリームは、すべての通常のストリームの後に作成されます。
対応するストリームの順序。 たとえば、「out19 + subcc」がある場合、
「out7+subcc」から「out42」までのストリーム#43は、ストリーム#7とストリーム#44のサブCCです。
ストリーム#19のsubccです。
指定しない場合、デフォルトで入力デバイスに指定されたファイル名になります。
グラフファイル
読み取って他のフィルターに送信するフィルターグラフのファイル名を設定します。 構文
フィルタグラフのは、オプションで指定されたものと同じです。 グラフ.
ダンプグラフ
グラフをstderrにダンプします。
例
・カラービデオストリームを作成し、それを再生します 再生する:
ffplay -f lavfi -graph "color = c =pink[out0]"ダミー
・前の例と同じですが、グラフの説明を指定するためにファイル名を使用し、
「out0」ラベルを省略します。
ffplay -f lavfi color = c = pink
・XNUMXつの異なるビデオテストフィルターソースを作成し、それらを再生します。
ffplay -f lavfi -graph "testsrc [out0]; testsrc、hflip [out1]; testsrc、negate [out2]" test3
・amovieソースを使用してファイルからオーディオストリームを読み取り、次のコマンドで再生します。 再生する:
ffplay -f lavfi "amovie = test.wav"
・オーディオストリームとビデオストリームを読み取り、で再生します 再生する:
ffplay -f lavfi "movie = test.avi [out0]; amovie = test.wav [out1]"
・デコードされたフレームを画像にダンプし、クローズドキャプションをファイルにダンプします(実験的):
ffmpeg -f lavfi -i "movie = test.ts [out0 + subcc]" -map v frame%08d.png -map s -c copy -f rawvideo subcc.bin
libcdio
libcdioをベースにしたオーディオCD入力デバイス。
構成中にこの入力デバイスを有効にするには、libcdioをにインストールする必要があります
システム。 構成オプション「--enable-libcdio」が必要です。
このデバイスを使用すると、オーディオCDを再生および取得できます。
たとえば、 ffmpeg オーディオCD全体 / dev / sr0、次のコマンドを実行できます。
ffmpeg -f libcdio -i / dev / sr0 cd.wav
オプション
スピード
ドライブの読み取り速度を設定します。 デフォルト値は0です。
速度は指定されたCD-ROM速度単位です。 速度はlibcdioを介して設定されます
「cdio_cddap_speed_set」関数。 多くのCD-ROMドライブで、大きすぎる値を指定する
最速の速度を使用することになります。
パラノイアモード
パラノイア回復モードフラグを設定します。 次のいずれかの値を受け入れます。
disable
確認する
オーバーラップ
決してスキップしない
フル
デフォルト値は disable.
利用可能なリカバリモードの詳細については、paranoiaプロジェクトを参照してください
のドキュメントで詳しく説明されています)。
libdc1394
libdc1394およびlibraw1394に基づくIIDC1394入力デバイス。
構成オプション「--enable-libdc1394」が必要です。
オープン
OpenAL入力デバイスは、OpenAL1.1が機能しているすべてのシステムでオーディオキャプチャを提供します
インプリメンテーション。
構成中にこの入力デバイスを有効にするには、OpenALヘッダーとライブラリが必要です
システムにインストールされており、「-enable-openal」を使用してFFmpegを構成する必要があります。
OpenALヘッダーとライブラリは、OpenAL実装の一部として提供する必要があります。
追加のダウンロード(SDK)として。 インストールによっては、指定する必要がある場合があります
ビルドを許可するための「--extra-cflags」および「--extra-ldflags」を介した追加のフラグ
OpenALヘッダーとライブラリを見つけるためのシステム。
OpenAL実装の不完全なリストは次のとおりです。
クリエイティブ
サポートされているハードウェアアクセラレーションを提供する公式のWindows実装
デバイスとソフトウェアのフォールバック。 見るhttp://openal.org/>.
OpenAL ソフト
ポータブルなオープンソース(LGPL)ソフトウェアの実装。 ほとんどのバックエンドが含まれています
Windows、Linux、Solaris、およびBSDオペレーティングシステムでの一般的なサウンドAPI。 見る
<http://kcat.strangesoft.net/openal.html>.
Apple
OpenALは、公式のMacOSXオーディオインターフェイスであるCoreAudioの一部です。 見る
<http://developer.apple.com/technologies/mac/audio-and-video.html>
このデバイスを使用すると、OpenALを介して処理されるオーディオ入力デバイスからキャプチャできます。
提供されたファイル名でキャプチャするデバイスの名前を指定する必要があります。 の場合
空の文字列を指定すると、デバイスはデフォルトのデバイスを自動的に選択します。 あなたはできる
オプションを使用して、サポートされているデバイスのリストを取得します リストデバイス.
オプション
チャンネル
キャプチャしたオーディオのチャンネル数を設定します。 値のみ 1 (モノラル)と 2
(ステレオ)は現在サポートされています。 デフォルトは 2.
サンプルサイズ
キャプチャされたオーディオのサンプルサイズ(ビット単位)を設定します。 値のみ 8 と 16
現在サポートされています。 デフォルトは 16.
サンプルレート
キャプチャしたオーディオのサンプルレート(Hz)を設定します。 デフォルトは 44.1k.
リストデバイス
に設定した場合 true、デバイスのリストを印刷して終了します。 デフォルトは false.
例
OpenALでサポートされているデバイスのリストを印刷して終了します。
$ ffmpeg -list_devices true -fopenal-iダミーout.ogg
OpenALデバイスからのキャプチャ DR-BT101 、 PulseAudio:
$ ffmpeg -f openal -i'DR-BT101 via PulseAudio' out.ogg
デフォルトのデバイスからキャプチャします(ファイル名として空の文字列''に注意してください):
$ ffmpeg -f openal -i'' out.ogg
XNUMXつのデバイスから同時にキャプチャし、同じ内のXNUMXつの異なるファイルに書き込みます
ffmpeg コマンド:
$ ffmpeg -f openal -i'DR-BT101 via PulseAudio' out1.ogg -f openal -i'ALSA Default' out2.ogg
注:すべてのOpenAL実装が複数の同時キャプチャをサポートしているわけではありません-試してみてください
上記が機能しない場合は、最新のOpenALSoft。
センター
SoundSystem入力デバイスを開きます。
入力デバイスに提供するファイル名は、OSS入力を表すデバイスノードです。
デバイスであり、通常は / dev / dsp.
たとえば、から取得するには / dev / dsp ffmpeg 次のコマンドを使用します。
ffmpeg -f oss -i /dev/dsp /tmp/oss.wav
OSSの詳細については、以下を参照してください。http://manuals.opensound.com/usersguide/dsp.html>
オプション
サンプルレート
サンプルレートをHzで設定します。 デフォルトは48000です。
チャンネル
チャンネル数を設定します。 デフォルトは2です。
パルス
PulseAudio入力デバイス。
この出力デバイスを有効にするには、「-enable-libpulse」を使用してFFmpegを設定する必要があります。
入力デバイスに提供するファイル名は、ソースデバイスまたは文字列「default」です。
PulseAudioソースデバイスとそのプロパティを一覧表示するには、コマンドを呼び出すことができます
パクトル リスト ソース.
PulseAudioの詳細については、http://www.pulseaudio.org>.
オプション
IPアドレスで指定された特定のPulseAudioサーバーに接続します。 デフォルトサーバー
提供されていない場合に使用されます。
名
アクティブなクライアントを表示するときにPulseAudioが使用するアプリケーション名を指定します
デフォルトは「LIBAVFORMAT_IDENT」文字列です。
ストリーム名
アクティブなストリームを表示するときにPulseAudioが使用するストリーム名を指定します。デフォルトでは
「記録」です。
サンプルレート
サンプルレートをHzで指定します。デフォルトでは、48kHzが使用されます。
チャンネル
使用するチャンネルを指定します。デフォルトでは2(ステレオ)が設定されています。
フレームサイズ
フレームあたりのバイト数を指定します。デフォルトでは1024に設定されています。
Fragment_size
PulseAudioで最小のバッファリングフラグメントを指定します。これはオーディオに影響します
レイテンシー。 デフォルトでは設定されていません。
壁時計
現在の時刻を使用して初期PTSを設定します。 デフォルトは1です。
例
デフォルトのデバイスからのストリームを記録します。
ffmpeg -f pulse -i デフォルト /tmp/pulse.wav
qtkit
QTKit入力デバイス。
入力として渡されたファイル名は、デバイス名またはインデックスのいずれかを含むように解析されます。 ザ
デバイスインデックスは、-video_device_indexを使用して指定することもできます。 特定のデバイスインデックスは
任意のデバイス名を上書きします。 目的のデバイスが数字のみで構成されている場合は、
-それを識別するためのvideo_device_index。 空の文字列の場合、デフォルトのデバイスが選択されます
または、デバイス名「default」が指定されます。 利用可能なデバイスは、を使用して列挙できます
-list_devices。
ffmpeg -f qtkit -i "0" out.mpg
ffmpeg -f qtkit -video_device_index 0 -i "" out.mpg
ffmpeg -f qtkit -i "default" out.mpg
ffmpeg -f qtkit -list_devices true -i ""
オプション
フレームレート
フレームレートを設定します。 デフォルトは30です。
リストデバイス
「true」に設定されている場合は、デバイスのリストを印刷して終了します。 デフォルトは「false」です。
ビデオデバイスインデックス
同じ名前(0から始まる)のデバイスのインデックスでビデオデバイスを選択します。
スンディオ
sndio入力デバイス。
構成中にこの入力デバイスを有効にするには、libsndioをにインストールする必要があります
システム。
入力デバイスに提供するファイル名は、sndioを表すデバイスノードです。
入力デバイスであり、通常は / dev / audio0.
たとえば、から取得するには / dev / audio0 ffmpeg 次のコマンドを使用します。
ffmpeg -f sndio -i /dev/audio0 /tmp/oss.wav
オプション
サンプルレート
サンプルレートをHzで設定します。 デフォルトは48000です。
チャンネル
チャンネル数を設定します。 デフォルトは2です。
video4linux2、 v4l2
Video4Linux2入力ビデオデバイス。
「v4l2」は「video4linux2」のエイリアスとして使用できます。
FFmpegがv4l-utilsサポートで構築されている場合(「--enable-libv4l2」configureを使用して
オプション)、「-use_libv4l2」入力デバイスオプションで使用することができます。
取得するデバイスの名前はファイルデバイスノードであり、通常、Linuxシステムは
デバイス(USB Webカメラなど)がに接続されると、このようなノードが自動的に作成されます。
システム、および種類の名前を持っています / dev / videoNここで、 N に関連付けられている番号です
デバイス。
Video4Linux2デバイスは通常、限られたセットをサポートします 幅x高さ サイズとフレームレート。
どちらがサポートされているかを確認できます -list_formats を Video4Linux2デバイスの場合。 いくつか
TVカードなどのデバイスは、XNUMXつ以上の規格をサポートしています。 すべてをリストすることが可能です
を使用してサポートされている標準 -list_standards を.
タイムスタンプのタイムベースは1マイクロ秒です。 カーネルのバージョンに応じて
構成では、タイムスタンプはリアルタイムクロック(Unixで発生)から取得できます。
エポック)または単調クロック(通常は起動時に発生し、NTPまたは手動の影響を受けません)
時計に変わります)。 The -タイムスタンプ 腹筋 or -NS 腹筋 オプションを使用して強制することができます
リアルタイムクロックへの変換。
video4linux2デバイスのいくつかの使用例 ffmpeg と 再生する:
・video4linux2デバイスでサポートされている形式を一覧表示します。
ffplay -f video4linux2 -list_formats all / dev / video0
・video4linux2デバイスの入力を取得して表示します。
ffplay -f video4linux2 -framerate 30 -video_size hd720 / dev / video0
・video4linux2デバイスの入力を取得して記録し、フレームレートとサイズを次のように残します
以前に設定:
ffmpeg -f video4linux2 -input_format mjpeg -i /dev/video0 out.mpeg
Video4Linuxの詳細については、次を確認してください。http://linuxtv.org/>.
オプション
標準
基準を設定します。 サポートされている標準の名前である必要があります。 のリストを取得するには
サポートされている標準、 リスト標準 オプションを選択します。
チャンネル
入力チャンネル番号を設定します。 デフォルトは-1です。これは、以前に選択したものを使用することを意味します
チャンネル。
ビデオサイズ
ビデオのフレームサイズを設定します。 引数は次の形式の文字列である必要があります WIDTHxHEIGHT または
有効なサイズの省略形。
ピクセル形式
ピクセル形式を選択します(生のビデオ入力にのみ有効)。
入力形式
優先するピクセル形式(生のビデオの場合)またはコーデック名を設定します。 このオプションにより、
複数の場合、XNUMXつは入力形式を選択します。
フレームレート
優先するビデオフレームレートを設定します。
リスト形式
使用可能な形式(サポートされているピクセル形式、コーデック、およびフレームサイズ)を一覧表示して終了します。
使用可能な値は次のとおりです。
を 使用可能なすべての(圧縮および非圧縮)形式を表示します。
生 生のビデオ(非圧縮)形式のみを表示します。
圧縮された
圧縮された形式のみを表示します。
リスト標準
サポートされている標準を一覧表示して終了します。
使用可能な値は次のとおりです。
を サポートされているすべての標準を表示します。
タイムスタンプ、 ts
取得したフレームのタイムスタンプのタイプを設定します。
使用可能な値は次のとおりです。
デフォルト
カーネルからのタイムスタンプを使用します。
腹筋 絶対タイムスタンプ(壁掛け時計)を使用します。
モノ2アブス
単調なタイムスタンプから絶対的なタイムスタンプへの変換を強制します。
デフォルト値は「default」です。
use_libv4l2
libv4l2(v4l-utils)変換関数を使用します。 デフォルトは0です。
vfwcap
VfW(Video for Windows)キャプチャ入力デバイス。
入力として渡されるファイル名は、0〜9の範囲のキャプチャドライバ番号です。
ドライバーのリストを印刷するには、ファイル名として「list」を使用します。 その他のファイル名は解釈されます
デバイス番号0として。
オプション
ビデオサイズ
ビデオのフレームサイズを設定します。
フレームレート
グラブフレームレートを設定します。 デフォルト値は「ntsc」で、のフレームレートに対応します。
「30000/1001」。
x11グラブ
X11ビデオ入力デバイス。
設定中にこの入力デバイスを有効にするには、システムにlibxcbをインストールする必要があります。
設定時に自動的に検出されます。
または、構成オプション --enable-x11grab レガシーXlibユーザーのために存在します。
このデバイスを使用すると、X11ディスプレイの領域をキャプチャできます。
入力として渡されるファイル名の構文は次のとおりです。
[ ]: 。 [+ 、 ]
hostname:表示番号.スクリーン番号 取得する画面のX11表示名を指定します
から。 hostname 省略可能で、デフォルトは「localhost」です。 環境変数
DISPLAY デフォルトの表示名が含まれています。
x_オフセット と y_offset 左上を基準にしたグラブ領域のオフセットを指定します
X11画面の境界線。 デフォルトは0です。
X11のドキュメントを確認してください(例: man X)詳細については。
xdpyinfo X11のプロパティに関する基本情報を取得するためのプログラム
表示(例:「name」または「dimensions」のgrep)。
たとえば、から取得するには :0.0 ffmpeg:
ffmpeg -f x11grab -framerate 25 -video_size cif -i:0.0 out.mpg
位置「10,20」でつかみます:
ffmpeg -f x11grab -framerate 25 -video_size cif -i:0.0 + 10,20 out.mpg
オプション
ドローマウス
マウスポインタを描画するかどうかを指定します。 値0は、描画しないことを指定します
ポインタ。 デフォルト値は1です。
フォローマウス
つかんだ領域をマウスに追従させます。 引数は「中央」またはいくつかの
ピクセル ピクセル.
「centered」で指定した場合、グラブ領域はマウスポインタの後に続きます
ポインタを領域の中央に保持します。 それ以外の場合、領域は次の場合にのみ続きます
マウスポインタが ピクセル (ゼロより大きい)領域の端まで。
例:
ffmpeg -f x11grab -follow_mouse centered -framerate 25 -video_size cif -i:0.0 out.mpg
マウスポインタが端まで100ピクセル以内に達したときにのみフォローするには:
ffmpeg -f x11grab -follow_mouse 100 -framerate 25 -video_size cif -i:0.0 out.mpg
フレームレート
グラブフレームレートを設定します。 デフォルト値は「ntsc」で、のフレームレートに対応します。
「30000/1001」。
show_region
取得した領域を画面に表示します。
If show_region が1で指定されている場合、グラブ領域はに示されます。
画面。 このオプションを使用すると、一部だけで何が取得されているかを簡単に知ることができます
画面のをつかみます。
地域境界線
次の場合に領域の境界の厚さを設定します -show_region 1 使用されている。 範囲は1〜128で、
デフォルトは3です(XCBベースのx11grabのみ)。
例:
ffmpeg -f x11grab -show_region 1 -framerate 25 -video_size cif -i:0.0 + 10,20 out.mpg
連絡先 フォローマウス:
ffmpeg -f x11grab -follow_mouse centered -show_region 1 -framerate 25 -video_size cif -i:0.0 out.mpg
ビデオサイズ
ビデオのフレームサイズを設定します。 デフォルト値は「vga」です。
use_shm
共有メモリにはMIT-SHM拡張機能を使用してください。 デフォルト値は1です。必要な場合があります
リモートディスプレイで無効にします(レガシーx11grabのみ)。
つかむ_x グラブ AVオプション
構文は次のとおりです。
-grab_x -grab_y
グラブ領域の座標を設定します。 それらは左上隅からのオフセットとして表されます
X11ウィンドウの。 デフォルト値は0です。
出力 デバイス
出力デバイスは、マルチメディアデータを書き込み可能なFFmpegの構成要素です。
システムに接続されている出力デバイス。
FFmpegビルドを構成すると、サポートされているすべての出力デバイスが
デフォルト。 構成オプション「--list-outdevs」を使用して、使用可能なすべてのものをリストできます。
構成オプション「--disable-outdevs」を使用して、すべての出力デバイスを無効にすることができます。
オプション「--enable-outdev=」を使用して、出力デバイスを選択的に有効にします。アウトデヴ"、またはあなたができる
オプション「--disable-outdev=」を使用して特定の入力デバイスを無効にしますアウトデヴ".
ff *ツールのオプション「-devices」は、有効な出力デバイスのリストを表示します。
現在利用可能な出力デバイスの説明は次のとおりです。
アルサ
ALSA(Advanced Linux Sound Architecture)出力デバイス。
例
・デフォルトのALSAデバイスでファイルを再生します。
ffmpeg -i INPUT -f alsa デフォルト
・サウンドカード1、オーディオデバイス7でファイルを再生します。
ffmpeg -i INPUT -f alsa hw:1,7
うんち
CACA出力デバイス。
この出力デバイスを使用すると、CACAウィンドウにビデオストリームを表示できます。 XNUMXつのCACAウィンドウのみ
アプリケーションごとに許可されるため、この出力デバイスのインスタンスをXNUMXつだけ持つことができます。
アプリケーション。
この出力デバイスを有効にするには、「-enable-libcaca」を使用してFFmpegを設定する必要があります。
libcacaは、ピクセルの代わりにテキストを出力するグラフィックライブラリです。
libcacaの詳細については、以下を確認してください。http://caca.zoy.org/wiki/libcaca>
オプション
ウィンドウタイトル
CACAウィンドウのタイトルを設定します。指定されていない場合は、デフォルトで、
出力機器。
ウィンドウサイズ
CACAウィンドウサイズを設定します。フォームの文字列にすることができます 幅x高さ またはビデオサイズ
略語。 指定しない場合、デフォルトで入力ビデオのサイズになります。
ドライバー
ディスプレイドライバを設定します。
アルゴリズム
ディザリングアルゴリズムを設定します。 レンダリングされる画像にはディザリングが必要です
通常、利用可能なパレットよりもはるかに多くの色。 受け入れられる値が一覧表示されます
「-list_ditherアルゴリズム」を使用します。
アンチエイリアス
アンチエイリアスメソッドを設定します。 アンチエイリアスは、レンダリングされた画像を滑らかにし、
一般的に見られる階段効果。 受け入れられる値は「-list_dither」でリストされます
アンチエイリアス」。
文字セット
テキストをレンダリングするときに使用する文字を設定します。 許容値
「-list_dithercharsets」でリストされます。
カラー
テキストをレンダリングするときに使用する色を設定します。 受け入れられる値は、
「-list_dithercolors」。
リストドライバー
に設定した場合 true、使用可能なドライバのリストを印刷して終了します。
リストディザ
引数に関連する使用可能なディザオプションを一覧表示します。 引数は次のいずれかである必要があります
「アルゴリズム」、「アンチエイリアス」、「文字セット」、「色」。
例
・次のコマンドは、 ffmpeg 出力はCACAウィンドウであり、そのサイズを
80x25:
ffmpeg -i INPUT -vcodec rawvideo -pix_fmt rgb24 -window_size 80x25 -f caca-
・使用可能なドライバーのリストを表示して終了します。
ffmpeg -i INPUT -pix_fmt rgb24 -f caca -list_driverstrue-
・利用可能なディザカラーのリストを表示して終了します。
ffmpeg -i INPUT -pix_fmt rgb24 -f caca -list_dithercolors-
デッキリンク
デッキリンク出力デバイスは、BlackmagicDeckLinkデバイスの再生機能を提供します。
この出力デバイスを有効にするには、Blackmagic DeckLink SDKが必要であり、
適切な「--extra-cflags」および「--extra-ldflags」を使用して構成します。 Windowsでは、
IDLファイルを実行する必要があります 幅.
DeckLinkは、サポートするフォーマットについて非常に慎重です。 ピクセル形式は常にuyvy422であり、
フレームレートとビデオサイズは、デバイスのフレームレートとビデオサイズを決定する必要があります。 -list_formats 1。 オーディオ
サンプルレートは常に48kHzです。
オプション
リストデバイス
に設定した場合 true、デバイスのリストを印刷して終了します。 デフォルトは false.
リスト形式
に設定した場合 true、サポートされている形式のリストを印刷して終了します。 デフォルトは false.
プレロール
ビデオをプリロールする時間(秒単位)。 デフォルトは 0.5.
例
・出力デバイスの一覧表示:
ffmpeg -i test.avi -f Decklink-list_devices1ダミー
・サポートされている形式を一覧表示します。
ffmpeg -i test.avi -f Decklink -list_formats1'DeckLinkミニモニター'
・ビデオクリップを再生します。
ffmpeg -i test.avi -f Decklink -pix_fmtuyvy422'DeckLinkミニモニター'
・非標準のフレームレートまたはビデオサイズでビデオクリップを再生します。
ffmpeg -i test.avi -f Decklink -pix_fmt uyvy422 -s 720x486 -r24000/1001'DeckLinkミニモニター'
FBdev
Linuxフレームバッファ出力デバイス。
Linuxフレームバッファは、グラフィックを表示するためのグラフィックハードウェアに依存しない抽象化レイヤーです。
コンピューターのモニター、通常はコンソール。 ファイルデバイスを介してアクセスします
ノード、通常 / dev / fb0.
詳細については、ファイルをお読みください Documentation / fb / framebuffer.txt に含まれます
Linuxソースツリー。
オプション
xオフセット
ヨオフセット
左上隅のx/y座標を設定します。 デフォルトは0です。
例
フレームバッファデバイスでファイルを再生する / dev / fb0。 必要なピクセルフォーマットは現在のものによって異なります
フレームバッファ設定。
ffmpeg -re -i INPUT -vcodec rawvideo -pix_fmt bgra -f fbdev / dev / fb0
こちらもご覧くださいhttp://linux-fbdev.sourceforge.net/>、および FBセットとします。
OpenGLの
OpenGL出力デバイス。
この出力デバイスを有効にするには、「-enable-opengl」を使用してFFmpegを設定する必要があります。
この出力デバイスを使用すると、OpenGLコンテキストにレンダリングできます。 コンテキストはによって提供される場合があります
アプリケーションまたはデフォルトのSDLウィンドウが作成されます。
デバイスが外部コンテキストにレンダリングする場合、アプリケーションは次のハンドラーを実装する必要があります
メッセージ:"AV_DEV_TO_APP_CREATE_WINDOW_BUFFER"-現在のスレッドでOpenGLコンテキストを作成します。
"AV_DEV_TO_APP_PREPARE_WINDOW_BUFFER"-OpenGLコンテキストを最新にします。
「AV_DEV_TO_APP_DISPLAY_WINDOW_BUFFER」-バッファを交換します。
"AV_DEV_TO_APP_DESTROY_WINDOW_BUFFER"-OpenGLコンテキストを破棄します。 アプリケーションも
送信して現在の解像度についてデバイスに通知する必要があります
「AV_APP_TO_DEV_WINDOW_SIZE」メッセージ。
オプション
背景
背景色を設定します。 黒がデフォルトです。
ウィンドウなし
ゼロ以外の値に設定すると、デフォルトのSDLウィンドウが無効になります。 アプリケーションは提供する必要があります
OpenGLコンテキストと、「window_size_cb」と「window_swap_buffers_cb」の両方のコールバック
設定します。
ウィンドウタイトル
SDLウィンドウのタイトルを設定します。指定されていない場合は、デフォルトで、
出力機器。 無視される場合 ウィンドウなし 設定されています。
ウィンドウサイズ
優先ウィンドウサイズを設定します。widthxheightまたはビデオサイズの形式の文字列にすることができます
略語。 指定しない場合、デフォルトで入力ビデオのサイズに縮小されます
アスペクト比に応じて。 主に次の場合に使用可能 ウィンドウなし 設定されていません。
例
OpenGLレンダリングを使用してSDLウィンドウでファイルを再生します。
ffmpeg -i INPUT -fopengl"ウィンドウタイトル"
センター
OSS(Open Sound System)出力デバイス。
パルス
PulseAudio出力デバイス。
この出力デバイスを有効にするには、「-enable-libpulse」を使用してFFmpegを設定する必要があります。
PulseAudioの詳細については、http://www.pulseaudio.org>
オプション
IPアドレスで指定された特定のPulseAudioサーバーに接続します。 デフォルトサーバー
提供されていない場合に使用されます。
名
アクティブなクライアントを表示するときにPulseAudioが使用するアプリケーション名を指定します
デフォルトは「LIBAVFORMAT_IDENT」文字列です。
ストリーム名
アクティブなストリームを表示するときにPulseAudioが使用するストリーム名を指定します。デフォルトでは
指定された出力名に設定されます。
デバイス
使用するデバイスを指定します。 提供されていない場合は、デフォルトのデバイスが使用されます。 出力のリスト
デバイスはコマンドで取得できます パクトル リスト シンク.
バッファサイズ
バッファー期間
PulseAudioバッファのサイズと期間を制御します。 小さなバッファはより多くを与えます
制御しますが、より頻繁な更新が必要です。
バッファサイズ サイズをバイト単位で指定します バッファー期間 期間を指定します
ミリ秒。
両方のオプションが提供されている場合、最大値が使用されます(期間は
ストリームパラメータを使用してバイトに再計算されます)。 それらが0に設定されている場合(これは
デフォルト)、デバイスはデフォルトのPulseAudio継続時間値を使用します。 デフォルトでは
PulseAudioはバッファ期間を約2秒に設定しました。
プレバッファ
プリバッファリングサイズをバイト単位で指定します。 サーバーは、以前の再生で開始しません
最低 プレバッファ バイトはバッファで利用可能です。 デフォルトでは、このオプションは初期化されています
と同じ値に バッファサイズ or バッファー期間 (どちらか大きい方)。
最小要求
最小リクエストサイズをバイト単位で指定します。 サーバーは以下を要求しません 最小要求
クライアントからのバイト数。代わりに、バッファが十分に解放されてさらに要求できるようになるまで待機します。
一度にバイト。 このオプションを設定しないことをお勧めします。これにより、これが次のように初期化されます。
サーバーが適切と見なす値。
例
デフォルトサーバーのデフォルトデバイスでファイルを再生します。
ffmpeg -iINPUT-fパルス「ストリーム名」
SDL
SDL(Simple DirectMedia Layer)出力デバイス。
この出力デバイスを使用すると、SDLウィンドウにビデオストリームを表示できます。 SDLウィンドウはXNUMXつだけ
アプリケーションごとに許可されるため、この出力デバイスのインスタンスをXNUMXつだけ持つことができます。
アプリケーション。
この出力デバイスを有効にするには、構成時にlibsdlをシステムにインストールする必要があります
あなたのビルド。
SDLの詳細については、以下を確認してください。http://www.libsdl.org/>
オプション
ウィンドウタイトル
SDLウィンドウのタイトルを設定します。指定されていない場合は、デフォルトで、
出力機器。
icon_title
アイコン化されたSDLウィンドウの名前を設定します。指定されていない場合は、同じ値に設定されます
of ウィンドウタイトル.
ウィンドウサイズ
SDLウィンドウサイズを設定します。フォームの文字列にすることができます 幅x高さ またはビデオサイズ
略語。 指定しない場合、デフォルトで入力ビデオのサイズに縮小されます
アスペクト比に応じて。
ウィンドウ_フルスクリーン
ゼロ以外の値が指定されている場合は、フルスクリーンモードを設定します。 デフォルト値はゼロです。
対話 コマンド
デバイスによって作成されたウィンドウは、次のインタラクティブな方法で制御できます
コマンド。
q, ESC
すぐにデバイスを終了します。
例
次のコマンドは、 ffmpeg 出力はSDLウィンドウであり、そのサイズを
qcif形式:
ffmpeg -i INPUT -vcodec rawvideo -pix_fmt yuv420p -window_size qcif -fsdl"SDL出力"
スンディオ
sndioオーディオ出力デバイス。
xv
XV(XVideo)出力デバイス。
この出力デバイスを使用すると、XWindowSystemウィンドウにビデオストリームを表示できます。
オプション
DISPLAY_NAME
ディスプレイと通信を決定するハードウェアディスプレイ名を指定します
使用するドメイン。
表示名またはDISPLAY環境変数は、次の形式の文字列にすることができます。
hostname[:数[.スクリーン番号]]。
hostname ディスプレイが物理的に置かれているホストマシンの名前を指定します
添付。 数 そのホストマシン上のディスプレイサーバーの番号を指定します。
スクリーン番号 そのサーバーで使用する画面を指定します。
指定しない場合、デフォルトでDISPLAY環境変数の値になります。
たとえば、「dual-headed:0.1」は、マシンのディスプレイ1の画面0を指定します。
「双頭」という名前。
表示名の詳細については、X11仕様を確認してください。
形式でダウンロードすることができます。
ウィンドウID
ゼロ以外の値に設定すると、デバイスは新しいウィンドウを作成しませんが、既存のウィンドウを使用します
提供されたもの ウィンドウID。 デフォルトでは、このオプションはゼロに設定されており、デバイスは作成します
独自のウィンドウ。
ウィンドウサイズ
作成したウィンドウサイズを設定します。フォームの文字列にすることができます 幅x高さ またはビデオサイズ
略語。 指定しない場合、デフォルトで入力ビデオのサイズになります。 無視されます
いつ ウィンドウID 設定されています。
窓_x
窓_y
作成したウィンドウのXおよびYウィンドウオフセットを設定します。 それらは両方ともによって0に設定されます
デフォルト。 値はウィンドウマネージャによって無視される場合があります。 無視される場合 ウィンドウID is
設定します。
ウィンドウタイトル
ウィンドウのタイトルを設定します。指定されていない場合は、デフォルトで、
出力機器。 無視される場合 ウィンドウID 設定されています。
XVideoの詳細については、を参照してください。http://www.x.org/>.
例
・ビデオ入力を次のようにデコード、表示、エンコードします ffmpeg 同時に:
ffmpeg-i入力出力-fxv表示
・入力ビデオをデコードして複数のX11ウィンドウに表示します。
ffmpeg -i INPUT -f xv 通常 -vf 否定 -f xv 否定
リサンプラー OPTIONS
オーディオ リサンプラーは、次の名前付きオプションをサポートします。
オプションは、-を指定して設定できます。オプション 値 FFmpeg ツールで、 オプション=値
「SwrContext」オプションで値を明示的に設定するか、または
libavutil / opt.h プログラムで使用するための API。
ich、 in_channel_count
入力チャンネル数を設定します。 デフォルト値は 0 です。この値を設定することはできません。
対応するチャネル レイアウトの場合は必須 in_channel_layout 設定されています。
ああ、 out_channel_count
出力チャンネル数を設定します。 デフォルト値は 0 です。この値を設定することはできません。
対応するチャネル レイアウトの場合は必須 アウトチャンネルレイアウト 設定されています。
ええと、 used_channel_count
使用する入力チャンネル数を設定します。 デフォルト値は 0 です。このオプションのみが使用されます。
特別な再マッピング用。
は、 in_sample_rate
入力サンプルレートを設定します。 デフォルト値は 0 です。
osr、 アウトサンプルレート
出力サンプルレートを設定します。 デフォルト値は 0 です。
は、 in_sample_fmt
入力サンプル形式を指定します。 デフォルトでは「なし」に設定されています。
osf、 out_sample_fmt
出力サンプル形式を指定します。 デフォルトでは「なし」に設定されています。
tsf、 内部サンプル_fmt
内部サンプル形式を設定します。 デフォルト値は「なし」です。 これは自動的に
明示的に設定されていない場合に選択されます。
icl、 in_channel_layout
ocl、 アウトチャンネルレイアウト
入出力チャンネルのレイアウトを設定します。
見る チャネル レイアウト in ffmpeg-utils(1) マニュアル 必要な構文について。
クレブ、 center_mix_level
センターミックスレベルを設定します。 これはデシベルで表される値であり、
間隔 [-32,32]。
スリム、 Surround_mix_level
サラウンドミックスレベルを設定します。 これはデシベルで表される値であり、
間隔 [-32,32]。
lfe_mix_level
LFE ミックスを非 LFE レベルに設定します。 LFE 入力はあるが LFE がない場合に使用します。
出力。 これは deciBel で表される値で、[-32,32] の間隔である必要があります。
rmvol、 リマトリックスボリューム
リマトリックスボリュームを設定します。 デフォルト値は 1.0 です。
rematrix_maxval
リマトリックスの最大出力値を設定します。 これは、クリッピング対クリッピングを防ぐために使用できます。
音量減少の防止 値 1.0 はクリッピングを防止します。
フラグ、 swr_flags
コンバーターが使用するフラグを設定します。 デフォルト値は 0 です。
次の個々のフラグをサポートしています。
解像度 再サンプリングを強制します。このフラグは、入力と
出力サンプルレートが一致します。
ディザスケール
ディザ スケールを設定します。 デフォルト値は 1 です。
ディザ法
ディザ法を設定します。 デフォルト値は 0 です。
サポートされている値:
長方形の
矩形ディザを選択
三角
三角ディザを選択
三角HP
ハイパスで三角ディザを選択
リプシッツ
lipshitz ノイズ シェーピング ディザを選択
シバタ
柴田ノイズシェーピングディザを選択
low_shibata
低シバタ ノイズ シェーピング ディザを選択
ハイシバタ
高シバタ ノイズ シェーピング ディザを選択
f_weighted
f-weighted ノイズ シェーピング ディザを選択
修正済み_e_weighted
修正された e-weighted ノイズ シェーピング ディザを選択する
改善された_e_加重
改善された e-weighted ノイズ シェーピング ディザを選択します
リサンプラー
リサンプリング エンジンを設定します。 デフォルト値はswrです。
サポートされている値:
swr ネイティブ SW リサンプラーを選択します。 フィルタ オプションの precision と cheby はありません
この場合に適用されます。
ソックス
SoX リサンプラーを選択します (利用可能な場合)。 補正、およびフィルター オプション
filter_size、phase_shift、filter_type、kaiser_beta は、これには適用されません
場合。
フィルターサイズ
swr のみの場合、リサンプリング フィルタ サイズを設定します。デフォルト値は 32 です。
位相シフト
swr のみの場合、リサンプリング位相シフトを設定します。デフォルト値は 10 で、
間隔 [0,30]。
線形インタープ
1 に設定すると線形補間を使用します。デフォルト値は 0 です。
カットオフ
カットオフ周波数 (swr: 6dB ポイント; soxr: 0dB ポイント) の比率を設定します。 浮動小数点値でなければなりません
0 から 1 の間。デフォルト値は、swr では 0.97、soxr では 0.91 です (これは、
サンプルレートは 44100 で、オーディオ帯域全体を 20kHz に維持します)。
精度
soxr の場合のみ、リサンプリングされた信号が計算されるビット単位の精度。
デフォルト値の 20 (適切なディザリングを使用すると、
宛先ビット深度 16) は、SoX の「高品質」を提供します。 28 の値は SoX の
「非常に高品質」。
チビ
soxr のみの場合、パスバンド ロールオフなし (チェビシェフ) & 高精度を選択します
「不合理な」比率の近似。 デフォルト値は 0 です。
非同期
SWR のみの場合、ストレッチ、スクイーズ、
充填とトリミング。 これを 1 に設定すると、塗りつぶしとトリミングが有効になります。
値は、データが引き伸ばされる可能性のあるサンプルの最大量を表します。
毎秒圧迫されます。 デフォルト値は 0 であるため、補正は適用されません。
サンプルはオーディオのタイムスタンプと一致します。
first_pts
swr の場合のみ、最初のポイントがこの値であると仮定します。 時間単位は 1 / サンプル
レート。 これにより、ストリームの開始時にパディング/トリミングが可能になります。 デフォルトでは、いいえ
最初のフレームの予想されるポイントについて仮定が行われるため、パディングやトリミングは行われません
終わり。 たとえば、これを 0 に設定すると、
オーディオ ストリームは、ビデオ ストリームの後に開始するか、負の pts を持つサンプルをトリミングします。
エンコーダの遅延が原因です。
min_comp
swr のみの場合、タイムスタンプとオーディオ データの最小差を設定します (
秒)データのストレッチ/スクイーズ/フィルまたはトリミングをトリガーして、データを作成します
タイムスタンプを一致させます。 デフォルトでは、ストレッチ/スクイーズ/フィルとトリミングは
無効 (min_comp = "FLT_MAX")。
min_hard_comp
swr のみの場合、タイムスタンプとオーディオ データの最小差を設定します (
秒) サンプルの追加/削除をトリガーして、タイムスタンプと一致させます。 これ
オプションは実質的に、ハード (トリム/フィル) とソフトの間で選択するしきい値です
(絞る/伸ばす)補正。 すべての補償はデフォルトで無効になっていることに注意してください
min_comp。 デフォルトは0.1です。
comp_duration
swr のみの場合、データをストレッチ/スクイーズして作成する期間 (秒単位) を設定します。
タイムスタンプと一致します。 負でない double float 値である必要があります。デフォルト値は
1.0.
max_soft_comp
swr のみの場合、一致させるためにデータをストレッチ/スクイーズする最大係数を設定します
タイムスタンプ。 負でない double float 値である必要があります。デフォルト値は 0 です。
マトリックスエンコーディング
マトリックス化されたステレオ エンコーディングを選択します。
次の値を受け入れます。
なし
何も選択しない
ドルビー
ドルビーを選択
ディプリイ
Dolby Pro Logic II を選択
デフォルト値は「none」です。
フィルターの種類
swr のみの場合は、リサンプリング フィルター タイプを選択します。 これは、リサンプリング操作にのみ影響します。
次の値を受け入れます。
キュービック
キュービックを選択
blackman_nuttall
Blackman Nuttall Windowed Sinc を選択
カイザー
Kaiser Windowed Sinc を選択
カイザーベータ
swr のみの場合、Kaiser Window Beta 値を設定します。 間隔 [2,16] の整数でなければなりません。
デフォルト値は9です。
出力サンプルビット
swr のみの場合、ディザリングに使用される出力サンプル ビット数を設定します。 整数でなければなりません
間隔 [0,64] では、デフォルト値は 0 であり、これは使用されないことを意味します。
スケーラー OPTIONS
ビデオ スケーラーは、次の名前付きオプションをサポートしています。
オプションは、-を指定して設定できます。オプション 値 FFmpeg ツールで。 プログラムで使用するには、
これらは、「SwsContext」オプションまたは libavutil / opt.h APIです。
sws_flags
スケーラー フラグを設定します。 これは、スケーリング アルゴリズムの設定にも使用されます。 シングルのみ
アルゴリズムを選択する必要があります。
次の値を受け入れます。
高速双線形
高速バイリニア スケーリング アルゴリズムを選択します。
バイリニア
バイリニア スケーリング アルゴリズムを選択します。
バイキュービック
バイキュービック スケーリング アルゴリズムを選択します。
実験的
実験的なスケーリング アルゴリズムを選択します。
隣人
最近隣再スケーリング アルゴリズムを選択します。
エリア
平均化領域の再スケーリング アルゴリズムを選択します。
ビキュブリン
輝度成分にはバイキュービック スケーリング アルゴリズムを選択し、クロマ成分にはバイリニアを選択します
コンポーネント。
ガウス
ガウス再スケーリング アルゴリズムを選択します。
シンク
sinc 再スケーリング アルゴリズムを選択します。
ランチョス
lanczos 再スケーリング アルゴリズムを選択します。
スプライン
自然なバイキュービック スプライン再スケーリング アルゴリズムを選択します。
印刷情報
印刷/デバッグ ログを有効にします。
正確な_rnd
正確な丸めを有効にします。
full_chroma_int
フルクロマ補間を有効にします。
full_chroma_inp
フルクロマ入力を選択します。
ビット正確
bitexact 出力を有効にします。
srcw
ソース幅を設定します。
サーチ
ソースの高さを設定します。
dstw
宛先幅を設定します。
dth
目的地の高さを設定します。
src_format
ソース ピクセル形式を設定します (整数で表す必要があります)。
dst_format
デスティネーション ピクセル形式を設定します (整数で表す必要があります)。
src_range
ソース範囲を選択します。
dst_range
宛先範囲を選択します。
param0、 param1
スケーリング アルゴリズム パラメーターを設定します。 指定された値は、一部のスケーリングに固有のものです
アルゴリズムであり、他の人には無視されます。 指定値は浮動小数点数
値。
sws_ディザ
ディザリング アルゴリズムを設定します。 次のいずれかの値を受け入れます。 デフォルト値は
オート.
オート
自動選択
なし
ディザリングなし
バイエル
ベイヤーディザ
ed 誤差拡散ディザ
a_ディザ
算術ディザ、加算に基づく
x_ディザ
xor を使用した算術ディザ (よりランダムで目立たないパターン
a_dither)。
アルファブレンド
入力にアルファがあり、出力にアルファがない場合に使用するアルファ ブレンディングを設定します。
デフォルト値は なし.
ユニフォームカラー
均一な背景色にブレンドする
チェッカーボード
チェッカーボードにブレンド
なし
ブレンドなし
フィルタリング はじめに
FFmpegでのフィルタリングは、libavfilterライブラリを介して有効になります。
libavfilterでは、フィルターは複数の入力と複数の出力を持つことができます。 説明するために
可能なことの種類として、次のフィルターグラフを検討します。
[メイン]
入力->分割--------------------->オーバーレイ->出力
| | ^
| [tmp] [フリップ] |
+ ----->切り抜き-> vflip ------- +
このフィルターグラフは、入力ストリームをXNUMXつのストリームに分割し、XNUMXつのストリームを
によって他のストリームとマージする前に、クロップフィルターとvflipフィルター
上に重ねます。 これを実現するには、次のコマンドを使用できます。
ffmpeg -i INPUT -vf "split [main] [tmp]; [tmp] Crop = iw:ih / 2:0:0、vflip [flip]; [main] [flip] overlay = 0:H / 2" OUTPUT
その結果、ビデオの上半分が下半分にミラーリングされます。
出力ビデオ。
同じ線形チェーン内のフィルターはコンマで区切られ、
フィルタはセミコロンで区切られます。 この例では、 作物、vflip XNUMXつの線形チェーンにあります
split と オーバーレイ 別に別々にあります。 線形チェーンが結合するポイントは
角括弧で囲まれた名前でラベル付けされています。 この例では、分割フィルターは次のように生成します
ラベルに関連付けられているXNUMXつの出力 [メイン] と [一時].
のXNUMX番目の出力に送信されるストリーム split、とラベル付け [一時]、を介して処理されます
作物 フィルタ。動画の下半分を切り取り、次に垂直方向に切り取ります。
ひっくり返った。 ザ オーバーレイ filterは、分割フィルターの最初の変更されていない出力を入力として受け取ります
(これは次のようにラベル付けされました [メイン])、およびによって生成された出力の下半分にオーバーレイします。
作物、vflip フィルターチェーン。
一部のフィルターは、パラメーターのリストを入力として受け取ります。これらは、フィルター名の後に指定されます。
等号であり、コロンで区切られています。
いわゆる存在します source フィルター オーディオ/ビデオ入力がないもの、および シンク
フィルター オーディオ/ビデオ出力はありません。
グラフ
この グラフ2ドット FFmpegに含まれているプログラム 豊富なツール群 ディレクトリを使用して解析できます
フィルタグラフの説明と、ドットで対応するテキスト表現を発行します
言語。
次のコマンドを呼び出します。
グラフ2ドット-h
使用方法を確認するには グラフ2ドット.
次に、ドットの説明をに渡すことができます ドット プログラム(graphvizスイートから
プログラム)、フィルターグラフのグラフィック表現を取得します。
たとえば、コマンドのシーケンス:
エコー| \
ツール/graph2dot-ograph.tmp && \
dot -Tpnggraph.tmp -ograph.png && \
表示graph.png
によって記述されたグラフを表す画像を作成および表示するために使用できます
GRAPH_DESCRIPTION ストリング。 この文字列は完全な自己完結型のグラフである必要があることに注意してください。
入力と出力が明示的に定義されています。 たとえば、コマンドラインが
フォーム:
ffmpeg -i infile -vf scale = 640:360 outfile
GRAPH_DESCRIPTION 文字列は次の形式である必要があります。
nullsrc、scale = 640:360、nullsink
また、を設定する必要があるかもしれません nullsrc パラメータを追加し、 形式でアーカイブしたプロジェクトを保存します. するためにフィルタリング
特定の入力ファイルをシミュレートします。
フィルタグラフ DESCRIPTION
フィルタグラフは、接続されたフィルタの有向グラフです。 サイクルを含めることができ、そこに
フィルタのペア間の複数のリンクにすることができます。 各リンクには、片側にXNUMXつの入力パッドがあります
入力を取得するXNUMXつのフィルターに接続し、もうXNUMXつの出力パッドに接続します
その出力を受け入れるXNUMXつのフィルターに接続する側。
フィルタグラフの各フィルタは、に登録されているフィルタクラスのインスタンスです。
アプリケーション。機能と、の入力パッドと出力パッドの数を定義します。
フィルタ。
入力パッドのないフィルターは「ソース」と呼ばれ、出力パッドのないフィルターは「ソース」と呼ばれます。
「シンク」と呼ばれます。
フィルタグラフ 構文
フィルタグラフにはテキスト表現があり、これは -フィルター/-vf/-af と
-filter_complex オプション ffmpeg と -vf/-af in 再生するによって、および
「avfilter_graph_parse_ptr()」関数はで定義されています libavfilter / avfilter.h.
フィルタチェーンは、接続された一連のフィルタで構成され、各フィルタは
シーケンスの前のもの。 フィルタチェーンは、「、」で区切られたリストで表されます。
フィルタの説明。
フィルタグラフは、一連のフィルタチェーンで構成されています。 フィルタチェーンのシーケンスは
「;」で区切られたフィルターチェーンの説明のリストで表されます。
フィルタは、次の形式の文字列で表されます。
[in_link_1] ... [in_link_N]フィルター名=引数[out_link_1] ... [out_link_M]
フィルター名 記述されたフィルターがインスタンスであるフィルタークラスの名前です。
の、およびプログラムに登録されているフィルタークラスのXNUMXつの名前である必要があります。 The
フィルタクラスの名前の後には、オプションで文字列 "=が続きます。引数".
引数 フィルタを初期化するために使用されるパラメータを含む文字列です
実例。 次のXNUMXつの形式のいずれかがあります。
・a ':'-の区切りリスト key = value
・a ':'-の区切りリスト 値。 この場合、キーはオプションであると見なされます
宣言された順序での名前。 たとえば、「フェード」フィルタは次のXNUMXつのオプションを宣言します
この注文 - type, 開始フレーム と nb_frames。 次に、パラメータリスト で:0:30 手段
その値 in オプションに割り当てられています type, 0 〜へ 開始フレーム と 30 〜へ
nb_frames.
・a ':'-混合直接の区切りリスト 値 そして長い key = value ペア。 直接 値
に先行する必要があります key = value ペアであり、同じ制約順序に従います。
前のポイント。 以下 key = value ペアは任意の順序で設定できます。
オプション値自体がアイテムのリストである場合(たとえば、「フォーマット」フィルターは次のリストを取得します)
ピクセルフォーマット)、リスト内のアイテムは通常、 |.
引数のリストは、文字を使用して引用できます ' 最初と最後のマークとして、そして
キャラクター \ 引用されたテキスト内の文字をエスケープするため。 そうでなければ、議論
文字列は、次の特殊文字(セットに属する)のときに終了したと見なされます
[] =;、)に遭遇しました。
フィルタの名前と引数の前後には、オプションで次のリストがあります。
リンクラベル。 リンクラベルを使用すると、リンクに名前を付けて、フィルター出力に関連付けることができます。
または入力パッド。 上記のラベル in_link_1 ... in_link_N、はフィルターに関連付けられています
入力パッド、次のラベル out_link_1 ... out_link_M、出力に関連付けられています
パッド。
同じ名前のXNUMXつのリンクラベルがフィルターグラフで見つかった場合、
対応する入力および出力パッドが作成されます。
出力パッドにラベルが付いていない場合、デフォルトで最初のラベルのない入力にリンクされます
フィルタチェーン内の次のフィルタのパッド。 たとえば、フィルターチェーンで
nullsrc、split [L1]、[L2] overlay、nullsink
スプリットフィルターインスタンスにはXNUMXつの出力パッドがあり、オーバーレイフィルターインスタンスにはXNUMXつの入力があります。
パッド。 スプリットの最初の出力パッドには「L1」というラベルが付いており、オーバーレイの最初の入力パッドには
「L2」というラベルが付いており、スプリットのXNUMX番目の出力パッドはのXNUMX番目の入力パッドにリンクされています
オーバーレイ。どちらもラベルが付いていません。
フィルタの説明で、最初のフィルタの入力ラベルが指定されていない場合、「in」は
想定; 最後のフィルターの出力ラベルが指定されていない場合、「out」が想定されます。
完全なフィルターチェーンでは、ラベルのないすべてのフィルター入力パッドと出力パッドは
接続されています。 フィルタグラフは、のすべてのフィルタ入力および出力パッドが有効であると見なされます。
すべてのフィルターチェーンが接続されています。
Libavfilterは自動的に挿入します 階段 フォーマット変換が必要なフィルター。
自動的に挿入されるスケーラーのswscaleフラグを指定することができます。
「sws_flags =」を先頭に追加フラグ;」 フィルタグラフの説明に。
フィルタグラフ構文のBNFの説明は次のとおりです。
:: =英数字のシーケンスと「_」
:: = "[" "]"
:: = [ ]
:: =文字のシーケンス(引用されている可能性があります)
:: = [ ] ["=" ] [ ]
:: = [、 ]
:: = [sws_flags = ;] [; ]
ノート on フィルタグラフ 逃げる
フィルタグラフの説明の構成には、いくつかのレベルのエスケープが含まれます。 見る 「引用
と 逃げる」 in ffmpeg-utils(1) マニュアル 詳細については
エスケープ手順を採用しました。
第XNUMXレベルのエスケープは、各フィルターオプション値の内容に影響します。
値を区切るために使用される特殊文字「:」、またはエスケープ文字「\ '」のXNUMXつ。
XNUMX番目のレベルのエスケープは、フィルターの説明全体に影響します。
エスケープ文字「\ '」または特殊文字「[] ,;」 フィルタグラフで使用
説明。
最後に、シェルコマンドラインでフィルターグラフを指定する場合は、
その中に含まれるシェル特殊文字の第XNUMXレベルのエスケープ。
たとえば、次の文字列がに埋め込まれていると考えてください。 ドローテキスト filter
説明 클라우드 기반 AI/ML및 고성능 컴퓨팅을 통한 디지털 트윈의 기초 – Edward Hsu, Rescale CPO 많은 엔지니어링 중심 기업에게 클라우드는 R&D디지털 전환의 첫 단계일 뿐입니다. 클라우드 자원을 활용해 엔지니어링 팀의 제약을 해결하는 단계를 넘어, 시뮬레이션 운영을 통합하고 최적화하며, 궁극적으로는 모델 기반의 협업과 의사 결정을 지원하여 신제품을 결정할 때 데이터 기반 엔지니어링을 적용하고자 합니다. Rescale은 이러한 혁신을 돕기 위해 컴퓨팅 추천 엔진, 통합 데이터 패브릭, 메타데이터 관리 등을 개발하고 있습니다. 이번 자리를 빌려 비즈니스 경쟁력 제고를 위한 디지털 트윈 및 디지털 스레드 전략 개발 방법에 대한 인사이트를 나누고자 합니다. 値:
これは「文字列」です:XNUMXつ以上の特殊文字を含めることができます
この文字列には、「 '」特殊エスケープ文字と「:」特殊文字が含まれているため、
この方法でエスケープする必要があります。
text = this is a \ 'string \' \:XNUMXつ以上の特殊文字を含めることができます
フィルタの説明をに埋め込む場合は、XNUMX番目のレベルのエスケープが必要です。
フィルタグラフの説明。すべてのフィルタグラフの特殊文字をエスケープするため。 したがって
上記の例は次のようになります。
drawtext = text = this is a \\\ 'string \\\' \\:XNUMXつ以上の\、特殊文字を含めることができます
(特殊文字をエスケープする「\」に加えて、「、」も必要であることに注意してください。
脱出した)。
最後に、フィルターグラフの説明を書くときに、追加のレベルのエスケープが必要です。
採用されたシェルのエスケープルールに依存するシェルコマンドで。 例えば、
「\」は特別であり、別の「\」でエスケープする必要があると仮定すると、前の文字列
最終的に次のようになります。
-vf "drawtext = text = this is \\\\\\ 'string \\\\\\' \\\\:XNUMXつ以上の\\、特殊文字を含めることができます"
TIMELINE EDITING
一部のフィルターはジェネリックをサポートします enable オプション。 タイムライン編集をサポートするフィルターの場合、
このオプションは、フレームをに送信する前に評価される式に設定できます。
フィルター。 評価がゼロ以外の場合、フィルターが有効になります。それ以外の場合、フレームが有効になります。
フィルタグラフの次のフィルタに変更なしで送信されます。
式は次の値を受け入れます。
t 秒単位で表されるタイムスタンプ、入力タイムスタンプが不明な場合はNAN
n 0から始まる入力フレームの連番
投稿する 入力フレームのファイル内の位置、不明な場合はNAN
w
h ビデオの場合は入力フレームの幅と高さ
さらに、これらのフィルターは enable 再定義するために使用できるコマンド
式です。
他のフィルタリングオプションと同様に、 enable オプションは同じルールに従います。
たとえば、ぼかしフィルターを有効にするには(スマートブラー)10秒から3分、および
曲線 3秒から始まるフィルター:
smartblur = enable = 'between(t、10,3 * 60)'、
曲線= enable = 'gte(t、3)':preset = cross_process
AUDIO FILTERS
FFmpegビルドを構成する場合、を使用して既存のフィルターを無効にすることができます
「--disable-filters」。 構成出力には、に含まれているオーディオフィルターが表示されます
ビルド。
以下は、現在利用可能なオーディオフィルターの説明です。
クロスフェード
ある入力オーディオストリームから別の入力オーディオストリームにクロスフェードを適用します。 十字架
フェードは、最初のストリームの終わり近くで指定された期間適用されます。
フィルタは次のオプションを受け入れます。
nb_samples、 ns
クロスフェード効果が持続するサンプル数を指定します。 最後に
クロスフェード効果の最初の入力オーディオは完全に無音になります。 デフォルトは
44100.
デュレーション、 d
クロスフェード効果の持続時間を指定します。 見る Time デュレーション in
ffmpeg-utils(1) マニュアル 受け入れられた構文について。 デフォルトでは、期間が決定されます
by nb_samples。 設定すると、代わりにこのオプションが使用されます nb_samples.
オーバーラップ、 o
最初のストリームの終了がXNUMX番目のストリームの開始と重なる必要があります。 デフォルトは有効です。
曲線1
最初のストリームのクロスフェードトランジションのカーブを設定します。
曲線2
XNUMX番目のストリームのクロスフェードトランジションのカーブを設定します。
使用可能な曲線タイプの説明については、を参照してください。 衰退 フィルタの説明。
例
・ある入力から別の入力へのクロスフェード:
ffmpeg -i first.flac -i second.flac -filter_complex aroundfade = d = 10:c1 = exp:c2 = exp output.flac
・ある入力から別の入力へのクロスフェードですが、オーバーラップすることはありません。
ffmpeg -i first.flac -i second.flac -filter_complex aroundfade = d = 10:o = 0:c1 = exp:c2 = exp output.flac
遅れ
XNUMXつまたは複数のオーディオチャネルを遅延させます。
遅延チャンネルのサンプルは無音で満たされています。
フィルタは次のオプションを受け入れます。
遅延
'|'で区切られた各チャネルの遅延のリストをミリ秒単位で設定します。 少なくとも一つの
0より大きい遅延を指定する必要があります。 未使用の遅延は黙って無視されます。 もしも
指定された遅延の数は、残りのすべてのチャネルのチャネル数よりも少なくなります
遅れることはありません。
例
・最初のチャネルを1.5秒遅らせ、0.5番目のチャネルをXNUMX秒遅らせて、
XNUMX番目のチャネル(および存在する可能性のある他のチャネル)は変更されません。
adelay = 1500 | 0 | 500
エコー
入力オーディオにエコーを適用します。
エコーは反射音であり、山の中で自然に発生する可能性があります(場合によっては大きい
建物)話したり叫んだりするとき。 デジタルエコーエフェクトはこの動作をエミュレートし、
多くの場合、単一の楽器やボーカルのサウンドを埋めるために使用されます。 時差
元の信号と反射の間には「遅延」があり、ラウドネスは
反射信号は「減衰」です。 複数のエコーは、異なる遅延と減衰を持つ可能性があります。
受け入れられるパラメータの説明は次のとおりです。
インゲイン
反射信号の入力ゲインを設定します。 デフォルトは0.6です。
アウトゲイン
反射信号の出力ゲインを設定します。 デフォルトは0.3です。
遅延
元の信号と反射の間の時間間隔のリストをミリ秒単位で設定します
'|'で区切られます。 各「遅延」の許容範囲は「(0-90000.0]」です。デフォルトは1000です。
崩壊する
'|'で区切られた反射信号のラウドネスのリストを設定します。 それぞれの許容範囲
「減衰」は「(0-1.0]」です。デフォルトは0.5です。
例
・実際に演奏している楽器のXNUMX倍の数の楽器があるかのように聞こえるようにします。
aecho = 0.8:0.88:60:0.4
・遅延が非常に短い場合は、(金属製の)ロボットが音楽を再生しているように聞こえます。
aecho = 0.8:0.88:6:0.4
・より長い遅延は、山での野外コンサートのように聞こえます。
aecho = 0.8:0.9:1000:0.3
・上記と同じですが、もうXNUMXつの山があります。
aecho=0.8:0.9:1000|1800:0.3|0.25
評価
指定された式に従ってオーディオ信号を変更します。
このフィルターは、評価されるXNUMXつ以上の式(チャネルごとにXNUMXつ)を受け入れます。
対応するオーディオ信号を変更するために使用されます。
次のパラメータを受け入れます。
式
個別のチャネルごとに「|」で区切られた式のリストを設定します。 の数の場合
入力チャネルが、最後に指定された式の数よりも大きい
式は残りの出力チャネルに使用されます。
channel_layout、 c
出力チャンネルのレイアウトを設定します。 指定しない場合、チャネルレイアウトはによって指定されます。
式の数。 に設定されている場合 同じ、デフォルトで同じ入力チャンネルを使用します
レイアウト。
の各式 式 次の定数と関数を含めることができます。
ch 現在の式のチャネル番号
n 0から始まる評価されたサンプルの数
s サンプルレート
t 評価されたサンプルの時間(秒単位)
nb_in_channels
nb_out_channels
チャネルの入力および出力数
val(CH)
番号付きの入力チャンネルの値 CH
注:このフィルターは低速です。 処理を高速化するには、専用のフィルターを使用する必要があります。
例
・半分のボリューム:
aeval = val(ch)/ 2:c =同じ
・XNUMX番目のチャネルの位相を反転します。
aeval =ヴァル(0)|-ヴァル(1)
衰退
入力オーディオにフェードイン/フェードアウト効果を適用します。
受け入れられるパラメータの説明は次のとおりです。
タイプ、 t
エフェクトタイプを指定します。フェードインの場合は「in」、フェードアウトの場合は「out」のいずれかになります。
効果。 デフォルトは「in」です。
start_sample、 ss
フェード効果の適用を開始する開始サンプルの番号を指定します。 ディフォルト
0です。
nb_samples、 ns
フェード効果が持続するサンプル数を指定します。 の終わりに
フェードイン効果では、出力オーディオは入力オーディオと同じ音量になります。
フェードアウト遷移が終了すると、出力オーディオは無音になります。 デフォルトは44100です。
始まる時間、 st
フェードエフェクトの開始時間を指定します。 デフォルトは0です。値を指定する必要があります
時間として; 見る Time デュレーション in ffmpeg-utils(1) マニュアル for
受け入れられた構文。 設定すると、代わりにこのオプションが使用されます 開始サンプル.
デュレーション、 d
フェード効果の持続時間を指定します。 見る Time デュレーション in
ffmpeg-utils(1) マニュアル 受け入れられた構文について。 フェードイン効果の終了時に、
フェードアウトの終了時に、出力オーディオは入力オーディオと同じ音量になります
トランジションすると、出力オーディオは無音になります。 デフォルトでは、期間はによって決定されます
nb_samples。 設定すると、代わりにこのオプションが使用されます nb_samples.
曲線
フェードトランジションのカーブを設定します。
次の値を受け入れます。
トライ 三角形の線形勾配を選択(デフォルト)
クシン
正弦波のXNUMX分のXNUMXを選択
シン
正弦波の半分を選択します
霊感
指数正弦波を選択します
ログ 対数を選択
イパー
逆放物線を選択
ここで 二次方程式を選択
キューブ キュービックを選択
スクエア 平方根を選択
CBR 立方根を選択
パー 放物線を選択
EXP 指数関数を選択
イクシン
正弦波の反転XNUMX/XNUMXを選択します
イシン
正弦波の反転した半分を選択します
デス
二重指数シートを選択
デジ
二重指数シグモイドを選択します
例
・オーディオの最初の15秒でフェードインします。
afade = t = in:ss = 0:d = 15
・25秒のオーディオの最後の900秒をフェードアウトします。
afade = t = out:st = 875:d = 25
フォーマットする
入力オーディオの出力形式の制約を設定します。 フレームワークは最も交渉します
変換を最小限に抑えるための適切な形式。
次のパラメータを受け入れます。
サンプルfmts
要求されたサンプル形式の「|」で区切られたリスト。
サンプル料金
要求されたサンプルレートの「|」で区切られたリスト。
チャンネルレイアウト
要求されたチャネルレイアウトの「|」で区切られたリスト。
見る チャネル レイアウト in ffmpeg-utils(1) マニュアル 必要な構文について。
パラメータを省略すると、すべての値が許可されます。
出力を符号なし8ビットまたは符号付き16ビットステレオに強制します
aformat = sample_fmts = u8 | s16:channel_layouts =ステレオ
オールパス
中心周波数(Hz)のXNUMX極オールパスフィルターを適用します 周波数、およびフィルター-
幅 幅。 オールパスフィルターは、オーディオの周波数と位相の関係を変更します
周波数と振幅の関係を変更せずに。
フィルタは次のオプションを受け入れます。
周波数、 f
周波数をHzで設定します。
幅の種類
フィルタの帯域幅を指定するメソッドを設定します。
h Hz
q Qファクター
o オクターブ
s スロープ
幅、 w
フィルタの帯域幅をwidth_type単位で指定します。
合併する
XNUMXつ以上のオーディオストリームを単一のマルチチャネルストリームにマージします。
フィルタは次のオプションを受け入れます。
入力
入力数を設定します。 デフォルトは2です。
入力のチャネルレイアウトが互いに素であり、したがって互換性がある場合、チャネル
出力のレイアウトはそれに応じて設定され、チャネルは次のように並べ替えられます
必要。 入力のチャネルレイアウトがばらばらでない場合、出力にはすべてが含まれます
最初の入力のチャネル、次にXNUMX番目の入力のすべてのチャネルの順に、
出力のチャネルレイアウトは、合計に対応するデフォルト値になります
チャネルの数。
たとえば、最初の入力が2.1(FL + FR + LF)で、XNUMX番目の入力がFC + BL + BRの場合、
その場合、出力は5.1になり、チャンネルは次の順序になります:a1、a2、b1、a3、
b2、b3(a1は最初の入力の最初のチャネル、b1はXNUMX番目の入力の最初のチャネルです
入力)。
一方、両方の入力がステレオの場合、出力チャンネルはデフォルトになります
順序:a1、a2、b1、b2、およびチャネルレイアウトは任意に4.0に設定されます。
期待値ではない可能性があります。
すべての入力は、同じサンプルレートとフォーマットである必要があります。
入力の持続時間が同じでない場合、出力は最短で停止します。
例
・XNUMXつのモノラルファイルをステレオストリームにマージします。
amovie = left.wav [l]; amovie = right.mp3 [r]; [l] [r] amerge
・1つのビデオストリームと6つのオーディオストリームを想定した複数のマージ 入力.mkv:
ffmpeg -i input.mkv -filter_complex "[0:1] [0:2] [0:3] [0:4] [0:5] [0:6] amerge = inputs = 6" -c:a pcm_s16le output.mkv
混合
複数のオーディオ入力をXNUMXつの出力にミックスします。
このフィルターはフロートサンプルのみをサポートすることに注意してください( 合併する と パン オーディオフィルター
多くのフォーマットをサポートします)。 の場合 混合 入力には整数サンプルがあり、 あるサンプル なります
フロートサンプルへの変換を実行するために自動的に挿入されます。
例えば、
ffmpeg -i INPUT1 -i INPUT2 -i INPUT3 -filter_complex amix = input = 3:duration = first:dropout_transition = 3 OUTPUT
3つの入力オーディオストリームを最初の出力と同じ長さの単一の出力にミキシングします
入力と3秒のドロップアウト遷移時間。
次のパラメータを受け入れます。
入力
入力の数。 指定しない場合、デフォルトで2になります。
デュレーション
ストリームの終わりを判断する方法。
最長
最長の入力の継続時間。 (ディフォルト)
最短
最短入力の継続時間。
最初の
最初の入力の期間。
ドロップアウト_トランジション
入力ストリームが終了したときのボリュームの再正規化の遷移時間(秒単位)。
デフォルト値は 2 秒です。
無効
オーディオソースを変更せずに出力に渡します。
アパッド
オーディオストリームの最後を無音で埋めます。
これは一緒に使用することができます ffmpeg -最短 オーディオストリームを同じ長さに拡張するには
ビデオストリームとして。
受け入れられるオプションの説明は次のとおりです。
パケットサイズ
無音パケットサイズを設定します。 デフォルト値は4096です。
パッドレン
最後に追加する無音のサンプル数を設定します。 値に達した後、
ストリームは終了します。 このオプションは相互に排他的です 全体_len.
全体_len
出力オーディオストリームのサンプルの最小総数を設定します。 値が
入力オーディオの長さよりも長い場合、値が次のようになるまで、無音が最後に追加されます
に達した。 このオプションは相互に排他的です パッドレン.
どちらも パッドレン も 全体_len オプションが設定されている場合、フィルターは無音を追加します
入力ストリームの終わりは無期限です。
例
・入力の最後に1024サンプルの無音を追加します。
apad = pad_len = 1024
・オーディオ出力に少なくとも10000サンプルが含まれていることを確認し、入力に次のように埋め込みます。
必要に応じて沈黙:
apad = Wholesale_len = 10000
・ 使用する ffmpeg オーディオ入力を無音で埋めて、ビデオストリームが常に
結果が最短になり、使用時に出力ファイルの最後まで変換されます
最短 オプション:
ffmpeg -i VIDEO -i AUDIO -filter_complex "[1:0] apad" -shortest OUTPUT
アフェーザー
入力オーディオにフェージング効果を追加します。
フェイザーフィルターは、周波数スペクトルに一連の山と谷を作成します。 The
山と谷の位置は、時間の経過とともに変化するように調整され、
スイープ効果。
受け入れられるパラメータの説明は次のとおりです。
インゲイン
入力ゲインを設定します。 デフォルトは0.4です。
アウトゲイン
出力ゲインを設定します。 デフォルトは0.74です
遅らせる
遅延をミリ秒単位で設定します。 デフォルトは3.0です。
崩壊
減衰を設定します。 デフォルトは0.4です。
スピード
変調速度をHzで設定します。 デフォルトは0.5です。
type
変調タイプを設定します。 デフォルトは三角形です。
次の値を受け入れます。
三角、 t
正弦波、 s
あるサンプル
libswresampleライブラリを使用して、入力オーディオを指定されたパラメータにリサンプリングします。 もしも
何も指定されていない場合、フィルターは入力と入力の間で自動的に変換します
出力。
このフィルターは、タイムスタンプと一致するようにオーディオデータをストレッチ/スクイーズすることもできます
または、タイムスタンプと一致するように無音を挿入/オーディオを切り取るには、次の組み合わせを実行します
両方またはどちらもしません。
フィルタは構文を受け入れます[サンプルレート:]リサンプラー_オプションここで、 サンプルレート 表現する
サンプルレートと リサンプラー_オプション のリストです キー=値 「:」で区切られたペア。 見る
サポートされているオプションの完全なリストについては、ffmpeg-resamplerのマニュアルを参照してください。
例
・入力オーディオを44100Hzにリサンプリングします。
aresample = 44100
・指定されたタイムスタンプにサンプルをストレッチ/スクイーズします。1000つあたり最大XNUMXサンプルです。
XNUMX番目の補償:
aresample = async = 1000
asetnサンプル
各出力オーディオフレームごとのサンプル数を設定します。
フィルタがフラッシュするため、最後の出力パケットには異なる数のサンプルが含まれる場合があります
入力オーディオが終了を通知するときの残りのすべてのサンプル。
フィルタは次のオプションを受け入れます。
nb_out_samples、 n
各出力オーディオフレームあたりのフレーム数を設定します。 番号は、
サンプル数 以下のために 各 チャンネル。 デフォルト値は1024です。
パッド、 p
1に設定すると、フィルターは最後のオーディオフレームをゼロで埋めるので、最後のオーディオフレームはゼロになります。
フレームには、前のサンプルと同じ数のサンプルが含まれます。 デフォルト値は
1.
たとえば、フレームごとのサンプル数を1234に設定し、
最後のフレーム、使用:
asetnsamples = n = 1234:p = 0
アセレート
PCMデータを変更せずにサンプルレートを設定します。 これにより、速度が変化します
とピッチ。
フィルタは次のオプションを受け入れます。
サンプルレート、 r
出力サンプルレートを設定します。 デフォルトは44100Hzです。
アショーインフォ
各入力オーディオフレームのさまざまな情報を含む行を表示します。 入力オーディオは
変更されていません。
示されている行には、フォームのキーと値のペアのシーケンスが含まれています キー:値.
次の値が出力に表示されます。
n 0から始まる入力フレームの(シーケンシャル)番号。
PTS 入力フレームの表示タイムスタンプ(タイムベース単位)。 タイムベース
フィルタ入力パッドに依存し、通常は1 /です。サンプルレート.
pts_time
入力フレームの表示タイムスタンプ(秒単位)。
投稿する 入力ストリーム内のフレームの位置。この情報が利用できない場合は-1
および/または無意味(たとえば、合成オーディオの場合)
FMT サンプルフォーマット。
レイアウト
チャネルレイアウト。
率
オーディオフレームのサンプルレート。
nb_samples
フレーム内のサンプル数(チャネルあたり)。
チェックサム
オーディオデータのAdler-32チェックサム(XNUMX進数で印刷)。 平面オーディオの場合、
データは、すべての平面が連結されているかのように扱われます。
planet_checksums
各データプレーンのAdler-32チェックサムのリスト。
アスタチン
オーディオチャネルに関する時間領域の統計情報を表示します。 統計は
オーディオチャネルごとに計算および表示され、該当する場合は全体の数値
も与えられます。
次のオプションを受け入れます。
長さ
短いウィンドウの長さ(秒単位)。ピークおよびトラフのRMS測定に使用されます。 デフォルトは
0.05(50ミリ秒)。 許容範囲は「[0.1-10]」です。
メタデータインジェクションを設定します。 すべてのメタデータキーには「lavfi.astats.X」というプレフィックスが付いています。
ここで、「X」は1から始まるチャネル番号または文字列「Overall」です。 デフォルトは無効です。
各チャネルで使用可能なキーは次のとおりです。DC_offsetMin_levelMax_levelMin_difference
最大差 平均差 ピークレベル RMS_ピーク RMSトラフ クレストファクター フラットファクター
ピーク数 ビット深度
および全体の場合:DC_offset Min_level Max_level Min_difference Max_difference
平均差 ピークレベル RMS レベル RMS ピーク RMS トラフ フラットファクター ピーク数
ビット深度 サンプル数
たとえば、完全なキーは次のようになります「lavfi.astats.1.DC_offset」またはこの
「lavfi.astats.Overall.Peak_count」。
各キーの意味の説明については、以下をお読みください。
リセット
統計が再計算されるフレーム数を設定します。 デフォルトは
無効にする。
示されている各パラメーターの説明は次のとおりです。
DC オフセット
ゼロからの平均振幅変位。
最小値 レベル
最小限のサンプルレベル。
最大値 レベル
最大サンプルレベル。
最小値 違い
XNUMXつの連続するサンプル間の最小の違い。
最大値 違い
XNUMXつの連続するサンプル間の最大差。
平均 違い
XNUMXつの連続するサンプル間の平均差。 各差の平均
XNUMXつの連続したサンプル間。
ピーク レベル dB
RMS レベル dB
dBFSで測定された標準ピークおよびRMSレベル。
RMS ピーク dB
RMS トラフ dB
短いウィンドウで測定されたRMSレベルのピーク値とトラフ値。
クレスト 要因
RMSレベルに対するピークの標準比率(注:dB単位ではありません)。
フラット型の刃は完全に平行な状態ではありませんが、コニカル型の刃よりも明らかに平らになっており、幅もコニカル刃に比べて広いことが多いです。 要因
ピーク時の信号の平坦度(つまり、同じ値の連続サンプル)
レベル(つまり、どちらか 最小値 レベル or 最大値 レベル).
ピーク カウント
信号が到達した回数(サンプル数ではない) 最小値
レベル or 最大値 レベル.
ビット 深さ
オーディオの全体的なビット深度。 各サンプルに使用されるビット数。
ストリームシンク
XNUMXつのオーディオストリームを転送し、バッファが転送される順序を制御します。
フィルタは次のオプションを受け入れます。
expr、 e
次に転送するストリームを決定する式を設定します。結果が次の場合
負の場合、最初のストリームが転送されます。 結果が正またはゼロの場合、XNUMX番目
ストリームが転送されます。 次の変数を使用できます。
b1 b2
各ストリームでこれまでに転送されたバッファの数
s1 s2
各ストリームでこれまでに転送されたサンプルの数
t1 t2
各ストリームの現在のタイムスタンプ
デフォルト値は「t1-t2」です。これは、
タイムスタンプが小さい。
例
ストレステスト「マージ」を回避しながら、間違った入力にランダムにバッファを送信します
非同期化の多く:
amovie = file.ogg [a]; amovie = file.mp3 [b];
[a] [b] astreamsync =(2 *ランダム(1))-1+tanh(5*(t1-t2)) [a2] [b2] ;
[a2] [b2] アマージ
非同期
オーディオデータをスクイーズ/ストレッチおよび/またはドロップすることにより、タイムスタンプと同期します
サンプル/必要に応じて無音を追加します。
このフィルターはデフォルトでは作成されていません。使用してください あるサンプル 絞り/ストレッチを行います。
次のパラメータを受け入れます。
補う
データをタイムスタンプと一致するようにストレッチ/スクイーズできるようにします。 によって無効化
ディフォルト。 無効にすると、時間のギャップは沈黙で覆われます。
min_delta
トリガーするタイムスタンプとオーディオデータの最小差(秒単位)
サンプルの追加/削除。 デフォルト値は0.1です。 との同期が不完全な場合
このフィルター、このパラメーターを0に設定してみてください。
max_comp
1秒あたりのサンプルの最大補正。 補償= XNUMXにのみ関連します。 The
デフォルト値は500です。
first_pts
最初のPTSがこの値であると想定します。 タイムベースは1 /サンプルレートです。 この
ストリームの開始時にパディング/トリミングが可能です。 デフォルトでは、仮定はありません
最初のフレームの予想されるPTSについて作成されたため、パディングやトリミングは行われません。 にとって
たとえば、オーディオストリームの場合、これを0に設定して、最初を無音で埋めることができます。
ビデオストリームの後に開始するか、PTSが負のサンプルをトリミングする
エンコーダー遅延。
アテンポ
オーディオテンポを調整します。
フィルタは、オーディオテンポというXNUMXつのパラメータのみを受け入れます。 指定されていない場合は、
フィルタは公称1.0テンポを想定しています。 テンポは[0.5、2.0]の範囲でなければなりません。
例
・オーディオを80%のテンポにスローダウンします。
atempo = 0.8
・オーディオを125%のテンポにスピードアップするには:
atempo = 1.25
トリム
出力に入力のXNUMXつの連続したサブパートが含まれるように、入力をトリミングします。
次のパラメータを受け入れます。
start
保持するセクションの開始のタイムスタンプ(秒単位)。 つまり、オーディオサンプル
タイムスタンプ start 出力の最初のサンプルになります。
end ドロップされる最初のオーディオサンプル、つまりオーディオサンプルの時間を指定します
タイムスタンプの直前 end の最後のサンプルになります
出力。
start_pts
と同じ start、ただし、このオプションでは、サンプルではなく開始タイムスタンプが設定されます。
秒です。
end_pts
と同じ endただし、このオプションでは、終了タイムスタンプが秒ではなくサンプルで設定されます。
デュレーション
出力の最大継続時間(秒単位)。
開始サンプル
出力する必要がある最初のサンプルの番号。
終了_サンプル
ドロップする必要がある最初のサンプルの番号。
start, end, デュレーション 期間の仕様として表されます。 見る Time
デュレーション in ffmpeg-utils(1) マニュアル.
開始/終了オプションの最初のXNUMXセットと デュレーション オプションを見てください
フレームタイムスタンプ。_sampleオプションは、通過するサンプルをカウントするだけです。
フィルター。 したがって、start / end_ptsとstart / end_sampleは、
タイムスタンプが間違っているか、不正確であるか、ゼロから開始していません。 また、このフィルターはそうではないことに注意してください
タイムスタンプを変更します。 出力タイムスタンプをゼロから開始する場合は、
アトリムフィルターの後にasetptsフィルター。
複数の開始または終了オプションが設定されている場合、このフィルターは貪欲になり、すべてを維持しようとします
指定された制約の少なくともXNUMXつに一致するサンプル。 その部分だけを保持する
一度にすべての制約に一致し、複数のアトリムフィルターをチェーンします。
デフォルトでは、すべての入力が保持されます。 したがって、たとえば、
指定された時間より前にすべてを保持するための終了値。
例:
・入力のXNUMX分を除くすべてをドロップします。
ffmpeg -i INPUT -af atrim = 60:120
・最初の1000サンプルのみを保持します。
ffmpeg -i INPUT -af atrim = end_sample = 1000
バンドパス
中心周波数のXNUMX極バターワースバンドパスフィルターを適用します 周波数,
(3dBポイント)帯域幅幅。 The CSG オプションは一定のスカートゲインを選択します(ピークゲイン=
Q)デフォルトの代わりに:一定の0dBピークゲイン。 フィルタはオクターブあたり6dBでロールオフします
(20年あたりXNUMXdB)。
フィルタは次のオプションを受け入れます。
周波数、 f
フィルタの中心周波数を設定します。 デフォルトは3000です。
CSG 1に設定されている場合、一定のスカートゲイン。デフォルトは0です。
幅の種類
フィルタの帯域幅を指定するメソッドを設定します。
h Hz
q Qファクター
o オクターブ
s スロープ
幅、 w
フィルタの帯域幅をwidth_type単位で指定します。
帯域拒否
中心周波数を持つXNUMX極バターワースバンドリジェクトフィルターを適用します 周波数,
(3dBポイント)帯域幅 幅。 フィルタはオクターブあたり6dB(ディケードあたり20dB)でロールオフします。
フィルタは次のオプションを受け入れます。
周波数、 f
フィルタの中心周波数を設定します。 デフォルトは3000です。
幅の種類
フィルタの帯域幅を指定するメソッドを設定します。
h Hz
q Qファクター
o オクターブ
s スロープ
幅、 w
フィルタの帯域幅をwidth_type単位で指定します。
ベース
XNUMX極シェルビングフィルターを使用して、オーディオの低音(低域)周波数をブーストまたはカットします
標準のhi-fiのトーンコントロールと同様の応答があります。 これは、
棚の均等化(EQ)。
フィルタは次のオプションを受け入れます。
ゲイン、 g
0Hzでゲインを与えます。 その有用な範囲は、約-20(大きなカットの場合)から+20(
大きなブースト)。 正のゲインを使用する場合は、クリッピングに注意してください。
周波数、 f
フィルタの中心周波数を設定して、拡張または削減に使用できるようにします。
ブーストまたはカットする周波数範囲。 デフォルト値は100Hzです。
幅の種類
フィルタの帯域幅を指定するメソッドを設定します。
h Hz
q Qファクター
o オクターブ
s スロープ
幅、 w
フィルタのシェルフ遷移がどの程度急であるかを判断します。
バイクアッド
指定された係数でバイクアッドIIRフィルターを適用します。 どこ b0, b1, b2 と a0, a1, a2
それぞれ分子と分母の係数です。
BS2B
バウアーステレオからバイノーラル変換。ステレオのヘッドフォンリスニングを改善します。
オーディオレコード。
次のパラメータを受け入れます。
プロフィール
事前定義されたクロスフィードレベル。
デフォルト
デフォルトレベル(fcut = 700、feed = 50)。
cmoy
Chu Moy回路(fcut = 700、feed = 60)。
ジマイヤー
Jan Meier回路(fcut = 650、feed = 95)。
fカット
カット周波数(Hz)。
フィード
フィードレベル(Hz)。
チャンネルマップ
入力チャネルを新しい場所に再マップします。
次のパラメータを受け入れます。
チャンネルレイアウト
出力ストリームのチャネルレイアウト。
地図 チャネルを入力から出力にマップします。 引数は '|'で区切られたマッピングのリストです。
それぞれの "in_channel-out_channel " or チャネル内 フォーム。 チャネル内 どちらでもかまいません
入力チャンネルの名前(例:左前のFL)または入力チャンネルのインデックス
レイアウト。 アウトチャネル 出力チャネルの名前または出力内のそのインデックスです
チャネルレイアウト。 もしも アウトチャネル 与えられていない場合、それは暗黙的にインデックスであり、
ゼロで、マッピングごとにXNUMXずつ増加します。
マッピングが存在しない場合、フィルターは暗黙的に入力チャンネルを出力にマッピングします
チャネル、インデックスを保持します。
たとえば、5.1 +ダウンミックス入力MOVファイルを想定すると、
ffmpeg -i in.mov -filter'channelmap = map = DL-FL | DR-FR 'out.wav
入力のダウンミックスチャンネルからステレオとしてタグ付けされた出力WAVファイルを作成します。
AACのネイティブチャネル順序で不適切にエンコードされた5.1WAVを修正するには
ffmpeg -i in.wav -filter'channelmap = 1 | 2 | 0 | 5 | 3 | 4:5.1 'out.wav
チャンネルスプリット
各チャンネルを入力オーディオストリームから個別の出力ストリームに分割します。
次のパラメータを受け入れます。
チャンネルレイアウト
入力ストリームのチャネルレイアウト。 デフォルトは「ステレオ」です。
たとえば、ステレオ入力MP3ファイルを想定すると、
ffmpeg -i in.mp3 -filter_complex channelssplit out.mkv
XNUMXつのオーディオストリームを含む出力Matroskaファイルを作成します。XNUMXつは左側のみを含みます
チャネルと他の右チャネル。
5.1WAVファイルをチャネルごとのファイルに分割します。
ffmpeg -i in.wav -filter_complex
'channelsplit = channel_layout = 5.1 [FL] [FR] [FC] [LFE] [SL] [SR]'
-map '[FL]' front_left.wav -map '[FR]' front_right.wav -map '[FC]'
front_center.wav -map '[LFE]' lfe.wav -map '[SL]' side_left.wav -map '[SR]'
サイド右.wav
コーラス
オーディオにコーラスエフェクトを追加します。
コーラスのような単一のボーカルサウンドを作成できますが、インストルメンテーションにも適用できます。
コーラスは短い遅延のエコー効果に似ていますが、エコーの場合、遅延は
一定で、コーラスを使用すると、正弦波または三角変調を使用して変化します。 The
モジュレーションデプスは、モジュレートされたディレイが前後に再生される範囲を定義します。
遅れ。 したがって、遅延音は遅くまたは速く聞こえます。つまり、遅延音です。
一部のボーカルがわずかにキーから外れているコーラスのように、元のボーカルを中心に調整されています。
次のパラメータを受け入れます。
インゲイン
入力ゲインを設定します。 デフォルトは0.4です。
アウトゲイン
出力ゲインを設定します。 デフォルトは0.4です。
遅延
遅延を設定します。 通常の遅延は約40msから60msです。
崩壊する
セットの減衰。
速度
速度を設定します。
どん底
深さを設定します。
例
・単一の遅延:
chorus=0.7:0.9:55:0.4:0.25:2
・XNUMXつの遅延:
chorus=0.6:0.9:50|60:0.4|0.32:0.25|0.4:2|1.3
・XNUMXつの遅延を伴うより完全な響きのコーラス:
chorus=0.5:0.9:50|60|40:0.4|0.32|0.3:0.25|0.4|0.3:2|2.3|1.3
コンパンド
オーディオのダイナミックレンジを圧縮または拡張します。
次のパラメータを受け入れます。
攻撃
崩壊する
各チャネルの秒単位の時間のリスト。
入力信号は、そのボリュームを決定するために平均化されます。 攻撃 ボリュームの増加を指します
と 崩壊する ボリュームの減少を指します。 ほとんどの場合、攻撃時間
(オーディオが大きくなることへの応答)は、減衰時間よりも短くする必要があります。
人間の耳は、突然の小さな音よりも突然の大きな音に敏感です。 典型的な
攻撃の値は0.3秒で、減衰の一般的な値は0.8秒です。 もしも
指定された攻撃と減衰の数が、最後のセットであるチャネルの数よりも少ない
攻撃/減衰は残りのすべてのチャネルに使用されます。
ポイント
最大値に対するdBで指定された伝達関数のポイントのリスト
可能な信号振幅。 各キーポイントリストは、以下を使用して定義する必要があります
構文: "x0 / y0 | x1 / y1 | x2 / y2 | ...."または "x0 / y0 x1 / y1 x2 / y2 ...."
入力値は厳密に昇順である必要がありますが、伝達関数は
単調に上昇する必要はありません。 ポイント「0/0」が想定されますが、オーバーライドされる可能性があります
(「0 / out-dBn」による)。 伝達関数の一般的な値は「-70 / -70 | -60 / -20」です。
ソフトニー
すべてのジョイントの曲線半径をdB単位で設定します。 デフォルトは0.01です。
利得
伝達関数のすべてのポイントに適用される追加ゲインをdB単位で設定します。
これにより、全体的なゲインを簡単に調整できます。 デフォルトは0です。
ボリューム
フィルタリング開始時に各チャンネルで想定される初期音量をdB単位で設定します。
これにより、ユーザーは最初に公称レベルを指定できるため、たとえば、
非常に大きなゲインは、圧伸が行われる前の初期信号レベルには適用されません。
動作を開始しました。 最初は静かなオーディオの一般的な値は-90dBです。 これ
デフォルトは0です。
遅らせる
遅延を秒単位で設定します。 入力音声はすぐに分析されますが、音声が遅れます
ボリュームアジャスターに送られる前に。 にほぼ等しい遅延を指定する
アタック/ディケイタイムにより、フィルターは予測ではなく予測で効果的に動作できます
リアクティブモード。 デフォルトは0です。
例
・騒がしい中で聞くのに適した静かなパッセージと大きなパッセージの両方で音楽を作る
環境:
compand=.3|.3:1|1:-90/-60|-60/-40|-40/-30|-20/-20:6:0:-90:0.2
ささやきと爆発の部分を含むオーディオの別の例:
compand=0|0:1|1:-90/-900|-70/-70|-30/-9|0/-3:6:0:0:0
・ノイズが信号よりも低いレベルにある場合のノイズゲート:
compand=.1|.1:.2|.2:-900/-900|-50.1/-900|-50/-50:.01:0:-90:.1
・これは別のノイズゲートです。今回は、ノイズが
信号(ある意味では、スケルチに似ています):
compand=.1|.1:.1|.1:-45.1/-45.1|-45/-900|0/-900:.01:45:-90:.1
DCシフト
オーディオにDCシフトを適用します。
これは、DCオフセットを削除するのに役立ちます(おそらく、ハードウェアの問題が原因です。
録音チェーン)オーディオから。 DCオフセットの影響により、ヘッドルームが減少し、したがって
音量。 ザ アスタチン フィルタを使用して、信号にDCオフセットがあるかどうかを判断できます。
シフト
DCシフトを設定します。許容範囲は[-1、1]です。 シフト量を示します
オーディオ。
リミッターゲイン
オプション。 1よりはるかに小さい値(たとえば、0.05または0.02)を持つ必要があり、次の目的で使用されます。
クリッピングを防ぎます。
ダイノーム
ダイナミックオーディオノーマライザー。
このフィルターは、ピークをもたらすために、入力オーディオに一定量のゲインを適用します
目標レベルまでの大きさ(例:0 dBFS)。 ただし、より「単純な」とは対照的に
正規化アルゴリズム、ダイナミックオーディオノーマライザーは*動的に*ゲインを再調整します
入力オーディオに因数分解します。 これにより、の「静かな」セクションに追加のゲインを適用できます。
歪みを避けたり、「大きな」セクションをクリッピングしたりしながら、オーディオを再生します。 言い換えれば:
ダイナミックオーディオノーマライザーは、静かなセクションと大きなセクションの音量を「均等」にします。
各セクションの音量が同じ目標レベルになっていることを感じてください。 ただし、注意してください
ダイナミックオーディオノーマライザーが「ダイナミックレンジ」を適用せずにこの目標を達成すること
圧縮」。オーディオの各セクション内のダイナミックレンジを100%保持します。
ファイルにソフトウェアを指定する必要があります。
f フレームの長さをミリ秒単位で設定します。 10〜8000ミリ秒の範囲。 ディフォルト
500ミリ秒です。 ダイナミックオーディオノーマライザーは、入力オーディオを小さく処理します
フレームと呼ばれるチャンク。 ピークの大きさには
単一のサンプル値のみを意味します。 代わりに、ピークを決定する必要があります
サンプル値の連続したシーケンスの大きさ。 「標準」ノーマライザー
ファイル全体のピークマグニチュードであるダイナミックオーディオノーマライザーを使用するだけです。
フレームごとに個別にピークの大きさを決定します。 フレームの長さは
ミリ秒単位で指定します。 デフォルトでは、ダイナミックオーディオノーマライザーはフレームを使用します
500ミリ秒の長さで、ほとんどのファイルで良好な結果が得られることがわかっています。
サンプル数で表した正確なフレーム長が決定されることに注意してください
個々の入力オーディオファイルのサンプリングレートに基づいて自動的に。
g ガウスフィルターのウィンドウサイズを設定します。 3から301の範囲で、奇数でなければなりません。
デフォルトは31です。おそらくダイナミックオーディオノーマライザーの最も重要なパラメーターです。
はガウス平滑化フィルターの「ウィンドウサイズ」です。 フィルタのウィンドウサイズは
現在のフレームを中心に、フレームで指定されます。 簡単にするために、
これは奇数でなければなりません。 したがって、デフォルト値の31が考慮されます。
現在のフレーム、および前の15フレームと後の15フレーム。
より大きなウィンドウを使用すると、より強力なスムージング効果が得られ、ゲインが低下します。
変動、すなわち、より遅いゲイン適応。 逆に、小さいウィンドウを使用すると、
より弱い平滑化効果、したがってより多くのゲイン変動、すなわちより速いゲイン
適応。 つまり、この値を増やすほど、動的になります
オーディオノーマライザーは、「従来の」正規化フィルターのように動作します。 に
逆に、この値を小さくすればするほど、ダイナミックオーディオノーマライザーは大きくなります
ダイナミックレンジコンプレッサーのように動作します。
p 目標ピーク値を設定します。 これは、の最大許容マグニチュードレベルを指定します
正規化されたオーディオ入力。 このフィルターは、ターゲットのピークの大きさに近づこうとします
可能な限り厳密に、しかし同時に、正規化されていることを確認します
信号がピークの大きさを超えることはありません。 フレームの最大ローカルゲイン係数は
ターゲットのピークの大きさによって直接課せられます。 デフォルト値は0.95であるため、
5%*のヘッドルームを残します。 この値を超えることはお勧めしません。
m 最大ゲイン係数を設定します。 1.0から100.0の範囲。 デフォルトは10.0です。 ダイナミック
オーディオノーマライザーは、各入力の可能な最大(ローカル)ゲイン係数を決定します
フレーム、つまりクリッピングや歪みを引き起こさない最大ゲイン係数。
最大ゲイン係数は、フレームの最大マグニチュードサンプルによって決定されます。
ただし、ダイナミックオーディオノーマライザーはさらにフレームの最大ゲインを制限します
所定の(グローバル)最大ゲイン係数で因数分解します。 これは回避するために行われます
「サイレント」またはほとんどサイレントフレームでの過度のゲイン係数。 デフォルトでは、最大
ゲイン係数は10.0です。ほとんどの入力では、デフォルト値で十分であり、
通常、この値を増やすことはお勧めしません。 とはいえ、非常に
全体的な音量レベルが低い場合は、さらに高いゲイン係数を許可する必要があります。 ノート、
ただし、ダイナミックオーディオノーマライザーは単に「ハード」しきい値を適用するだけではありません
(つまり、しきい値を超える値をカットオフします)。 代わりに、「シグモイド」しきい値関数
適用されます。 このようにして、ゲイン係数はスムーズにしきい値に近づきます
値ですが、その値を超えることはありません。
r 目標RMSを設定します。 0.0から1.0の範囲。 デフォルトは0.0です-無効です。 デフォルトでは、
ダイナミックオーディオノーマライザーは「ピーク」正規化を実行します。 これは、
各フレームの最大ローカルゲイン係数は、フレームの最高値によって(のみ)定義されます。
マグニチュードサンプル。 このようにして、サンプルを可能な限り増幅することができます。
最大信号レベルを超える、つまりクリッピングなし。 ただし、オプションで、
ダイナミックオーディオノーマライザーは、フレームの二乗平均平方根も考慮に入れることができます。
RMSと略されます。 電気工学では、RMSは一般的に以下を決定するために使用されます
時変信号のパワー。 したがって、RMSの方が優れていると考えられます。
信号のピークを見るだけではなく、「知覚されるラウドネス」の近似
マグニチュード。 したがって、すべてのフレームを一定のRMS値に調整することにより、均一になります。
「知覚ラウドネス」を確立することができます。 ターゲットRMS値が指定されている場合、
フレームのローカルゲイン係数は、まさにその結果となる係数として定義されます。
RMS値。 ただし、最大ローカルゲイン係数は依然としてによって制限されていることに注意してください。
クリッピングを防ぐための、フレームの最大マグニチュードサンプル。
n チャネル結合を有効にします。 デフォルトでは有効になっています。 デフォルトでは、ダイナミックオーディオ
ノーマライザーは、すべてのチャネルを同じ量だけ増幅します。 これは同じゲインを意味します
係数はすべてのチャネルに適用されます。つまり、可能な最大ゲイン係数は
「最も大きな」チャンネルによって決定されます。 ただし、一部の録音では、
異なるチャンネルの音量は不均一です。たとえば、XNUMXつのチャンネルは
他のもの。 この場合、このオプションを使用してチャネルを無効にすることができます
カップリング。 このようにして、ゲイン係数はチャネルごとに個別に決定されます。
個々のチャネルの最大マグニチュードサンプルのみに依存します。 これにより、
さまざまなチャンネルの音量を調和させます。
c DCバイアス補正を有効にします。 デフォルトでは無効になっています。 オーディオ信号(当時
domain)は、サンプル値のシーケンスです。 ダイナミックオーディオノーマライザーでは、これらのサンプル
値は、元の入力に関係なく、-1.0〜1.0の範囲で表されます
フォーマット。 通常、オーディオ信号、つまり「波形」はゼロを中心に配置する必要があります
点。 つまり、ファイル内またはファイル内のすべてのサンプルの平均値を計算する場合
単一フレームの場合、結果は0.0または少なくともその値に非常に近いはずです。 もしも、
ただし、どちらの場合も、平均値が0.0から大幅にずれています。
正または負の方向。これは、DCバイアスまたはDCオフセットと呼ばれます。 以来
DCバイアスは明らかに望ましくありません。ダイナミックオーディオノーマライザーはオプションのDCバイアスを提供します
修正。 DCバイアス補正を有効にすると、ダイナミックオーディオノーマライザーは
各入力フレームの平均値、つまり「DC補正」オフセットを決定し、減算します
フレームのすべてのサンプル値からのその値は、これらのサンプルが
再び0.0を中心に。 また、フレーム境界での「ギャップ」を回避するために、
DC補正オフセット値は、隣接するフレーム間でスムーズに補間されます。
b 代替境界モードを有効にします。 デフォルトでは無効になっています。 ダイナミックオーディオ
ノーマライザーは、各フレームの周囲の特定の近傍を考慮に入れます。 これも
前のフレームと後続のフレーム。 ただし、「境界」については
オーディオファイルの最初と最後にあるフレーム、すべてではない
隣接するフレームが利用可能です。 特に、の最初の数フレームについては
オーディオファイル、前のフレームは不明です。 そして、同様に、最後のいくつかについて
オーディオファイル内のフレームでは、後続のフレームは不明です。 したがって、質問
「境界」で欠落しているフレームに対してどのゲイン係数を想定する必要があるかが発生します
領域。 ダイナミックオーディオノーマライザーは、この状況に対処するためにXNUMXつのモードを実装しています。
デフォルトの境界モードでは、欠落しているフレームのゲイン係数が正確に1.0であると想定しています。
その結果、最初と最後にスムーズな「フェードイン」と「フェードアウト」が発生します。
それぞれ入力。
s 圧縮係数を設定します。 0.0から30.0の範囲。 デフォルトは0.0です。 デフォルトでは、
ダイナミックオーディオノーマライザーは、「従来の」圧縮を適用しません。 この意味は
信号のピークは除去されないため、ダイナミックレンジ全体が保持されます
各地域内。 ただし、場合によっては、組み合わせることが望ましい場合があります。
より「伝統的な」ダイナミックオーディオノーマライザーの正規化アルゴリズム
圧縮。 この目的のために、ダイナミックオーディオノーマライザーはオプションを提供します
圧縮(しきい値)機能。 圧縮機能が
有効にすると、すべての入力フレームが事前にソフトニーしきい値機能によって処理されます
実際の正規化プロセスに。 簡単に言えば、しきい値関数は
大きさが特定のしきい値を超えるすべてのサンプルを整理します。 しかし
ダイナミックオーディオノーマライザーは、単に固定のしきい値を適用するだけではありません。 代わりに、
しきい値は、フレームごとに調整されます。 一般的に、小さい
パラメータはより強力な圧縮をもたらし、その逆も同様です。 3.0未満の値は
可聴歪みが発生する可能性があるため、お勧めします。
耳垢
ヘッドホンでオーディオを聞き取りやすくします。
このフィルターは、44.1kHzステレオ(つまりオーディオCDフォーマット)オーディオに「キュー」を追加します。
ヘッドホンで聞くと、ステレオ画像が頭の中から移動します(
ヘッドホン)をリスナーの外と前に(スピーカーの標準)。
SoXから移植されました。
イコライザ
XNUMX極ピーキング等化(EQ)フィルターを適用します。 このフィルターを使用すると、信号レベルは
選択した周波数付近では、(バンドパスやバンドパスとは異なり、増減することができます)
他のすべての周波数で変更されないbandrejectフィルター)。
複雑な等化曲線を作成するために、このフィルターを数回与えることができます。
それぞれ中心周波数が異なります。
フィルタは次のオプションを受け入れます。
周波数、 f
フィルタの中心周波数をHzで設定します。
幅の種類
フィルタの帯域幅を指定するメソッドを設定します。
h Hz
q Qファクター
o オクターブ
s スロープ
幅、 w
フィルタの帯域幅をwidth_type単位で指定します。
ゲイン、 g
必要なゲインまたは減衰をdB単位で設定します。 ポジティブを使用するときはクリッピングに注意してください
ゲイン。
例
・帯域幅10 Hzで、1000Hzで200dBを減衰させます。
イコライザー= f = 1000:width_type = h:width = 200:g = -10
・Q2で1000Hzで1dBのゲインを適用し、Q5で100Hzで2dBを減衰させます。
equalizer=f=1000:width_type=q:width=1:g=2,equalizer=f=100:width_type=q:width=2:g=-5
フランジャー
オーディオにフランジ効果を適用します。
フィルタは次のオプションを受け入れます。
遅らせる
基本遅延をミリ秒単位で設定します。 範囲は0〜30です。デフォルト値は0です。
深さ
追加されたスイープ遅延をミリ秒単位で設定します。 範囲は0〜10です。デフォルト値は2です。
かき混ぜる
再生率(遅延信号フィードバック)を設定します。 -95から95の範囲。デフォルト
値は0です。
幅
オリジナルと混合された遅延信号のパーセンテージを設定します。 範囲は0〜100です。デフォルト
値は71です。
スピード
0.1秒あたりのスイープ(Hz)を設定します。 範囲は10〜0.5です。デフォルト値はXNUMXです。
形状
掃引波形を設定し、 三角 or 正弦波。 デフォルト値は 正弦波.
相
マルチチャネルの掃引波のパーセンテージシフトを設定します。 範囲は0〜100です。デフォルト値
25です。
インタープ
遅延線補間を設定し、 線形 or 二次。 デフォルトは 線形.
ハイパス
3dBのポイント周波数でハイパスフィルターを適用します。 フィルタは単極、
または双極(デフォルト)。 フィルタは、6オクターブあたり20極あたりXNUMXdB(XNUMXオクターブあたりXNUMXdB)でロールオフします。
XNUMX年あたりの極)。
フィルタは次のオプションを受け入れます。
周波数、 f
周波数をHzで設定します。 デフォルトは3000です。
ポール、 p
極数を設定します。 デフォルトは2です。
幅の種類
フィルタの帯域幅を指定するメソッドを設定します。
h Hz
q Qファクター
o オクターブ
s スロープ
幅、 w
フィルタの帯域幅をwidth_type単位で指定します。 双極にのみ適用されます
フィルター。 デフォルトは0.707qで、バターワース応答を返します。
join
複数の入力ストリームをXNUMXつのマルチチャネルストリームに結合します。
次のパラメータを受け入れます。
入力
入力ストリームの数。 デフォルトは2です。
チャンネルレイアウト
目的の出力チャネルレイアウト。 デフォルトはステレオです。
地図 チャネルを入力から出力にマッピングします。 引数は '|'で区切られたマッピングのリストです。
それぞれの "input_idx.in_channel-out_channel " フォーム。 入力_idx の0ベースのインデックスです
入力ストリーム。 チャネル内 入力チャネルの名前(たとえば、FLの場合)のいずれかです。
左前)または指定された入力ストリーム内のそのインデックス。 アウトチャネル の名前です
出力チャネル。
明示的に指定されていない場合、フィルターはマッピングを推測しようとします。 これ
最初に未使用の一致する入力チャネルを見つけようとし、それが失敗した場合はそれを行います
最初の未使用の入力チャンネルを選択します。
3つの入力を結合します(適切に設定されたチャネルレイアウトを使用):
ffmpeg -i INPUT1 -i INPUT2 -i INPUT3 -filter_complex join = input = 3 OUTPUT
5.1つのシングルチャネルストリームから6出力を構築します。
ffmpeg -i fl -i fr -i fc -i sl -i sr -il lfe -filter_complex
'join=inputs=6:channel_layout=5.1:map=0.0-FL|1.0-FR|2.0-FC|3.0-SL|4.0-SR|5.0-LFE'
でる
ラスパ
LADSPA(Linux Audio Developer's Simple Plugin API)プラグインをロードします。
このフィルターのコンパイルを有効にするには、「-enable-ladspa」を使用してFFmpegを構成する必要があります。
ファイル、 f
ロードするLADSPAプラグインライブラリの名前を指定します。 環境変数の場合
LADSPA_PATH が定義されている場合、LADSPAプラグインは各ディレクトリで検索されます
のコロン区切りリストで指定 LADSPA_PATH、それ以外の場合は標準LADSPA
この順序のパス: HOME / .ladspa / lib /, / usr / local / lib / ladspa /,
/ usr / lib / ladspa /.
プラグインは、 p
ライブラリ内のプラグインを指定します。 一部のライブラリにはプラグインがXNUMXつしか含まれていませんが、
他のものはそれらの多くを含んでいます。 これが設定されていない場合、フィルターは利用可能なすべてのプラグインを一覧表示します
指定されたライブラリ内。
コントロール c
'|'を設定しますゼロ以上の浮動小数点値であるコントロールの分離リスト
ロードされたプラグインの動作を決定します(たとえば、遅延、しきい値、または
利得)。 コントロールは、次の構文を使用して定義する必要があります。
c0 =value0| c1 =value1| c2 =value2| ...、ここで 価値ある に設定された値です i-番目のコントロール。
If controls が「ヘルプ」に設定されている場合、使用可能なすべてのコントロールとその有効な範囲は次のとおりです。
印刷されます。
サンプルレート、 s
サンプルレートを指定します。デフォルトは44100です。プラグインの入力がゼロの場合にのみ使用されます。
nb_samples、 n
各出力フレームごとのチャネルごとのサンプル数を設定します。デフォルトは1024です。のみ
プラグインの入力がゼロの場合に使用されます。
デュレーション、 d
ソースオーディオの最小期間を設定します。 見る Time デュレーション in
ffmpeg-utils(1) マニュアル 受け入れられた構文について。 結果の期間は
生成されたオーディオは常に
完全なフレームの終わり。 指定されていない場合、または表現された期間が負の場合、
オーディオは永久に生成されることになっています。 プラグインの入力がゼロの場合にのみ使用されます。
例
・amp(LADSPAサンプルプラグイン)ライブラリ内の利用可能なすべてのプラグインを一覧表示します。
ladspa = file = amp
・「VCF」からの「vcf_notch」プラグインで使用可能なすべてのコントロールとそれらの有効な範囲を一覧表示します
としょうかん:
ladspa = f = vcf:p = vcf_notch:c = help
・「ComputerMusicToolkit」(CMT)プラグインを使用して低品質のオーディオ機器をシミュレートする
としょうかん:
ladspa=file=cmt:plugin=lofi:controls=c0=22|c1=12|c2=12
・TAPプラグイン(Tomのオーディオ処理プラグイン)を使用して、オーディオに残響を追加します。
ladspa = file = tap_reverb:tap_reverb
・振幅0.2のホワイトノイズを生成します。
ladspa = file = cmt:noise_source_white:c = c0 = .2
・「C *オーディオプラグイン」のプラグイン「C * Click-Metronome」を使用して20bpmクリックを生成します
Suite "(CAPS)ライブラリ:
ladspa = file = caps:Click:c = c1 = 20 '
・「C * Eq10X2-ステレオ10バンドイコライザー」効果を適用します。
ladspa=caps:Eq10X2:c=c0=-48|c9=-24|c3=12|c4=2
コマンド
このフィルターは、次のコマンドをサポートします。
cN 修正します N-番目の制御値。
指定された値が有効でない場合、その値は無視され、前の値が保持されます。
ローパス
3dBのポイント周波数でローパスフィルターを適用します。 フィルタは単極または単極のいずれかです
双極(デフォルト)。 フィルタは、オクターブあたり6極あたり20dB(XNUMX極あたりXNUMXdB)でロールオフします。
XNUMX年ごと)。
フィルタは次のオプションを受け入れます。
周波数、 f
周波数をHzで設定します。 デフォルトは500です。
ポール、 p
極数を設定します。 デフォルトは2です。
幅の種類
フィルタの帯域幅を指定するメソッドを設定します。
h Hz
q Qファクター
o オクターブ
s スロープ
幅、 w
フィルタの帯域幅をwidth_type単位で指定します。 双極にのみ適用されます
フィルター。 デフォルトは0.707qで、バターワース応答を返します。
パン
特定のゲインレベルでチャンネルをミックスします。 フィルタは出力チャネルレイアウトを受け入れます
その後に一連のチャネル定義が続きます。
このフィルターは、オーディオストリームのチャンネルを効率的に再マッピングするようにも設計されています。
フィルタは次の形式のパラメータを受け入れます: "l|アウトデフ|アウトデフ| ...」
l 出力チャネルレイアウトまたはチャネル数
アウトデフ
次の形式の出力チャネル仕様:
"アウト名=[利得*]in_name[+ [利得*]in_name...]」
アウト名
チャネル名(FL、FRなど)またはチャネル番号のいずれかを定義する出力チャネル
(c0、c1など)
利得
チャネルの乗法係数、1はボリュームを変更せずに残します
in_name
使用する入力チャネル。詳細については、out_nameを参照してください。 名前付きと名前を混在させることはできません
番号付き入力チャンネル
チャネル仕様の `= 'が` <'に置き換えられた場合、そのゲインは
合計が1になるように仕様が再正規化されるため、クリッピングノイズが回避されます。
混合 例
たとえば、ステレオからモノラルにダウンミックスしたいが、
左チャンネル:
pan=1c|c0=0.9*c0+0.1*c1
3、4、5、7チャンネルで自動的に機能するステレオへのカスタマイズされたダウンミックス
囲む:
pan =ステレオ| FL <FL + 0.5 * FC + 0.6 * BL + 0.6 * SL | FR <FR + 0.5 * FC + 0.6 * BR + 0.6 * SR
注意してください ffmpeg デフォルトのダウンミックス(およびアップミックス)システムを統合します。
非常に具体的なニーズがない限り、推奨されます(「-ac」オプションを参照)。
再マッピング 例
チャネルの再マッピングは、次の場合にのみ有効になります。
*
*
これらの条件がすべて満たされると、フィルターはユーザーに通知します(「純粋なチャネル
マッピングが検出されました」)、最適化されたロスレス方式を使用して再マッピングを実行します。
たとえば、5.1ソースがあり、余分なものをドロップしてステレオオーディオストリームが必要な場合
チャンネル:
pan = "stereo | c0 = FL | c1 = FR"
同じソースが与えられた場合、フロント左チャンネルとフロント右チャンネルを切り替えて維持することもできます
入力チャネルレイアウト:
pan = "5.1 | c0 = c1 | c1 = c0 | c2 = c2 | c3 = c3 | c4 = c4 | c5 = c5"
入力がステレオオーディオストリームの場合は、左前のチャンネルをミュートできます(それでも維持できます)
ステレオチャンネルレイアウト):
pan = "stereo | c1 = c1"
ステレオオーディオストリーム入力でも、右チャンネルを左前両方にコピーできます
そして右:
pan = "stereo | c0 = FR | c1 = FR"
リプレイゲイン
ReplayGainスキャナーフィルター。 このフィルターは、オーディオストリームを入力として受け取り、それを出力します
変更なし。 フィルタリングの最後に、「track_gain」と「track_peak」が表示されます。
リサンプル
オーディオサンプルフォーマット、サンプルレート、チャンネルレイアウトを変換します。 それは意図されていません
直接使用されます。
サイドチェイン圧縮
このフィルターは通常のコンプレッサーのように機能しますが、検出された信号を圧縮する機能があります
XNUMX番目の入力信号を使用します。 XNUMXつの入力ストリームが必要で、XNUMXつの出力ストリームを返します。
最初の入力ストリームは、XNUMX番目のストリーム信号に応じて処理されます。 フィルタリングされた
その後、信号は処理の後の段階で他のフィルターでフィルター処理できます。 見る パン と
合併する フィルタ。
フィルタは次のオプションを受け入れます。
しきい値
XNUMX番目のストリームの信号がこのレベルを超えると、ゲインの低下に影響します。
最初のストリームの。 デフォルトは0.125です。 範囲は0.00097563から1の間です。
比
信号が減少する比率を設定します。 1:2は、レベルが4dB上昇した場合を意味します
しきい値を超えると、削減後はわずか2dB上になります。 デフォルトは2です。
範囲は1〜20です。
攻撃
ゲインの前に信号がしきい値を超えて上昇する必要があるミリ秒数
削減が始まります。 デフォルトは20です。範囲は0.01から2000の間です。
リリース
削減が行われる前に、信号がしきい値を下回らなければならないミリ秒数
再び減少した。 デフォルトは250です。範囲は0.01〜9000です。
メイクアップ
処理後に増幅される信号量で量を設定します。 デフォルトは2です。
範囲は1〜64です。
膝
鋭い膝をスレッショルドの周りでカーブさせて、ゲインリダクションをよりソフトに入力します。
デフォルトは2.82843です。 範囲は1〜8です。
側鎖ストリームのすべてのチャネル間の「平均」レベルか、
側鎖ストリームのより大きな(「最大」)チャネルは、減少に影響を与えます。 デフォルトは
"平均"。
検出
「ピーク」の場合は正確な信号を取得する必要があり、「rms」の場合はRMS信号を取得する必要があります。
デフォルトは「rms」で、主にスムーズです。
例
・2つのオーディオ入力を使用する完全なffmpegの例、1番目の入力は
2番目の入力の信号と2番目の入力とマージされる後で圧縮された信号:
ffmpeg -i main.flac -i sidechain.flac -filter_complex "[1:a] asplit = 2 [sc] [mix]; [0:a] [sc] sidechaincompress [compr]; [compr] [mix] amerge"
無音検出
オーディオストリームの無音を検出します。
このフィルターは、入力音量が以下であることを検出すると、メッセージをログに記録します
検出された最小ノイズ以上の持続時間のノイズ許容値
期間。
印刷された時間と期間は秒単位で表されます。
フィルタは次のオプションを受け入れます。
デュレーション、 d
通知までの無音時間を設定します(デフォルトは2秒)。
ノイズ、 n
ノイズ許容値を設定します。 dB単位で指定可能(指定した値に「dB」が付加されている場合)
値)または振幅比。 デフォルトは-60dB、つまり0.001です。
例
・-5dBのノイズ耐性で50秒間の無音を検出します。
silencedetect = n = -50dB:d = 5
・完全な例 ffmpeg 0.0001のノイズ耐性で無音を検出するには
無音.mp3:
ffmpeg -i silence.mp3 -af silencedetect = noise = 0.0001 -f null-
サイレンス削除
オーディオの最初、中間、または最後から無音部分を削除します。
フィルタは次のオプションを受け入れます。
開始期間
この値は、オーディオの開始時にオーディオをトリミングする必要があるかどうかを示すために使用されます。 A
ゼロの値は、無音部分を最初からトリミングしてはならないことを示します。 いつ
ゼロ以外の値を指定すると、無音でないことが検出されるまでオーディオがトリミングされます。 通常は、
オーディオの最初から無音をトリミングするとき 開始期間 1になりますが、
非無音の特定のカウントまですべてのオーディオをトリミングするには、より高い値に増やします
期間。 デフォルト値は0です。
開始期間
非沈黙がトリミングを停止する前に検出する必要がある時間を指定します
オーディオ。 持続時間を長くすることで、ノイズのバーストを無音として扱うことができます。
トリミング。 デフォルト値は0です。
開始閾値
これは、どのサンプル値を無音として処理する必要があるかを示します。 デジタルオーディオの場合、
値0でもかまいませんが、アナログから録音されたオーディオの場合は、値を大きくすることをお勧めします。
バックグラウンドノイズを考慮した値。 dBで指定できます(「dB」が
指定値に付加)または振幅比。 デフォルト値は0です。
停止期間
オーディオの最後から無音部分をトリミングするためのカウントを設定します。 から沈黙を取り除くには
ファイルの途中で、 停止期間 それは否定的です。 次に、この値が処理されます
正の値として使用され、効果が次のように処理を再開する必要があることを示すために使用されます
によって指定された 開始期間、無音の期間を削除するのに適しています
オーディオの真ん中。 デフォルト値は0です。
stop_duration
オーディオがコピーされなくなるまでに存在しなければならない無音の期間を指定します。 に
より長い期間を指定すると、必要な無音をオーディオに残すことができます。
デフォルト値は0です。
停止しきい値
これはと同じです 開始閾値 しかし、オーディオの終わりから沈黙をトリミングするために。
dB(指定値に「dB」が付加されている場合)または振幅で指定できます
比。 デフォルト値は0です。
Leave_silence
これは、 stop_duration オーディオの長さはそのままにしておく必要があります
沈黙の各期間の始まり。 たとえば、長い一時停止を削除したい場合
単語の間にありますが、一時停止を完全に削除したくありません。 デフォルト値は0です。
例
・次の例は、このフィルターを使用して、次のような記録を開始する方法を示しています。
レコードを押す間に通常発生する開始時の遅延を含まない
ボタンとパフォーマンスの開始:
silenceremove = 1:5:0.02
高音域
XNUMX極シェルビングフィルターを使用して、オーディオの高音域(高域)をブーストまたはカットします。
標準のhi-fiのトーンコントロールと同様の応答。 これは、
棚の均等化(EQ)。
フィルタは次のオプションを受け入れます。
ゲイン、 g
〜22kHzとナイキスト周波数のいずれか低い方でゲインを与えます。 これは
有用な範囲は、約-20(大きなカットの場合)から+20(大きなブーストの場合)です。 気づく
正のゲインを使用する場合のクリッピング。
周波数、 f
フィルタの中心周波数を設定して、拡張または削減に使用できるようにします。
ブーストまたはカットする周波数範囲。 デフォルト値は3000Hzです。
幅の種類
フィルタの帯域幅を指定するメソッドを設定します。
h Hz
q Qファクター
o オクターブ
s スロープ
幅、 w
フィルタのシェルフ遷移がどの程度急であるかを判断します。
ボリューム
入力音量を調整します。
次のパラメータを受け入れます。
ボリューム
音量表現を設定します。
出力値は最大値にクリップされます。
出力音量は、次の関係で与えられます。
= *
のデフォルト値 ボリューム 「1.0」です。
精度
このパラメーターは、数学的な精度を表します。
許可される入力サンプル形式を決定します。これは精度に影響します。
ボリュームスケーリングの。
固定の
8ビット固定小数点; これにより、入力サンプル形式がU8、S16、およびS32に制限されます。
フロート
32ビット浮動小数点; これにより、入力サンプル形式がFLTに制限されます。 (デフォルト)
64ビット浮動小数点; これにより、入力サンプル形式がDBLに制限されます。
リプレイゲイン
入力フレームでReplayGainサイドデータに遭遇したときの動作を選択します。
ドロップ
ReplayGainサイドデータを削除し、その内容を無視します(デフォルト)。
無視する
ReplayGainサイドデータを無視しますが、フレームに残します。
追跡する
存在する場合は、トラックゲインを優先します。
アルバム
存在する場合は、アルバムゲインを優先します。
リプレイゲイン_プリアンプ
選択したリプレイゲインゲインに適用する前置増幅ゲイン(dB)。
のデフォルト値 リプレイゲイン_プリアンプ 0.0です。
評価する
ボリューム式を評価するときに設定します。
次の値を受け入れます。
かつて
フィルタの初期化中、または ボリューム
コマンドが送信されます
フレーム
着信フレームごとに式を評価する
デフォルト値は かつて.
ボリューム式には、次のパラメーターを含めることができます。
n フレーム番号(ゼロから開始)
nb_channels
チャネル数
nb_consumed_samples
フィルタによって消費されたサンプルの数
nb_samples
現在のフレームのサンプル数
投稿する ファイル内の元のフレーム位置
PTS フレームPTS
サンプルレート
サンプルレート
開始点
ストリーム開始時のPTS
開始
ストリーム開始時の時間
t フレームタイム
tb タイムスタンプタイムベース
ボリューム
最後に設定した音量値
に注意してください 評価する に設定されています かつて のみ サンプルレート と tb 変数が利用可能です、
他のすべての変数はNANに評価されます。
コマンド
このフィルターは、次のコマンドをサポートします。
ボリューム
ボリューム式を変更します。 このコマンドは、
対応するオプション。
指定された式が無効な場合、現在の値に保持されます。
リプレイゲイン_noclip
適用されるゲインを制限することにより、クリッピングを防ぎます。
のデフォルト値 リプレイゲイン_noclip 1です。
例
・入力音量を半分にします。
volume = volume = 0.5
ボリューム=ボリューム=1/2
ボリューム=ボリューム=-6.0206dB
上記のすべての例で、 ボリューム たとえば、次のように省略できます。
ボリューム=0.5
・固定小数点精度を使用して、入力オーディオパワーを6デシベル増やします。
volume = volume = 6dB:precision = fixed
・10秒の消滅期間で時間5の後にボリュームをフェードします。
volume='if(lt(t,10),1,max(1-(t-10)/5,0))':eval=frame
ボリューム検出
入力ビデオの音量を検出します。
フィルタにはパラメータがありません。 入力は変更されません。 ボリュームに関する統計は
入力ストリームの終わりに達したときにログに出力されます。
特に、平均ボリューム(二乗平均平方根)、最大ボリューム(ごとに)が表示されます。
サンプルベース)、および登録されたボリューム値のヒストグラムの開始(
サンプルの累積1/1000の最大値)。
すべてのボリュームは、最大PCM値を基準にしたデシベル単位です。
例
出力の抜粋は次のとおりです。
[Parsed_volumedetect_0 0xa23120] mean_volume:-27 dB
[Parsed_volumedetect_0 0xa23120] max_volume:-4 dB
[Parsed_volumedetect_0 0xa23120]histogram_4db:6
[Parsed_volumedetect_0 0xa23120]histogram_5db:62
[Parsed_volumedetect_0 0xa23120]histogram_6db:286
[Parsed_volumedetect_0 0xa23120]histogram_7db:1042
[Parsed_volumedetect_0 0xa23120]histogram_8db:2551
[Parsed_volumedetect_0 0xa23120]histogram_9db:4609
[Parsed_volumedetect_0 0xa23120]histogram_10db:8409
だということだ:
・平均二乗エネルギーは約-27 dB、つまり10^-2.7です。
・最大のサンプルは-4 dB、より正確には-4dBから-5dBの間です。
・-6 dBで4つのサンプル、-62 dBで5、-286dBで6などがあります。
つまり、音量を+4 dB上げてもクリッピングは発生せず、+5上げます。
dBは、6サンプルなどのクリッピングを引き起こします。
AUDIO SOURCES
以下は、現在利用可能なオーディオソースの説明です。
バッファー
オーディオフレームをバッファリングし、フィルターチェーンで使用できるようにします。
このソースは、主にプログラムによる使用、特にインターフェイスを介した使用を目的としています。
で定義された libavfilter / asrc_abuffer.h.
次のパラメータを受け入れます。
タイムベース
送信されたフレームのタイムスタンプに使用されるタイムベース。 どちらかでなければなりません
浮動小数点数または 分子/分母 フォーム。
サンプルレート
着信オーディオバッファのサンプルレート。
サンプルfmt
着信オーディオバッファのサンプルフォーマット。 サンプルフォーマット名またはその
列挙型AVSampleFormatからの対応する整数表現
libavutil / samplefmt.h
チャンネルレイアウト
着信オーディオバッファのチャネルレイアウト。 からのチャネルレイアウト名
channel_layout_map の libavutil / channel_layout.c またはそれに対応する整数
のAV_CH_LAYOUT_*マクロからの表現 libavutil / channel_layout.h
チャンネル
着信オーディオバッファのチャネル数。 両方の場合 チャンネル と
チャンネルレイアウト が指定されている場合、それらは一貫している必要があります。
例
abuffer = sample_rate = 44100:sample_fmt = s16p:channel_layout=ステレオ
16Hzで平面44100ビット符号付きステレオを受け入れるようにソースに指示します。 以来
「s16p」という名前のサンプルフォーマットは、6番と「ステレオ」チャンネルレイアウトに対応します。
値0x3に対応し、これは次と同等です。
abuffer = sample_rate = 44100:sample_fmt = 6:channel_layout = 0x3
aevalsrc
式で指定されたオーディオ信号を生成します。
このソースは、入力でXNUMXつ以上の式(チャネルごとにXNUMXつ)を受け入れます。
評価され、対応するオーディオ信号を生成するために使用されます。
このソースは、次のオプションを受け入れます。
式
個別のチャネルごとに「|」で区切られた式のリストを設定します。 の場合
チャンネルレイアウト オプションが指定されていない場合、選択されるチャネルレイアウトは
提供された式の数。 それ以外の場合は、最後に指定された式がに適用されます
残りの出力チャネル。
channel_layout、 c
チャネルレイアウトを設定します。 指定されたレイアウトのチャネル数は等しくなければなりません
指定された式の数に。
デュレーション、 d
ソースオーディオの最小期間を設定します。 見る Time デュレーション in
ffmpeg-utils(1) マニュアル 受け入れられた構文について。 結果の期間は
生成されたオーディオは常に
完全なフレームの終わり。
指定されていない場合、または表現された持続時間が負の場合、オーディオは
永遠に生成されます。
nb_samples、 n
各出力フレームごとのチャネルごとのサンプル数を設定します。デフォルトは1024です。
サンプルレート、 s
サンプルレートを指定します。デフォルトは44100です。
の各式 式 次の定数を含めることができます。
n 0から始まる評価されたサンプルの数
t 0から始まる、秒で表された評価されたサンプルの時間
s サンプルレート
例
・沈黙を生成します:
aevalsrc = 0
・周波数440 Hzのsin信号を生成し、サンプルレートを8000Hzに設定します。
aevalsrc = "/ sin(440 * 2 * PI * t):s = 8000"
・XNUMXチャンネル信号を生成し、チャンネルレイアウトを指定します(フロントセンター+バック
センター)明示的に:
aevalsrc = "/ sin(420 * 2 * PI * t)| cos(430 * 2 * PI * t):c = FC | BC"
・ホワイトノイズを生成します。
aevalsrc = "/-2 +ランダム(0) "
・振幅変調信号を生成します。
aevalsrc = "/ sin(10 * 2 * PI * t)* sin(880 * 2 * PI * t)"
・2.5Hzキャリアで360Hzバイノーラルビートを生成します。
aevalsrc="/0.1*sin(2*PI*(360-2.5/2)*t) | 0.1*sin(2*PI*(360+2.5/2)*t)"
無効なrc
nullオーディオソース、未処理のオーディオフレームを返します。 主にテンプレートとして役立ちます
分析/デバッグツールで使用するか、フィルターのソースとして使用します。
入力データを無視します(たとえば、soxシンセフィルター)。
このソースは、次のオプションを受け入れます。
channel_layout、 cl
チャネルレイアウトを指定します。整数または文字列のいずれかで、
チャネルレイアウト。 のデフォルト値 チャンネルレイアウト 「ステレオ」です。
のchannel_layout_map定義を確認してください libavutil / channel_layout.c マッピング用
文字列とチャネルレイアウト値の間。
サンプルレート、 r
サンプルレートを指定し、デフォルトは44100です。
nb_samples、 n
要求されたフレームごとのサンプル数を設定します。
例
・サンプルレートを48000 Hzに設定し、チャネルレイアウトをAV_CH_LAYOUT_MONOに設定します。
anullsrc = r = 48000:cl = 4
・より明白な構文で同じ操作を実行します。
anullsrc = r = 48000:cl = mono
すべてのパラメーターを明示的に定義する必要があります。
フリット
libfliteライブラリを使用して音声発声を合成します。
このフィルターのコンパイルを有効にするには、FFmpegを構成する必要があります
「--enable-libflite」。
fliteライブラリはスレッドセーフではないことに注意してください。
フィルタは次のオプションを受け入れます。
list_voices
1に設定されている場合は、使用可能なボイスの名前をリストして、すぐに終了します。 デフォルト
値は0です。
nb_samples、 n
フレームあたりのサンプルの最大数を設定します。 デフォルト値は512です。
テキストファイル
話すテキストを含むファイル名を設定します。
클라우드 기반 AI/ML및 고성능 컴퓨팅을 통한 디지털 트윈의 기초 – Edward Hsu, Rescale CPO 많은 엔지니어링 중심 기업에게 클라우드는 R&D디지털 전환의 첫 단계일 뿐입니다. 클라우드 자원을 활용해 엔지니어링 팀의 제약을 해결하는 단계를 넘어, 시뮬레이션 운영을 통합하고 최적화하며, 궁극적으로는 모델 기반의 협업과 의사 결정을 지원하여 신제품을 결정할 때 데이터 기반 엔지니어링을 적용하고자 합니다. Rescale은 이러한 혁신을 돕기 위해 컴퓨팅 추천 엔진, 통합 데이터 패브릭, 메타데이터 관리 등을 개발하고 있습니다. 이번 자리를 빌려 비즈니스 경쟁력 제고를 위한 디지털 트윈 및 디지털 스레드 전략 개발 방법에 대한 인사이트를 나누고자 합니다.
話すテキストを設定します。
ボイス、 v
音声合成に使用する音声を設定します。 デフォルト値は「kal」です。 も参照してください
list_voices オプションを選択します。
例
・ファイルから読み取る Speech.txt、および標準のflite音声を使用してテキストを合成します。
flite = textfile = spirit.txt
・「slt」音声を選択して指定されたテキストを読みます。
flite = text ='それで、私がコメンテーターであるサブサブの貧しい悪魔、あなたを元気にしてください':voice = slt
・ffmpegにテキストを入力します:
ffmpeg -f lavfi -i flite = text ='それで、私がコメンテーターであるサブサブの貧しい悪魔、あなたを元気にしてください':voice = slt
・ 作る 再生する 「flite」と「lavfi」デバイスを使用して、指定されたテキストを話します。
ffplay -f lavfi flite = text ='あなたがやったことに対して、これ以上悲しむことはありません。'
libfliteの詳細については、以下を確認してください。http://www.speech.cs.cmu.edu/flite/>
正弦
振幅1/8の正弦波で作られたオーディオ信号を生成します。
オーディオ信号はビット精度です。
フィルタは次のオプションを受け入れます。
周波数、 f
搬送周波数を設定します。 デフォルトは440Hzです。
beep_factor、 b
毎秒定期的なビープ音を頻繁に有効にする ビープ音係数 キャリアの倍
周波数。 デフォルトは0で、ビープ音が無効になっていることを意味します。
サンプルレート、 r
サンプルレートを指定します。デフォルトは44100です。
デュレーション、 d
生成されたオーディオストリームの期間を指定します。
フレームごとのサンプル数
出力フレームあたりのサンプル数を設定します。デフォルトは1024です。
例
・単純な440Hzの正弦波を生成します。
正弦
・220秒間、毎秒880Hzのビープ音で5Hzの正弦波を生成します。
sine = 220:4:d = 5
sine = f = 220:b = 4:d = 5
sine = frequency = 220:beep_factor = 4:duration = 5
AUDIO シンク
以下は、現在利用可能なオーディオシンクの説明です。
バッファシンク
オーディオフレームをバッファリングし、フィルターチェーンの最後で使用できるようにします。
このシンクは、主にプログラムでの使用を目的としており、特にインターフェイスを介して使用することを目的としています。
で定義された libavfilter / buffersink.h またはオプションシステム。
着信を定義するAVABufferSinkContext構造体へのポインターを受け入れます
バッファのフォーマット。不透明なパラメータとして「avfilter_init_filter」に渡されます。
初期化。
ヌルシンク
ヌルオーディオシンク; 入力オーディオには何もしません。 主に
テンプレートおよび分析/デバッグツールで使用します。
VIDEO FILTERS
FFmpegビルドを構成する場合、を使用して既存のフィルターを無効にすることができます
「--disable-filters」。 構成出力には、に含まれているビデオフィルターが表示されます
ビルド。
以下は、現在利用可能なビデオフィルターの説明です。
アルファ抽出
入力からアルファコンポーネントをグレースケールビデオとして抽出します。 これは特に便利です
アルファマージ フィルタ。
アルファマージ
一次入力のアルファ成分を追加するか、のグレースケール値に置き換えます。
XNUMX番目の入力。 これは、 アルファ抽出 送信を許可するか
アルファをサポートしない形式のアルファを持つフレームシーケンスの保存
チャンネル。
たとえば、通常のYUVでエンコードされたビデオと別のビデオからフルフレームを再構築するには
で作成されたビデオ アルファ抽出、あなたは使用するかもしれません:
movie = in_alpha.mkv [alpha]; [in] [alpha] alphamerge [out]
このフィルターは再構成用に設計されているため、フレームシーケンスで動作します。
タイムスタンプを考慮し、いずれかの入力がストリームの終わりに達すると終了します。 この意志
エンコーディングパイプラインがフレームをドロップすると問題が発生します。 画像を適用しようとしている場合
ビデオストリームへのオーバーレイとして、 オーバーレイ 代わりにフィルターします。
尻
と同じ サブタイトル フィルタは、libavcodecとlibavformatを必要としないことを除いて
仕事。 一方、ASS(Advanced Substation Alpha)字幕ファイルに限定されています。
このフィルターは、からの一般的なオプションに加えて、次のオプションを受け入れます
サブタイトル フィルタ:
シェーピング
シェーピングエンジンを設定する
使用可能な値は次のとおりです。
オート
利用可能な最高のデフォルトのlibassシェーピングエンジン。
シンプルな
置換のみを実行できる、フォントに依存しない高速なシェーパー
複雑な
置換と配置にOpenTypeを使用する低速のシェーパー
デフォルトは「自動」です。
アタデノイズ
ビデオ入力にAdaptiveTemporalAveragingDenoiserを適用します。
フィルタは次のオプションを受け入れます。
0a 1番目の平面にしきい値Aを設定します。 デフォルトは0.02です。 有効な範囲は0〜0.3です。
0b 1番目の平面にしきい値Bを設定します。 デフォルトは0.04です。 有効な範囲は0〜5です。
1a 2番目の平面にしきい値Aを設定します。 デフォルトは0.02です。 有効な範囲は0〜0.3です。
1b 2番目の平面にしきい値Bを設定します。 デフォルトは0.04です。 有効な範囲は0〜5です。
2a 3番目の平面にしきい値Aを設定します。 デフォルトは0.02です。 有効な範囲は0〜0.3です。
2b 3番目の平面にしきい値Bを設定します。 デフォルトは0.04です。 有効な範囲は0〜5です。
しきい値Aは、入力信号としきい値Bの急激な変化に反応するように設計されています
入力信号の連続的な変化に反応するように設計されています。
s フィルタが平均化に使用するフレーム数を設定します。 デフォルトは33です。奇数である必要があります
範囲[5、129]。
bbox
入力フレームの輝度平面の黒以外のピクセルのバウンディングボックスを計算します。
このフィルターは、輝度値を持つすべてのピクセルを含むバウンディングボックスを計算します
最小許容値より大きい。 バウンディングボックスを説明するパラメータは次のとおりです。
フィルタログに印刷されます。
フィルタは次のオプションを受け入れます。
最小値
最小輝度値を設定します。 デフォルトは16です。
黒検出
(ほぼ)完全に黒のビデオ間隔を検出します。 章を検出するのに役立ちます
トランジション、コマーシャル、または無効な録音。 出力行には、
検出された黒の間隔の開始、終了、および期間(秒単位)。
出力行を表示するには、少なくともログレベルを
AV_LOG_INFO値。
フィルタは次のオプションを受け入れます。
black_min_duration、 d
検出された黒の最小持続時間を秒単位で設定します。 それは非
負の浮動小数点数。
デフォルト値は2.0です。
picture_black_ratio_th、 pic_th
画像を「黒」と見なすためのしきい値を設定します。 の最小値を表す
比率:
/
写真が黒と見なされるもの。 デフォルト値は0.98です。
pixel_black_th、 pix_th
ピクセルを「黒」と見なすためのしきい値を設定します。
しきい値は、ピクセルが存在する最大ピクセル輝度値を表します
「黒」と見なされます。 提供される値は、次の式に従ってスケーリングされます。
= + *
輝度範囲サイズ と 輝度最小値 入力ビデオフォーマットに応じて、
範囲は、YUVフルレンジフォーマットの場合は[0-255]、YUV非フルレンジフォーマットの場合は[16-235]です。
フォーマット。
デフォルト値は0.10です。
次の例では、最大ピクセルしきい値を最小値に設定し、を検出します
2秒以上の黒の間隔のみ:
blackdetect = d = 2:pix_th = 0.00
ブラックフレーム
(ほぼ)完全に黒のフレームを検出します。 章を検出するのに役立ちます
トランジションまたはコマーシャル。 出力ラインは、検出されたフレーム番号で構成されます
フレーム、黒さのパーセンテージ、既知の場合はファイル内の位置、または-1と
秒単位のタイムスタンプ。
出力行を表示するには、少なくともログレベルを
AV_LOG_INFO値。
次のパラメータを受け入れます。
量
しきい値を下回っている必要があるピクセルのパーセンテージ。 デフォルトは98です。
しきい値、 脱穀
それを下回ると、ピクセル値が黒と見なされるしきい値。 デフォルトは32です。
ブレンド、 ブレンド
XNUMXつのビデオフレームを互いにブレンドします。
「ブレンド」フィルターはXNUMXつの入力ストリームを受け取り、XNUMXつのストリームを出力します。最初の入力は、
「トップ」レイヤーとXNUMX番目の入力は「ボトム」レイヤーです。 最短の入力で出力が終了します
終了します。
「tblend」(タイムブレンド)フィルターは、XNUMXつの単一ストリームからXNUMXつの連続するフレームを取得し、
古いフレームの上に新しいフレームをブレンドして得られた結果を出力します。
受け入れられるオプションの説明は次のとおりです。
c0_mode
c1_mode
c2_mode
c3_mode
オールモード
特定のピクセルコンポーネントまたはすべてのピクセルコンポーネントのブレンドモードを設定する
オールモード。 デフォルト値は「通常」です。
コンポーネントモードで使用可能な値は次のとおりです。
添加
と
平均
焼く
暗くする
違い
違い128
分割
ダッジ
除外
グロー
ハードライト
ハードミックス
明るくします
リニアライト
掛ける
否定
通常の
or
オーバーレイ
フェニックス
ピンライト
反映する
screen
やわらかい光
引く
ビビッドライト
XOR
c0_不透明度
c1_不透明度
c2_不透明度
c3_不透明度
すべての不透明度
特定のピクセルコンポーネントまたはすべてのピクセルコンポーネントのブレンド不透明度を設定する
すべての不透明度。 ピクセルコンポーネントブレンドモードと組み合わせてのみ使用されます。
c0_expr
c1_expr
c2_expr
c3_expr
all_expr
特定のピクセルコンポーネントまたはすべてのピクセルコンポーネントのブレンド式を設定する
all_expr。 関連するモードオプションが設定されている場合、それらは無視されることに注意してください。
式は次の変数を使用できます。
N 0から始まる、フィルタリングされたフレームの連続番号。
X
Y 現在のサンプルの座標
W
H 現在フィルタリングされている平面の幅と高さ
SW
SH 現在フィルタリングされている平面に応じた幅と高さのスケール。 比率です
対応する輝度平面のピクセル数と現在の平面のピクセル数の間。
たとえば、YUV4:2:0の場合、値は輝度平面の場合は「1,1」、の場合は「0.5,0.5」です。
クロマ面。
T 現在のフレームの時間。秒単位で表されます。
上、 A
最初のビデオフレーム(最上層)の現在の位置でのピクセルコンポーネントの値。
下、 B
XNUMX番目のビデオフレームの現在の位置でのピクセルコンポーネントの値(下
層)。
最短
最短の入力が終了したときに強制終了します。 デフォルトは0です。このオプションは
「ブレンド」フィルターに対してのみ定義されます。
リピートラスト
ストリームの終了後、最後の下部フレームを適用し続けます。 値0
最下層の最後のフレームに達した後、フィルターを無効にします。 デフォルトは1です。
このオプションは、「ブレンド」フィルターに対してのみ定義されます。
例
・最初の10秒で最下層から最上層への遷移を適用します。
blend=all_expr='A*(if(gte(T,10),1,T/10))+B*(1-(if(gte(T,10),1,T/10)))'
・1x1のチェッカーボード効果を適用します。
blend = all_expr ='if(eq(mod(X、2)、mod(Y、2))、A、B)'
・アンカバーレフト効果を適用します。
blend = all_expr ='if(gte(N * SW + X、W)、A、B)'
・アンカバーダウン効果を適用します。
blend = all_expr ='if(gte(YN * SH、0)、A、B)'
・uncover up-left効果を適用します:
blend = all_expr ='if(gte(T * SH * 40 + Y、H)* gte((T * 40 * SW + X)* W / H、W)、A、B)'
・現在のフレームと前のフレームの違いを表示します。
tblend = all_mode = Difference128
ボックスブラー
ボックスブラーアルゴリズムを入力ビデオに適用します。
次のパラメータを受け入れます。
luma_radius、 lr
luma_power、 lp
chroma_radius、 cr
chroma_power、 cp
alpha_radius、 ar
alpha_power、 ap
受け入れられるオプションの説明は次のとおりです。
luma_radius、 lr
chroma_radius、 cr
alpha_radius、 ar
対応するぼかしに使用されるボックス半径の式をピクセル単位で設定します
入力プレーン。
半径の値は負でない数である必要があり、値より大きくてはなりません
ルマ平面とアルファ平面の場合は「min(w、h)/ 2」という式を使用し、「min(cw、ch)/2」の場合は
クロマ面用。
のデフォルト値 ルマ半径 「2」です。 指定しない場合、 彩度半径 と アルファ半径
デフォルトでは、対応する値が設定されます ルマ半径.
式には、次の定数を含めることができます。
w
h 入力の幅と高さ(ピクセル単位)。
cw
ch 入力クロマ画像の幅と高さ(ピクセル単位)。
ひサブ
対サブ
水平および垂直のクロマサブサンプル値。 たとえば、ピクセルの場合
フォーマット「yuv422p」、 ひサブ 2とは 対サブ 1です。
luma_power、 lp
chroma_power、 cp
alpha_power、 ap
ボックスブラーフィルターが対応する平面に適用される回数を指定します。
のデフォルト値 ルマパワー は2です。指定されていない場合、 クロマパワー と アルファパワー
デフォルトでは、対応する値が設定されます ルマパワー.
値が0の場合、効果は無効になります。
例
・輝度、彩度、およびアルファ半径を2に設定してボックスブラーフィルターを適用します。
boxblur = luma_radius = 2:luma_power = 1
boxblur = 2:1
・輝度半径を2に設定し、アルファおよび彩度半径を0に設定します。
boxblur = 2:1:cr = 0:ar = 0
・輝度と彩度の半径をビデオの寸法の一部に設定します。
boxblur = luma_radius = min(h \、w)/ 10:luma_power = 1:chroma_radius = min(cw \、ch)/ 10:chroma_power = 1
コーデックビュー
一部のコーデックによってエクスポートされた情報を視覚化します。
一部のコーデックは、サイドデータまたはその他の手段を使用してフレームを介して情報をエクスポートできます。 為に
たとえば、一部のMPEGベースのコーデックはモーションベクトルを エクスポート_mvs の旗
コーデック フラグ2 オプションを選択します。
フィルタは次のオプションを受け入れます。
mv 視覚化するモーションベクトルを設定します。
使用可能なフラグ mv には次の値があります:
pf Pフレームの前方予測MV
bf Bフレームの前方予測MV
bb Bフレームの後方予測MV
例
・PおよびBフレームからの多方向MVを使用して視覚化します 再生する:
ffplay -flags2 + export_mvs input.mpg -vf codecview = mv = pf + bf + bb
カラーバランス
入力フレームの原色(赤、緑、青)の強度を変更します。
フィルタを使用すると、入力フレームをシャドウ、ミッドトーン、またはハイライトで調整できます。
赤シアン、緑マゼンタ、または青黄色のバランスの領域。
正の調整値は、バランスを原色、負の値にシフトします
補色に向かって。
フィルタは次のオプションを受け入れます。
rs
gs
bs 赤、緑、青の影(最も暗いピクセル)を調整します。
rm
gm
bm 赤、緑、青の中間調(中程度のピクセル)を調整します。
rh
gh
bh 赤、緑、青のハイライト(最も明るいピクセル)を調整します。
オプションに許可される範囲は「[-1.0]」です。 デフォルトは1.0です。
例
・影に赤い色かぶりを追加します。
colorbalance = rs = .3
カラーキー
RGB色空間カラーキーイング。
フィルタは次のオプションを受け入れます。
カラー
透明に置き換えられる色。
類似
キーカラーとの類似度。
0.01は正確なキーの色のみに一致し、1.0はすべてに一致します。
ブレンドパーセンテージ。
0.0は、ピクセルを完全に透明にするか、まったく透明にしません。
値が高いほど半透明のピクセルになり、透明度が高いほど
ピクセルの色はキーの色と似ています。
例
・入力画像のすべての緑色のピクセルを透明にします。
ffmpeg -i input.png -vf colorkey = green out.png
・静止した背景画像の上にグリーンスクリーンビデオをオーバーレイします。
ffmpeg -i background.png -i video.mp4 -filter_complex "[1:v] colorkey = 0x3BBD1E:0.3:0.2 [ckout]; [0:v] [ckout] overlay [out]" -map "[out]" output.flv
カラーレベル
レベルを使用してビデオ入力フレームを調整します。
フィルタは次のオプションを受け入れます。
リミン
ギミン
ビミン
エイミン
赤、緑、青、アルファ入力の黒点を調整します。 オプションの許容範囲は次のとおりです。
「[-1.0、1.0]」。 デフォルトは0です。
ライマックス
ギマックス
バイマックス
アイマックス
赤、緑、青、アルファ入力の白色点を調整します。 オプションの許容範囲は次のとおりです。
「[-1.0、1.0]」。 デフォルトは1です。
入力レベルは、ハイライト(明るいトーン)を明るくし、シャドウ(暗い)を暗くするために使用されます
トーン)、明るいトーンと暗いトーンのバランスを変更します。
ロミン
ゴミン
ボミン
あおみん
赤、緑、青、アルファ出力の黒点を調整します。 オプションの許容範囲は次のとおりです。
「[0]」。 デフォルトは1.0です。
ロマックス
ゴマックス
ボマックス
アオマックス
赤、緑、青、アルファ出力の白色点を調整します。 オプションの許容範囲は次のとおりです。
「[0]」。 デフォルトは1.0です。
出力レベルにより、制約された出力レベル範囲を手動で選択できます。
例
・ビデオ出力を暗くします:
colorlevels = rimin = 0.058:gimin = 0.058:bimin = 0.058
・ コントラストを上げます:
colorlevels=rimin=0.039:gimin=0.039:bimin=0.039:rimax=0.96:gimax=0.96:bimax=0.96
・ビデオ出力を軽くする:
colorlevels = rimax = 0.902:gimax = 0.902:bimax = 0.902
・明るさを上げる:
colorlevels = romin = 0.5:gomin = 0.5:bomin = 0.5
カラーチャンネルミキサー
カラーチャンネルを再混合して、ビデオ入力フレームを調整します。
このフィルターは、他のチャネルに関連付けられた値を追加することにより、カラーチャネルを変更します
同じピクセルの。 たとえば、変更する値が赤の場合、出力値は次のようになります。
= * + * + * + *
フィルタは次のオプションを受け入れます。
rr
rg
rb
ra 出力赤の入力赤、緑、青、およびアルファチャネルの寄与を調整します
チャネル。 デフォルトは1です rr、および0 rg, rb と ra.
gr
gg
gb
ga 出力緑の入力赤、緑、青、およびアルファチャネルの寄与を調整します
チャネル。 デフォルトは1です gg、および0 gr, gb と ga.
br
bg
bb
ba 出力青の入力赤、緑、青、アルファチャンネルの寄与を調整します
チャネル。 デフォルトは1です bb、および0 br, bg と ba.
ar
ag
ab
aa 出力アルファの入力赤、緑、青、アルファチャネルの寄与を調整します
チャネル。 デフォルトは1です aa、および0 ar, ag と ab.
オプションに許可される範囲は「[-2.0]」です。
例
・ソースをグレースケールに変換します。
colorchannelmixer=.3:.4:.3:0:.3:.4:.3:0:.3:.4:.3
・セピアトーンをシミュレートします。
colorchannelmixer=.393:.769:.189:0:.349:.686:.168:0:.272:.534:.131
カラーマトリックス
カラーマトリックスを変換します。
フィルタは次のオプションを受け入れます。
SRC
DST ソースとデスティネーションのカラーマトリックスを指定します。 両方の値を指定する必要があります。
受け入れられる値は次のとおりです。
bt709
BT.709
bt601
BT.601
smpte240m
SMPTE-240M
fcc FCC
たとえば、BT.601からSMPTE-240Mに変換するには、次のコマンドを使用します。
colormatrix = bt601:smpte240m
copy
入力ソースを変更せずに出力にコピーします。 これは主にテスト目的で役立ちます。
作物
入力ビデオを指定されたサイズにトリミングします。
次のパラメータを受け入れます。
w, アウト_w
出力ビデオの幅。 デフォルトは「iw」です。 この式は評価されるだけです
フィルタ構成中にXNUMX回、または w or アウト_w コマンドが送信されます。
h, アウト_h
出力ビデオの高さ。 デフォルトは「ih」です。 この式が評価されます
フィルタ構成中にXNUMX回だけ、または h or アウト_h コマンドが送信されます。
x 入力ビデオでの、出力ビデオの左端の水平位置。 これ
デフォルトは「(in_w-out_w)/2」です。 この式はフレームごとに評価されます。
y 入力ビデオでの、出力ビデオの上端の垂直位置。 これ
デフォルトは「(in_h-out_h)/2」です。 この式はフレームごとに評価されます。
アスペクトを維持
1に設定すると、出力ディスプレイのアスペクト比が入力と同じになります。
出力サンプルのアスペクト比を変更します。 デフォルトは0です。
この アウト_w, アウト_h, x, y パラメータは、次の定数を含む式です。
x
y の計算値 x と y。 それらは、新しいフレームごとに評価されます。
in_w
in_h
入力の幅と高さ。
iw
ih これらはと同じです in_w と in_h.
アウト_w
アウト_h
出力(トリミング)の幅と高さ。
ow
oh これらはと同じです アウト_w と アウト_h.
a と同じ iw / ih
sar 入力サンプルのアスペクト比
与える 入力ディスプレイのアスペクト比は、(iw / ih)* sar
ひサブ
対サブ
水平および垂直クロマサブサンプル値。 たとえば、ピクセル形式の場合
「yuv422p」 ひサブ 2とは 対サブ 1です。
n 0から始まる入力フレームの番号。
投稿する 入力フレームのファイル内の位置、不明な場合はNAN
t 秒単位で表されるタイムスタンプ。 入力タイムスタンプが不明な場合はNANです。
の表現 アウト_w の値に依存する可能性があります アウト_h、およびの式 アウト_h
に依存する可能性があります アウト_w、しかし彼らは依存することはできません x と y、など x と y 後に評価されます
アウト_w と アウト_h.
この x と y パラメータは、の左上隅の位置の式を指定します
出力(トリミングされていない)領域。 フレームごとに評価されます。 評価値の場合
は無効です。最も近い有効な値に近似されます。
の表現 x に依存する可能性があります y、およびの式 y に依存する可能性があります x.
例
・位置(100)でサイズ100x12,34の領域をトリミングします。
クロップ=100:100:12:34
名前付きオプションを使用すると、上記の例は次のようになります。
作物=w= 100:h = 100:x = 12:y = 34
・中央の入力領域を100x100のサイズでトリミングします。
クロップ=100:100
・入力ビデオのサイズ2/3で中央の入力領域をトリミングします。
作物=2/3* in_w:2/3 * in_h
・入力ビデオの中央の正方形をトリミングします。
Crop = out_w = in_h
Crop = in_h
・左上隅を100:100の位置に配置し、
入力画像の右下隅に対応する右下隅。
Crop = in_w-100:in_h-100:100:100
・左右の境界線から10ピクセル、上下から20ピクセルをトリミングします。
ボーダー
Crop = in_w-2 * 10:in_h-2 * 20
・入力画像の右下のXNUMX分のXNUMXのみを保持します。
Crop = in_w / 2:in_h / 2:in_w / 2:in_h / 2
・ギリシャの調和を得るための作物の高さ:
Crop = in_w:1 / PHI * in_w
・震え効果を適用します:
crop=in_w/2:in_h/2:(in_w-out_w)/2+((in_w-out_w)/2)*sin(n/10):(in_h-out_h)/2 +((in_h-out_h)/2)*sin(n/7)
・タイムスタンプに応じて不安定なカメラ効果を適用します。
crop=in_w/2:in_h/2:(in_w-out_w)/2+((in_w-out_w)/2)*sin(t*10):(in_h-out_h)/2 +((in_h-out_h)/2)*sin(t*13)"
・yの値に応じてxを設定します。
crop=in_w/2:in_h/2:y:10+10*sin(n/10)
コマンド
このフィルターは、次のコマンドをサポートします。
w, アウト_w
h, アウト_h
x
y 出力ビデオの幅/高さおよび入力の水平/垂直位置を設定します
ビデオ。 このコマンドは、対応するオプションと同じ構文を受け入れます。
指定された式が無効な場合、現在の値に保持されます。
作物検出
トリミングサイズを自動検出します。
必要なトリミングパラメータを計算し、を介して推奨パラメータを印刷します
ロギングシステム。 検出された寸法は、入力の黒以外の領域に対応します
ビデオ。
次のパラメータを受け入れます。
制限
黒の値のしきい値を高く設定します。これは、オプションで何もない(0)から指定できます。
すべてに(255ビットベースのフォーマットの場合は8)。 セットよりも大きい強度値
値は黒以外と見なされます。 デフォルトは24です。値を指定することもできます
ピクセルのビット深度に応じてスケーリングされる0.0〜1.0
形式でダウンロードすることができます。
円形
幅/高さを割り切れる値。 デフォルトは16です。オフセット
ビデオを中央に配置するように自動的に調整されます。 2を使用して、均等な寸法のみを取得します
(4:2:2ビデオに必要)。 ほとんどのビデオコーデックにエンコードする場合は、16が最適です。
reset_count、 リセット
何フレーム後にcropdetectがリセットするかを決定するカウンターを設定します
以前に検出された最大のビデオ領域と、現在の最適なものを検出するために最初からやり直します
作物エリア。 デフォルト値は0です。
これは、チャンネルのロゴがビデオ領域を歪める場合に役立ちます。 0は'決してないことを示します
リセット」し、再生中に検出された最大領域を返します。
曲線
曲線を使用して色調整を適用します。
このフィルターは、AdobePhotoshopおよびGIMP曲線ツールに似ています。 各コンポーネント(赤、
緑と青)の値は次のように定義されます N スムーズを使用して互いに結び付けられたキーポイント
曲線。 x軸は入力フレームからのピクセル値を表し、y軸は新しい
出力フレームに設定するピクセル値。
デフォルトでは、コンポーネントカーブはXNUMXつのポイントによって定義されます (0; 0) と (1; 1)。 これにより、
元の各ピクセル値が独自の値に「調整」された直線。つまり、
画像に変更はありません。
フィルタを使用すると、これらXNUMXつのポイントを再定義し、さらにいくつか追加することができます。 新しい曲線(
自然なXNUMX次スプライン補間)は、これらすべての新しいものをスムーズに通過するように定義されます
座標。 新しく定義されたポイントは、x軸上で厳密に増加する必要があります。
アプリ環境に合わせて x と y 値は [0; 1] 間隔。 計算された曲線がたまたま行った場合
ベクトル空間の外側では、値はそれに応じてクリップされます。
「x=0」で定義されたキーポイントがない場合、フィルターは自動的に (0; 0)
点。 同様に、「x = 1」で定義されたキーポイントがない場合、フィルターは
自動的に挿入します (1; 1) ポイント。
フィルタは次のオプションを受け入れます。
プリセット
使用可能なカラープリセットのXNUMXつを選択します。 このオプションは、
r, g, b パラメーター; この場合、プリセットでは後のオプションが優先されます
値。 使用可能なプリセットは次のとおりです。
なし
カラーネガティブ
クロスプロセス
暗いです
コントラストを上げます
ライター
リニアコントラスト
Medium_contrast
負
強いコントラスト
ヴィンテージ
デフォルトは「none」です。
マスター、 m
マスターキーポイントを設定します。 これらのポイントは、セカンドパスマッピングを定義します。 です
「輝度」または「値」マッピングと呼ばれることもあります。 で使用できます r, g, b or を
後処理LUTのように機能するためです。
赤、 r
赤いコンポーネントのキーポイントを設定します。
緑、 g
緑のコンポーネントのキーポイントを設定します。
青、 b
青いコンポーネントのキーポイントを設定します。
を すべてのコンポーネント(マスターを除く)のキーポイントを設定します。 さらに使用することができます
他のキーポイントコンポーネントオプションに。 この場合、未設定のコンポーネントは
これへのフォールバック を 設定。
psファイル
設定をインポートするPhotoshopカーブファイル( ".asv")を指定します。
一部のフィルターグラフ構文の競合を回避するには、各キーポイントリストを次のように定義する必要があります。
次の構文: "x0 / y0 x1 / y1 x2 /y2..."。
例
・青の中間レベルをわずかに増やします。
曲線=青='0.5/ 0.58'
・ヴィンテージ効果:
curves=r='0/0.11 .42/.51 1/0.95':g='0.50/0.48':b='0/0.22 .49/.44 1/0.8'
ここでは、コンポーネントごとに次の座標を取得します。
赤 "(0;0.11) (0.42;0.51) (1;0.95)"
(緑字)
"(0;0) (0.50;0.48) (1;1)"
青
"(0;0.22) (0.49;0.44) (1;0.80)"
・前の例は、関連する組み込みプリセットを使用して実現することもできます。
曲線=プリセット=ヴィンテージ
・または単に:
曲線=ヴィンテージ
・Photoshopプリセットを使用して、緑色のコンポーネントのポイントを再定義します。
Curves = psfile ='MyCurvesPresets / purple.asv':green = '0.45 / 0.53'
dctdnoiz
2D DCT(周波数領域フィルタリング)を使用してフレームのノイズを除去します。
このフィルターはリアルタイム用に設計されていません。
フィルタは次のオプションを受け入れます。
シグマ、 s
ノイズシグマ定数を設定します。
この シグマ 「3*シグマ」のハードしきい値を定義します。 すべてのDCT係数(絶対
値)このしきい値を下回るとドロップされます。
より高度なフィルタリングが必要な場合は、を参照してください。 式.
デフォルトは0です。
オーバーラップ
各ブロックの重複ピクセル数を設定します。 フィルタが遅くなる可能性があるため、
効果の低いフィルターとリスクを犠牲にして、この値を減らしたい
さまざまな遺物。
重複する値で入力の幅または高さ全体を処理できない場合は、
警告が表示され、それに応じた境界線はノイズ除去されません。
デフォルト値は ブロック化する-1、これは可能な限り最良の設定です。
expr、 e
係数因数式を設定します。
DCTブロックの各係数について、この式は乗数として評価されます
係数の値。
これがオプションに設定されている場合、 シグマ オプションは無視されます。
係数の絶対値は、 c 変数に保存します.
n をセットする ブロック化する ビット数を使用します。 "1 <n" を定義します ブロック化する、これは
処理されたブロックの幅と高さ。
デフォルト値は 3 (8x8)そしてに上げることができます 4 のために ブロック化する 16x16の。 ノート
この設定を変更すると、処理速度に大きな影響があります。 また、
ブロックサイズが大きいからといって、必ずしもノイズ除去が優れているとは限りません。
例
でノイズ除去を適用します シグマ 4.5の
dctdnoiz = 4.5
式システムを使用して、同じ操作を実行できます。
dctdnoiz = e ='gte(c、4.5 * 3)'
「16x16」のブロックサイズを使用した暴力的なノイズ除去:
dctdnoiz = 15:n = 4
バンドを解除
入力ビデオからバンディングアーティファクトを削除します。 縞模様のピクセルを次のように置き換えることで機能します
参照されるピクセルの平均値。
フィルタは次のオプションを受け入れます。
1日
2日
3日
4日
各プレーンのバンディング検出しきい値を設定します。 デフォルトは0.02です。 有効な範囲は
0.00003〜0.5。 現在のピクセルと参照ピクセルの差が
しきい値、それは縞模様と見なされます。
範囲、 r
ピクセル単位のバンディング検出範囲。 デフォルトは16です。正の場合、範囲内の乱数
設定値は0を使用します。 負の場合、正確な絶対値が使用されます。 The
rangeは、現在のピクセルの周囲のXNUMXピクセルの正方形を定義します。
方向、 d
XNUMXピクセルが比較されるラジアンで方向を設定します。 正の場合、ランダム
0から設定方向までの方向が選択されます。 負の場合、絶対値の正確
選ばれます。 たとえば、方向0、-PI、または-2 * PIラジアンは、上のピクセルのみを選択します
同じ行と-PI/2は、同じ列のピクセルのみを選択します。
ブラー
有効にすると、現在のピクセルが周囲のXNUMXつすべての平均値と比較されます
ピクセル。 デフォルトでは有効になっています。 無効にした場合、現在のピクセルはXNUMXつすべてと比較されます
周囲のピクセル。 XNUMXつの違いすべてが
周囲のピクセルがしきい値未満です。
間引
複製されたフレームを定期的にドロップします。
フィルタは次のオプションを受け入れます。
サイクル
ドロップ元のフレーム数を設定します。 これをに設定する N XNUMXを意味します
のすべてのバッチのフレーム N フレームはドロップされます。 デフォルトは5です。
デュスレッシュ
重複検出のしきい値を設定します。 フレームの差分メトリックが
この値以下の場合、重複として宣言されます。 デフォルトは1.1です
ススレッシュ
シーン変更のしきい値を設定します。 デフォルトは15です。
ブロックx
濃淡のむらがある
メートル法の計算中に使用されるx軸とy軸のブロックのサイズを設定します。 大きい
ブロックはより良いノイズ抑制を提供しますが、小さな検出もより悪くします
動き。 32の累乗である必要があります。 デフォルトはXNUMXです。
ppsrc
メイン入力を前処理された入力としてマークし、クリーンソース入力ストリームをアクティブにします。 これ
入力をさまざまなフィルターで前処理して、メトリックを支援できるようにします
フレーム選択をロスレスに保ちながら計算します。 1に設定すると、最初の
ストリームは前処理された入力用であり、XNUMX番目のストリームはからのクリーンなソースです
保持されるフレームが選択される場所。 デフォルトは0です。
彩度
メトリック計算で彩度を考慮するかどうかを設定します。 デフォルトは1です。
デフレート
ビデオにデフレート効果を適用します。
このフィルターは、ピクセルを ローカル(3x3)のみを考慮した平均
ピクセルより低い値。
次のオプションを受け入れます。
閾値0
閾値1
閾値2
閾値3
各プレーンの最大変更を制限します。デフォルトは65535です。0の場合、プレーンは残ります。
変更なし。
デジャダー
部分的にインターレースされたテレシネコンテンツによって生成されたジャダーを削除します。
ジャダーは、例えば、によって導入することができます プルアップ フィルター。 元のソースが
部分的にテレシネされたコンテンツの場合、「pullup、dejudder」の出力には変数が含まれます
フレームレート。 コンテナの記録されたフレームレートを変更する可能性があります。 その変化は別として、
このフィルターは、一定のフレームレートのビデオには影響しません。
このフィルターで使用できるオプションは次のとおりです。
サイクル
ジャダーが繰り返されるウィンドウの長さを指定します。
1より大きい整数を受け入れます。有用な値は次のとおりです。
4 オリジナルが24から30fps(フィルムからNTSC)にテレシネされた場合。
5 オリジナルが25から30fps(PALからNTSC)にテレシネされた場合。
20 XNUMXつの混合物の場合。
デフォルトは 4.
デロゴ
周囲のピクセルを単純に補間することにより、テレビ局のロゴを抑制します。 設定するだけ
ロゴを覆っている長方形とそれが消えるのを見てください(そして時にはもっと醜いもの
表示されます-マイレージは異なる場合があります)。
次のパラメータを受け入れます。
x
y ロゴの左上隅の座標を指定します。 それらを指定する必要があります。
w
h クリアするロゴの幅と高さを指定します。 それらを指定する必要があります。
バンド、 t
長方形のファジーエッジの厚さを指定します(に追加 w と h)。 ザ
デフォルト値は4です。
表示する
1に設定すると、右側を簡単に見つけるために画面に緑色の長方形が描画されます
x, y, w, h パラメーター。 デフォルト値は0です。
長方形は最も外側のピクセルに描画され、(部分的に)次のように置き換えられます
補間された値。 この長方形のすぐ外側の次のピクセルの値
各方向で、内部の補間されたピクセル値を計算するために使用されます
矩形。
例
・左上隅の座標が0,0でサイズが大きい領域をカバーする長方形を設定します
100x77、およびサイズ10のバンド:
delogo=x=0:y=0:w=100:h=77:band=10
デシェイク
水平および/または垂直シフトの小さな変化を修正してみてください。 このフィルターは削除に役立ちます
カメラを手に持ったり、三脚をぶつけたり、車で移動したりすることによる手ぶれ。
フィルタは次のオプションを受け入れます。
x
y
w
h モーションベクトルの検索を制限する長方形の領域を指定します。 必要に応じて
モーションベクトルの検索は、フレームの長方形の領域に限定できます。
左上隅、幅、高さで定義されます。 これらのパラメータは同じです
の位置を視覚化するために使用できるドローボックスフィルターとしての意味
バウンディングボックス。
これは、フレーム内での被写体の同時移動が
モーションベクトル検索によるカメラモーションの混乱。
いずれかまたはすべての場合 x, y, w と h -1に設定すると、フルフレームが使用されます。 これにより、
モーションベクトルのバウンディングボックスを指定せずに設定する後のオプション
検索。
デフォルト-フレーム全体を検索します。
rx
ry xおよびy方向の最大移動範囲を0〜64ピクセルの範囲で指定します。
デフォルトは16です。
エッジ
フレームの端の空白を埋めるためにピクセルを生成する方法を指定します。 利用可能
値は次のとおりです。
空欄、 0
空白の場所でゼロを埋める
オリジナル、 1
空白の場所の元の画像
クランプ、 2
空白の場所での押し出しエッジ値
鏡、 3
空白の場所のミラーエッジ
デフォルト値は ミラー.
ブロック化する
モーション検索に使用するブロックサイズを指定します。 範囲4〜128ピクセル、デフォルトは8。
コントラスト
ブロックのコントラストしきい値を指定します。 指定された以上のブロックのみ
コントラスト(最も暗いピクセルと最も明るいピクセルの違い)が考慮されます。 範囲
1-255、デフォルトは125。
サーチ
検索戦略を指定します。 使用可能な値は次のとおりです。
徹底的、 0
徹底的な検索を設定する
もっと少なく、 1
網羅的でない検索を設定します。
デフォルト値は 包括的.
ファイル名
設定されている場合、モーション検索の詳細なログが指定されたファイルに書き込まれます。
opencl
1に設定されている場合、OpenCL機能を使用して指定します。FFmpegが
「--enable-opencl」で構成されます。 デフォルト値は0です。
デテレシン
テレシネ操作の正確な逆を適用します。 事前定義されたパターンが必要です
テレシネに渡されるものと同じでなければならないパターンオプションを使用して指定されます
フィルタ。
このフィルターは、次のオプションを受け入れます。
最初のフィールド
上、 t
トップフィールドファースト
下、 b
一番下のフィールドが最初です。デフォルト値は「top」です。
パターン
適用するプルダウンパターンを表す一連の数字。 デフォルト
値は23です。
開始フレーム
テレシネに対する最初のフレームの位置を表す番号
パターン。 これは、ストリームがカットされる場合に使用されます。 デフォルト値は0です。
膨張
ビデオに膨張効果を適用します。
このフィルターは、ピクセルを ローカル(3x3)最大。
次のオプションを受け入れます。
閾値0
閾値1
閾値2
閾値3
各プレーンの最大変更を制限します。デフォルトは65535です。0の場合、プレーンは残ります。
変更なし。
座標
参照するピクセルを指定するフラグ。 デフォルトは255です。つまり、XNUMXつのピクセルすべてが
中古。
次のようなローカル3x3座標マップへのフラグ:
1 2 3
4 5
6 7 8
ドローボックス
入力画像に色付きのボックスを描画します。
次のパラメータを受け入れます。
x
y ボックスの左上隅の座標を指定する式。 デフォルトです
0へ。
幅、 w
高さ、 h
ボックスの幅と高さを指定する式。 0の場合、
入力の幅と高さとして解釈されます。 デフォルトは0です。
色、 c
書き込むボックスの色を指定します。 このオプションの一般的な構文については、次を確認してください。
ffmpeg-utilsマニュアルの「色」セクション。 特別な値「invert」が使用されている場合、
ボックスのエッジの色は、輝度が反転したビデオと同じです。
厚さ、 t
ボックスエッジの太さを設定する式。 デフォルト値は3です。
受け入れられる定数のリストについては、以下を参照してください。
のパラメータ x, y, w と h と t 次の定数を含む式です。
与える 入力ディスプレイのアスペクト比は、(w / h)* sar.
ひサブ
対サブ
水平および垂直クロマサブサンプル値。 たとえば、ピクセル形式の場合
「yuv422p」 ひサブ 2とは 対サブ 1です。
in_h、 ih
in_w、 iw
入力の幅と高さ。
sar 入力サンプルのアスペクト比。
x
y ボックスが描画されるxおよびyオフセット座標。
w
h 描かれたボックスの幅と高さ。
t 描かれた箱の厚さ。
これらの定数により、 x, y, w, h と t お互いを参照する式なので、
たとえば、「y = x/dar」または「h=w/dar」を指定できます。
例
・入力画像の端の周りにブラックボックスを描画します。
ドローボックス
・色が赤で不透明度が50%のボックスを描画します。
drawbox = 10:20:200:60:[メール保護]
前の例は次のように指定できます。
drawbox = x = 10:y = 20:w = 200:h = 60:color =[メール保護]
・ボックスをピンク色で塗りつぶします。
drawbox = x = 10:y = 10:w = 100:h = 100:color =[メール保護]:t = max
・2ピクセルの赤い2.40:1マスクを描画します。
drawbox=x=-t:y=0.5*(ih-iw/2.4)-t:w=iw+t*2:h=iw/2.4+t*2:t=2:c=red
ドローグラフ、 ドローグラフ
入力されたビデオまたはオーディオのメタデータを使用してグラフを描画します。
次のパラメータを受け入れます。
m1 グラフの描画にメタデータ値を使用する最初のフレームのメタデータキーを設定します。
fg1 1番目の前景色の表現を設定します。
m2 グラフの描画にメタデータ値を使用する2番目のフレームのメタデータキーを設定します。
fg2 2番目の前景色の表現を設定します。
m3 グラフの描画にメタデータ値を使用する3番目のフレームのメタデータキーを設定します。
fg3 3番目の前景色の表現を設定します。
m4 グラフの描画にメタデータ値を使用する4番目のフレームのメタデータキーを設定します。
fg4 4番目の前景色表現を設定します。
分 メタデータ値の最小値を設定します。
マックス メタデータ値の最大値を設定します。
bg グラフの背景色を設定します。 デフォルトは白です。
モード
グラフモードを設定します。
モードで使用可能な値は次のとおりです。
バー
ドット
ライン
デフォルトは「line」です。
スライド
スライドモードを設定します。
スライドに使用できる値は次のとおりです。
フレーム
右の境界線に達したときに新しいフレームを描画します。
replace
古い列を新しい列に置き換えます。
スクロール
右から左にスクロールします。
スクロール
左から右にスクロールします。
デフォルトは「フレーム」です。
サイズ
グラフビデオのサイズを設定します。 このオプションの構文については、 "ビデオ サイズ"
in ffmpeg-utils マニュアル。 デフォルト値は「900x256」です。
前景色の表現では、次の変数を使用できます。
MIN メタデータ値の最小値。
MAX メタデータ値の最大値。
VAL 現在のメタデータキー値。
色は0xAABBGGRRとして定義されます。
からのメタデータを使用した例 シグナル統計 フィルタ:
signalstats、drawgraph = lavfi.signalstats.YAVG:min = 0:max = 255
からのメタデータを使用した例 ebur128 フィルタ:
ebur128=metadata=1,adrawgraph=lavfi.r128.M:min=-120:max=5
ドローグリッド
入力画像にグリッドを描画します。
次のパラメータを受け入れます。
x
y グリッド交点の座標を指定する式
(オフセットを構成するためのもの)。 デフォルトは両方とも0です。
幅、 w
高さ、 h
グリッドセルの幅と高さを指定する式(0の場合)
入力の幅と高さからそれぞれ「厚さ」を引いたものとして解釈されるため、画像
フレームに入れられます。 デフォルトは0です。
色、 c
グリッドの色を指定します。 このオプションの一般的な構文については、
ffmpeg-utilsマニュアルの「色」セクション。 特別な値「invert」が使用されている場合、
グリッドの色は、輝度が反転したビデオと同じです。
厚さ、 t
グリッド線の太さを設定する式。 デフォルト値は1です。
受け入れられる定数のリストについては、以下を参照してください。
のパラメータ x, y, w と h と t 次の定数を含む式です。
与える 入力ディスプレイのアスペクト比は、(w / h)* sar.
ひサブ
対サブ
水平および垂直クロマサブサンプル値。 たとえば、ピクセル形式の場合
「yuv422p」 ひサブ 2とは 対サブ 1です。
in_h、 ih
in_w、 iw
入力グリッドセルの幅と高さ。
sar 入力サンプルのアスペクト比。
x
y グリッド交点のx座標とy座標(構成する必要があります)
オフセット)。
w
h 描画されたセルの幅と高さ。
t 描画されたセルの厚さ。
これらの定数により、 x, y, w, h と t お互いを参照する式なので、
たとえば、「y = x/dar」または「h=w/dar」を指定できます。
例
・セルが100x100ピクセル、厚さが2ピクセル、色が赤でグリッドを描画します。
50%の不透明度:
drawgrid = width = 100:height = 100:thickness = 2:color =[メール保護]
・不透明度が3%の白い3x50グリッドを描画します。
drawgrid = w = iw / 3:h = ih / 3:t = 2:c =[メール保護]
ドローテキスト
libfreetypeを使用して、ビデオの上に指定されたファイルからテキスト文字列またはテキストを描画します
としょうかん。
このフィルターのコンパイルを有効にするには、FFmpegを設定する必要があります
「--enable-libfreetype」。 デフォルトのフォントフォールバックと フォント あなたがする必要があるオプション
「--enable-libfontconfig」でFFmpegを設定します。 を有効にするには テキストの整形 オプション、あなた
「--enable-libfribidi」でFFmpegを設定する必要があります。
構文
次のパラメータを受け入れます。
ボックス 背景色を使用してテキストの周りにボックスを描画するために使用されます。 値は1のいずれかでなければなりません
(有効)または0(無効)。 のデフォルト値 ボックス 0です。
ボックスボーダーw
を使用して、ボックスの周囲に描画する境界線の幅を設定します ボックスカラー。 デフォルト
の値 ボックスボーダーw 0です。
ボックスカラー
テキストの周りにボックスを描画するために使用される色。 このオプションの構文については、次を確認してください。
ffmpeg-utilsマニュアルの「色」セクション。
のデフォルト値 ボックスカラー 「白」です。
境界線
を使用して、テキストの周囲に描画される境界線の幅を設定します ボーダの色を選択します。
のデフォルト値 境界線 0です。
ボーダの色
テキストの周囲に境界線を描画するために使用する色を設定します。 この構文について
オプションの場合は、ffmpeg-utilsマニュアルの「Color」セクションを確認してください。
のデフォルト値 ボーダの色 「黒」です。
拡大
方法を選択します 클라우드 기반 AI/ML및 고성능 컴퓨팅을 통한 디지털 트윈의 기초 – Edward Hsu, Rescale CPO 많은 엔지니어링 중심 기업에게 클라우드는 R&D디지털 전환의 첫 단계일 뿐입니다. 클라우드 자원을 활용해 엔지니어링 팀의 제약을 해결하는 단계를 넘어, 시뮬레이션 운영을 통합하고 최적화하며, 궁극적으로는 모델 기반의 협업과 의사 결정을 지원하여 신제품을 결정할 때 데이터 기반 엔지니어링을 적용하고자 합니다. Rescale은 이러한 혁신을 돕기 위해 컴퓨팅 추천 엔진, 통합 데이터 패브릭, 메타데이터 관리 등을 개발하고 있습니다. 이번 자리를 빌려 비즈니스 경쟁력 제고를 위한 디지털 트윈 및 디지털 스레드 전략 개발 방법에 대한 인사이트를 나누고자 합니다. 展開されます。 「none」、「strftime」(非推奨)、または
「通常」(デフォルト)。 を参照してください drawtext_expansion、 テキスト 拡大 以下のセクション
詳細。
境界を修正する
trueの場合、クリッピングを回避するためにテキスト座標を確認して修正します。
フォントの色
フォントの描画に使用される色。 このオプションの構文については、
ffmpeg-utilsマニュアルの「色」セクション。
のデフォルト値 フォントの色 「黒」です。
fontcolor_expr
と同じように展開される文字列 클라우드 기반 AI/ML및 고성능 컴퓨팅을 통한 디지털 트윈의 기초 – Edward Hsu, Rescale CPO 많은 엔지니어링 중심 기업에게 클라우드는 R&D디지털 전환의 첫 단계일 뿐입니다. 클라우드 자원을 활용해 엔지니어링 팀의 제약을 해결하는 단계를 넘어, 시뮬레이션 운영을 통합하고 최적화하며, 궁극적으로는 모델 기반의 협업과 의사 결정을 지원하여 신제품을 결정할 때 데이터 기반 엔지니어링을 적용하고자 합니다. Rescale은 이러한 혁신을 돕기 위해 컴퓨팅 추천 엔진, 통합 데이터 패브릭, 메타데이터 관리 등을 개발하고 있습니다. 이번 자리를 빌려 비즈니스 경쟁력 제고를 위한 디지털 트윈 및 디지털 스레드 전략 개발 방법에 대한 인사이트를 나누고자 합니다. ダイナミックを取得するには フォントの色 価値。 に
デフォルトでは、このオプションの値は空であり、処理されません。 このオプションを設定すると、
オーバーライド フォントの色 オプションを選択します。
フォント
テキストの描画に使用されるフォントファミリ。 デフォルトではSans。
フォントファイル
テキストの描画に使用されるフォントファイル。 パスを含める必要があります。 このパラメータ
fontconfigサポートが無効になっている場合は必須です。
ドロー
このオプションは存在しません。タイムラインシステムを参照してください
アルファ
アルファブレンディングを適用してテキストを描画します。 値は、0.0からXNUMXまでの数値のいずれかです。
および1.0式は同じ変数を受け入れます x, y 行う。 デフォルト値は1です。
fontcolor_exprをご覧ください
フォントサイズ
テキストの描画に使用されるフォントサイズ。 のデフォルト値 フォントサイズ 16です。
テキストの整形
1に設定されている場合は、テキストの形を整えてみてください(たとえば、右から右への順序を逆にします)
描画する前に、テキストを残してアラビア文字を結合します)。 それ以外の場合は、
与えられたとおりのテキスト。 デフォルトでは1(サポートされている場合)。
ft_load_flags
フォントのロードに使用されるフラグ。
フラグは、libfreetypeでサポートされている対応するフラグをマップし、組み合わせです。
次の値の:
デフォルト
スケールなし
ヒントなし
レンダー
no_bitmap
垂直レイアウト
強制自動ヒント
Crop_bitmap
衒学者
ignore_global_advance_width
no_recurse
無視_変換
モノクロ
リニアデザイン
no_autohint
デフォルト値は「default」です。
詳細については、FT_LOAD_*libfreetypeフラグのドキュメントを参照してください。
シャドウカラー
描画されたテキストの背後に影を描画するために使用される色。 の構文について
このオプションについては、ffmpeg-utilsマニュアルの「Color」セクションを確認してください。
のデフォルト値 シャドウカラー 「黒」です。
シャドバ
影のある
の位置に対するテキストシャドウの位置のxおよびyオフセット
文章。 それらは正または負の値のいずれかです。 両方のデフォルト値は
「0年XNUMX月XNUMX日」。
開始番号
n/frame_num変数の開始フレーム番号。 デフォルト値は「0」です。
タブサイズ
タブのレンダリングに使用するスペースの数のサイズ。 デフォルト値は4です。
タイムコード
初期タイムコード表現を「hh:mm:ss [:;。]ff」形式で設定します。 使用できます
テキストパラメータの有無にかかわらず。 タイムコードレート オプションを指定する必要があります。
timecode_rate、 割合、 r
タイムコードのフレームレートを設定します(タイムコードのみ)。
클라우드 기반 AI/ML및 고성능 컴퓨팅을 통한 디지털 트윈의 기초 – Edward Hsu, Rescale CPO 많은 엔지니어링 중심 기업에게 클라우드는 R&D디지털 전환의 첫 단계일 뿐입니다. 클라우드 자원을 활용해 엔지니어링 팀의 제약을 해결하는 단계를 넘어, 시뮬레이션 운영을 통합하고 최적화하며, 궁극적으로는 모델 기반의 협업과 의사 결정을 지원하여 신제품을 결정할 때 데이터 기반 엔지니어링을 적용하고자 합니다. Rescale은 이러한 혁신을 돕기 위해 컴퓨팅 추천 엔진, 통합 데이터 패브릭, 메타데이터 관리 등을 개발하고 있습니다. 이번 자리를 빌려 비즈니스 경쟁력 제고를 위한 디지털 트윈 및 디지털 스레드 전략 개발 방법에 대한 인사이트를 나누고자 합니다.
描画されるテキスト文字列。 テキストは、UTF-8でエンコードされた文字のシーケンスである必要があります。
このパラメーターでファイルが指定されていない場合、このパラメーターは必須です。 テキストファイル.
テキストファイル
描画するテキストを含むテキストファイル。 テキストは、UTF-8でエンコードされたシーケンスである必要があります
文字。
パラメータでテキスト文字列が指定されていない場合、このパラメータは必須です。 클라우드 기반 AI/ML및 고성능 컴퓨팅을 통한 디지털 트윈의 기초 – Edward Hsu, Rescale CPO 많은 엔지니어링 중심 기업에게 클라우드는 R&D디지털 전환의 첫 단계일 뿐입니다. 클라우드 자원을 활용해 엔지니어링 팀의 제약을 해결하는 단계를 넘어, 시뮬레이션 운영을 통합하고 최적화하며, 궁극적으로는 모델 기반의 협업과 의사 결정을 지원하여 신제품을 결정할 때 데이터 기반 엔지니어링을 적용하고자 합니다. Rescale은 이러한 혁신을 돕기 위해 컴퓨팅 추천 엔진, 통합 데이터 패브릭, 메타데이터 관리 등을 개발하고 있습니다. 이번 자리를 빌려 비즈니스 경쟁력 제고를 위한 디지털 트윈 및 디지털 스레드 전략 개발 방법에 대한 인사이트를 나누고자 합니다. .
両方の場合 클라우드 기반 AI/ML및 고성능 컴퓨팅을 통한 디지털 트윈의 기초 – Edward Hsu, Rescale CPO 많은 엔지니어링 중심 기업에게 클라우드는 R&D디지털 전환의 첫 단계일 뿐입니다. 클라우드 자원을 활용해 엔지니어링 팀의 제약을 해결하는 단계를 넘어, 시뮬레이션 운영을 통합하고 최적화하며, 궁극적으로는 모델 기반의 협업과 의사 결정을 지원하여 신제품을 결정할 때 데이터 기반 엔지니어링을 적용하고자 합니다. Rescale은 이러한 혁신을 돕기 위해 컴퓨팅 추천 엔진, 통합 데이터 패브릭, 메타데이터 관리 등을 개발하고 있습니다. 이번 자리를 빌려 비즈니스 경쟁력 제고를 위한 디지털 트윈 및 디지털 스레드 전략 개발 방법에 대한 인사이트를 나누고자 합니다. と テキストファイル 指定すると、エラーがスローされます。
リロード
1に設定すると、 テキストファイル 各フレームの前にリロードされます。 必ず更新してください
アトミックに、または部分的に読み取られるか、失敗することさえあります。
x
y ビデオ内でテキストが描画されるオフセットを指定する式
フレーム。 これらは、出力画像の左上の境界線を基準にしています。
のデフォルト値 x と y 「0」です。
受け入れられる定数と関数のリストについては、以下を参照してください。
のパラメータ x と y 次の定数を含む式であり、
機能:
与える 入力ディスプレイのアスペクト比は、(w / h)* sar
ひサブ
対サブ
水平および垂直クロマサブサンプル値。 たとえば、ピクセル形式の場合
「yuv422p」 ひサブ 2とは 対サブ 1です。
line_h、 lh
各テキスト行の高さ
main_h、 h, H
入力の高さ
main_w、 w, W
入力幅
max_glyph_a、 登る
ベースラインから最高/上位グリッド座標までの最大距離
レンダリングされたすべてのグリフに対して、グリフのアウトラインポイントを配置します。 正の値です
Y軸を上にしてグリッドの方向に合わせます。
max_glyph_d、 ディセント
ベースラインから配置に使用される最小グリッド座標までの最大距離
レンダリングされたすべてのグリフのグリフアウトラインポイント。 これは負の値です。
Y軸を上にしたグリッドの方向。
max_glyph_h
最大グリフの高さ、つまり、に含まれるすべてのグリフの最大の高さ
レンダリングされたテキスト、それはと同等です 登る - ディセント.
max_glyph_w
最大グリフ幅。これは、に含まれるすべてのグリフの最大幅です。
レンダリングされたテキスト
n 0から始まる入力フレームの数
rand(min、 最大)
間に含まれる乱数を返します 分 と マックス
sar 入力サンプルのアスペクト比。
t 秒単位で表されるタイムスタンプ、入力タイムスタンプが不明な場合はNAN
text_h、 th
レンダリングされたテキストの高さ
text_w、 tw
レンダリングされたテキストの幅
x
y テキストが描画されるxおよびyオフセット座標。
これらのパラメータにより、 x と y お互いを参照する式なので、
例は「y=x/dar」を指定します。
テキスト 拡大
If 拡大 「strftime」に設定されている場合、フィルターは認識します strftime() のシーケンス
提供されたテキストとそれに応じてそれらを展開します。 のドキュメントを確認してください strftime()。 この
この機能は廃止されました。
If 拡大 「none」に設定すると、テキストは逐語的に印刷されます。
If 拡大 「通常」(デフォルト)に設定されている、次の拡張メカニズム
使用されている。
バックスラッシュ文字 \、その後に任意の文字が続き、常にXNUMX番目に展開されます
文字。
"%{...}"の形式のシーケンスが展開されます。 中括弧の間のテキストは関数です
名前、場合によっては':'で区切られた引数が続きます。 引数に特別なものが含まれている場合
文字または区切り文字(':'または'}')は、エスケープする必要があります。
それらはおそらく、の値としてもエスケープする必要があることに注意してください。 클라우드 기반 AI/ML및 고성능 컴퓨팅을 통한 디지털 트윈의 기초 – Edward Hsu, Rescale CPO 많은 엔지니어링 중심 기업에게 클라우드는 R&D디지털 전환의 첫 단계일 뿐입니다. 클라우드 자원을 활용해 엔지니어링 팀의 제약을 해결하는 단계를 넘어, 시뮬레이션 운영을 통합하고 최적화하며, 궁극적으로는 모델 기반의 협업과 의사 결정을 지원하여 신제품을 결정할 때 데이터 기반 엔지니어링을 적용하고자 합니다. Rescale은 이러한 혁신을 돕기 위해 컴퓨팅 추천 엔진, 통합 데이터 패브릭, 메타데이터 관리 등을 개발하고 있습니다. 이번 자리를 빌려 비즈니스 경쟁력 제고를 위한 디지털 트윈 및 디지털 스레드 전략 개발 방법에 대한 인사이트를 나누고자 합니다. 内のオプション
フィルタ引数文字列とフィルタグラフの説明のフィルタ引数として、および
おそらくシェルの場合も、最大XNUMXレベルのエスケープを構成します。 テキストファイルを使用する
これらの問題を回避します。
次の機能を使用できます。
expr、 e
発現評価結果。
評価する式を指定する引数をXNUMXつ取る必要があります。これは、
と同じ定数と関数 x と y 値。 すべての定数が必要なわけではないことに注意してください
たとえば、式を評価するときにテキストサイズがわからないため、
定数 テキストw と テキスト_h 未定義の値になります。
expr_int_format、 CIF
式の値を評価し、フォーマットされた整数として出力します。
最初の引数は、評価される式です。 式 機能。
XNUMX番目の引数は、出力形式を指定します。 許可される値は x, X, d と u.
これらは「printf」関数とまったく同じように扱われます。 XNUMX番目のパラメーターはオプションです
そして、出力によって取られる位置の数を設定します。 パディングを追加するために使用できます
左からゼロで。
グラムタイム
フィルターが実行されている時刻。UTCで表されます。 引数を受け入れることができます:
a strftime() フォーマット文字列。
現地時間
フィルタが実行されている時刻。ローカルタイムゾーンで表されます。 できる
引数を受け入れる:a strftime() フォーマット文字列。
フレームメタデータ。 メタデータキーを指定する引数をXNUMXつ取る必要があります。
n, フレーム番号
0から始まるフレーム番号。
ピクトタイプ
現在の画像タイプの1文字の説明。
PTS 現在のフレームのタイムスタンプ。 最大XNUMXつの引数を取ることができます。
最初の引数はタイムスタンプの形式です。 デフォルトでは、次のように数秒間「flt」になります。
マイクロ秒精度のXNUMX進数。 「hms」はフォーマットされた
[-] HH:MM:SS.mmm ミリ秒の精度のタイムスタンプ。
XNUMX番目の引数は、タイムスタンプに追加されるオフセットです。
例
・オプションのデフォルト値を使用して、フォントFreeSerifで「テストテキスト」を描画します
パラメーター。
drawtext = "fontfile = / usr / share / fonts / truetype / freefont / FreeSerif.ttf:text='テストテキスト'"
・位置x=24およびy=100でサイズ50のフォントFreeSerifを使用して「テストテキスト」を描画します(カウント
画面の左上隅から)、テキストは黄色で、その周りに赤いボックスがあります。 両方
テキストとボックスの不透明度は20%です。
drawtext = "fontfile = / usr / share / fonts / truetype / freefont / FreeSerif.ttf:text ='テストテキスト':\
x = 100:y = 50:fontsize = 24:fontcolor =[メール保護]:box = 1:boxcolor =[メール保護]"
内でスペースが使用されていない場合は、二重引用符は必要ありません。
パラメータリスト。
・ビデオフレームの中央にテキストを表示します。
drawtext = "fontsize = 30:fontfile = FreeSerif.ttf:text ='hello world':x =(w-text_w)/ 2:y =(h-text_h)/ 2"
・ビデオフレームの最後の行に右から左にスライドするテキスト行を表示します。 ザ
file LONG_LINE 改行のない単一の行が含まれていると見なされます。
drawtext = "fontsize = 15:fontfile = FreeSerif.ttf:text = LONG_LINE:y = h-line_h:x = -50 * t"
・ファイルの内容を表示する CREDITS フレームの下部から上にスクロールします。
drawtext = "fontsize = 20:fontfile = FreeSerif.ttf:textfile = CREDITS:y = h-20 * t"
・入力ビデオの中央に緑色の文字「g」をXNUMXつ描画します。 グリフベースライン
画面の半分の高さに配置されます。
drawtext = "fontsize = 60:fontfile = FreeSerif.ttf:fontcolor = green:text = g:x =(w-max_glyph_w)/ 2:y = h / 2-ascent"
・1秒ごとに3秒間テキストを表示します。
drawtext = "fontfile = FreeSerif.ttf:fontcolor = white:x = 100:y = x / dar:enable = lt(mod(t \、3)\、1):text ='blink'"
・fontconfigを使用してフォントを設定します。 コロンをエスケープする必要があることに注意してください。
drawtext ='fontfile = Linux Libertine O-40 \:style = Semibold:text = FFmpeg'
・リアルタイムエンコーディングの日付を印刷します(を参照) ストラフタイム(3)):
drawtext ='fontfile = FreeSans.ttf:text =%{localtime \:%a%b%d%Y}'
・テキストのフェードインおよびフェードアウト(表示/非表示)を表示します。
#!/bin/sh
DS = 1.0#表示開始
DE = 10.0#表示終了
FID = 1.5#フェードイン期間
FOD = 5#フェードアウト期間
ffplay -f lavfi "color、drawtext = text = TEST:fontsize = 50:fontfile = FreeSerif.ttf:fontcolor_expr = ff0000%{eif \\\\:clip(255 *(1 * between(t \\、$ DS + $ FID \\、$ DE-$ FOD)+((t-$ DS)/ $ FID)* between(t \\、$ DS \\、$ DS + $ FID)+(-(t-$ DE) / $ FOD)* between(t \\、$ DE-$ FOD \\、$ DE))\\、0 \\、255)\\\\:x \\\\:2} "
libfreetypeの詳細については、以下を確認してください。http://www.freetype.org/>.
fontconfigの詳細については、以下を確認してください。
<http://freedesktop.org/software/fontconfig/fontconfig-user.html>.
libfribidiの詳細については、以下を確認してください。http://fribidi.org/>.
エッジ検出
エッジを検出して描画します。 フィルタは、キャニーエッジ検出アルゴリズムを使用します。
フィルタは次のオプションを受け入れます。
低いです
高いです
Cannyしきい値アルゴリズムで使用される低しきい値と高しきい値を設定します。
高いしきい値は「強い」エッジピクセルを選択し、それらは次に接続されます
8-低しきい値によって選択された「弱い」エッジピクセルとの接続。
低いです と 高いです しきい値は[0,1]の範囲で選択する必要があります。 低いです でなければなりません
以下以下 高いです.
のデフォルト値 低いです は「20/255」で、デフォルト値は 高いです 「50/255」です。
モード
描画モードを定義します。
ワイヤー
黒の背景に白/灰色のワイヤーを描画します。
カラーミックス
色を混ぜて、ペイント/漫画の効果を作成します。
デフォルト値は ワイヤー.
例
・ヒステリシスしきい値のカスタム値を使用した標準エッジ検出:
edgedetect = low = 0.1:high = 0.4
・しきい値なしのペイント効果:
edgedetect = mode = colormix:high = 0
eq
明るさ、コントラスト、彩度、おおよそのガンマ調整を設定します。
フィルタは次のオプションを受け入れます。
コントラスト
コントラスト表現を設定します。 値は、「-2.0」から2.0の範囲の浮動小数点値である必要があります。
デフォルト値は「0」です。
明るさ
明るさの表現を設定します。 値は、「-1.0」から1.0の範囲の浮動小数点値である必要があります。
デフォルト値は「0」です。
飽和
飽和式を設定します。 値は、0.0〜3.0の範囲のfloatである必要があります。 ザ
デフォルト値は「1」です。
ガンマ
ガンマ式を設定します。 値は、0.1〜10.0の範囲のfloatである必要があります。 デフォルト
値は「1」です。
ガンマ_r
赤のガンマ式を設定します。 値は、0.1〜10.0の範囲のfloatである必要があります。 ザ
デフォルト値は「1」です。
ガンマ_g
緑のガンマ式を設定します。 値は、0.1〜10.0の範囲のfloatである必要があります。
デフォルト値は「1」です。
ガンマ_b
青のガンマ式を設定します。 値は、0.1〜10.0の範囲のfloatである必要があります。 ザ
デフォルト値は「1」です。
ガンマ重み
ガンマ重み式を設定します。 高ガンマの影響を減らすために使用できます
明るい画像領域の価値、例えば、それらが過度に増幅されて単純になるのを防ぎます
白い。 値は、0.0〜1.0の範囲のfloatである必要があります。 0.0の値はガンマを回します
1.0が完全な強度を維持している間、修正は完全に下がっています。 デフォルトは「1」です。
評価する
明るさ、コントラスト、彩度、ガンマ式の式を設定する
評価されます。
次の値を受け入れます。
INIT
フィルタの初期化中またはコマンド時にXNUMX回だけ式を評価します
処理されます
フレーム
着信フレームごとに式を評価する
デフォルト値は INIT.
式は次のパラメーターを受け入れます。
n 0から始まる入力フレームのフレーム数
投稿する 入力ファイル内の対応するパケットのバイト位置。指定されていない場合はNAN
r 入力ビデオのフレームレート、入力フレームレートが不明な場合はNAN
t 秒単位で表されるタイムスタンプ、入力タイムスタンプが不明な場合はNAN
コマンド
フィルタは次のコマンドをサポートします。
コントラスト
コントラスト表現を設定します。
明るさ
明るさの表現を設定します。
飽和
飽和式を設定します。
ガンマ
ガンマ式を設定します。
ガンマ_r
gamma_r式を設定します。
ガンマ_g
gamma_g式を設定します。
ガンマ_b
gamma_b式を設定します。
ガンマ重み
gamma_weight式を設定します。
このコマンドは、対応するオプションと同じ構文を受け入れます。
指定された式が無効な場合、現在の値に保持されます。
ビデオに侵食効果を適用します。
このフィルターは、ピクセルを ローカル(3x3)最小。
次のオプションを受け入れます。
閾値0
閾値1
閾値2
閾値3
各プレーンの最大変更を制限します。デフォルトは65535です。0の場合、プレーンは残ります。
変更なし。
座標
参照するピクセルを指定するフラグ。 デフォルトは255です。つまり、XNUMXつのピクセルすべてが
中古。
次のようなローカル3x3座標マップへのフラグ:
1 2 3
4 5
6 7 8
抽出平面
入力ビデオストリームから別のグレースケールビデオにカラーチャネルコンポーネントを抽出します
ストリーム。
フィルタは次のオプションを受け入れます。
プレーン
抽出する平面を設定します。
平面に使用できる値は次のとおりです。
y
u
v
a
r
g
b
入力で使用できない平面を選択すると、エラーが発生します。 それはあなたを意味します
「y」、「u」、「v」平面と同時に「r」、「g」、「b」平面を選択することはできません。
例
・入力ビデオフレームから輝度、u、vカラーチャンネルコンポーネントを3つのグレースケールに抽出します
出力:
ffmpeg -i video.avi -filter_complex'extractplanes = y + u + v [y] [u] [v]' -map'[y]' y.avi -map'[u]' u.avi -map'[ v]'v.avi
エルブグ
ELBG(Enhanced LBG)アルゴリズムを使用してポスタライズ効果を適用します。
各入力画像について、フィルターは入力から
コードブックの長さ、つまり個別の出力色の数を指定して出力します。
このフィルターは、次のオプションを受け入れます。
codebook_length、 l
コードブックの長さを設定します。 値は正の整数である必要があり、数値を表します
明確な出力色の。 デフォルト値は256です。
nb_steps、 n
最適なマッピングを計算するために適用する反復の最大数を設定します。 ザ
値が高いほど、結果が良くなり、計算時間が長くなります。 デフォルト
値は1です。
シード、 s
ランダムシードを設定します。0からUINT32_MAXまでの整数である必要があります。 そうでない場合
指定されているか、明示的に-1に設定されている場合、フィルターは適切なランダムシードを使用しようとします
ベストエフォートベースで。
pal8
pal8出力ピクセルフォーマットを設定します。 このオプションは、コードブックの長さが長い場合は機能しません
256より。
フェード
入力ビデオにフェードイン/フェードアウト効果を適用します。
次のパラメータを受け入れます。
タイプ、 t
エフェクトタイプは、フェードインの場合は「イン」、フェードアウトエフェクトの場合は「アウト」のいずれかになります。
デフォルトは「in」です。
start_frame、 s
フェード効果の適用を開始するフレームの番号を指定します。 デフォルトは0です。
nb_frames、 n
フェード効果が持続するフレーム数。 フェードイン効果の終了時に、
出力ビデオは、入力ビデオと同じ強度になります。 フェードの終わりに-
トランジションが終了すると、出力ビデオは選択したもので埋められます カラー。 デフォルトは
25.
アルファ
1に設定すると、入力にアルファチャンネルが存在する場合は、アルファチャンネルのみをフェードします。 デフォルト値は0です。
始まる時間、 st
フェード効果の適用を開始するフレームのタイムスタンプ(秒単位)を指定します。 もしも
start_frameとstart_timeの両方が指定されている場合、フェードはどちらかが来たときに開始されます
過去。 デフォルトは0です。
デュレーション、 d
フェード効果が持続しなければならない秒数。 フェードインの終了時
効果出力ビデオは、最後に入力ビデオと同じ強度になります
フェードアウトトランジション出力ビデオは、選択したもので埋められます カラー。 場合
durationとnb_framesの両方が指定され、durationが使用されます。 デフォルトは0(nb_frames
デフォルトで使用されます)。
色、 c
フェードの色を指定します。 デフォルトは「黒」です。
例
・ビデオの最初の30フレームでフェードインします。
フェード=イン:0:30
上記のコマンドは次と同等です。
フェード=t= in:s = 0:n = 30
・45フレームビデオの最後の200フレームをフェードアウトします。
フェード=アウト:155:45
decode = type = out:start_frame = 155:nb_frames = 45
・25フレームビデオの最初の25フレームをフェードインし、最後の1000フレームをフェードアウトします。
フェード=イン:0:25、フェード=アウト:975:25
・最初の5フレームを黄色にしてから、フレーム5〜24からフェードインします。
フェード=in:5:20:color = yellow
・ビデオの最初の25フレームでアルファでフェードインします。
フェード=in:0:25:alpha = 1
・最初の5.5秒間を黒にしてから、0.5秒間フェードインします。
フェード=t= in:st = 5.5:d = 0.5
fftfilt
周波数領域のサンプルに任意の式を適用する
dc_Y
画像の輝度面のDC値(ゲイン)を調整します。 フィルタは、
0〜1000の範囲の整数値。デフォルト値は0に設定されています。
dc_U
画像の1番目のクロマ平面のDC値(ゲイン)を調整します。 フィルタは、
0〜1000の範囲の整数値。デフォルト値は0に設定されています。
dc_V
画像の2番目のクロマ平面のDC値(ゲイン)を調整します。 フィルタは、
0〜1000の範囲の整数値。デフォルト値は0に設定されています。
重量_Y
輝度平面の周波数領域の重み式を設定します。
体重_U
1番目のクロマ平面の周波数領域の重み式を設定します。
重量_V
2番目のクロマ平面の周波数領域の重み式を設定します。
フィルタは次の変数を受け入れます。
X
Y 現在のサンプルの座標。
W
H 画像の幅と高さ。
例
・ ハイパス:
fftfilt = dc_Y = 128:weight_Y ='squish(1-(Y + X)/ 100)'
・ ローパス:
fftfilt = dc_Y = 0:weight_Y ='squish((Y + X)/ 100-1)'
・研ぎます:
fftfilt = dc_Y = 0:weight_Y = '1 + squish(1-(Y + X)/ 100)'
フィールド
無駄を避けるためにストライド演算を使用して、インターレース画像から単一のフィールドを抽出します
CPU時間。 出力フレームは非インターレースとしてマークされます。
フィルタは次のオプションを受け入れます。
type
上部(値が0または「top」の場合)または下部フィールドのどちらを抽出するかを指定します
(値が1または「下」の場合)。
フィールドマッチ
逆テレシネ用のフィールド整合フィルター。 プログレッシブを再構築するためのものです
テレシネされたストリームからのフレーム。 フィルタは重複したフレームをドロップしないため、
完全な逆テレシネ「フィールドマッチ」の後には、次のようなデシメーションフィルターが続く必要があります。
as 間引 フィルタグラフで。
フィールドマッチングとデシメーションの分離は、特に
XNUMXつの間にインターレース解除フィルターフォールバックを挿入する可能性。 ソースの場合
テレシネと実際のインターレースコンテンツが混在しているため、「fieldmatch」は一致しません
インターレースパーツのフィールド。 ただし、これらの残りのコーマフレームは次のようにマークされます
インターレースされているため、次のような後のフィルターでインターレースを解除できます。 ヤディフ
デシメーション。
さまざまな構成オプションに加えて、「fieldmatch」はオプションでXNUMX秒かかる場合があります
ストリーム、を通じてアクティブ化 ppsrc オプション。 有効にすると、フレームの再構築は次のようになります
このXNUMX番目のストリームのフィールドとフレームに基づいています。 これにより、最初の入力を
フィルタのさまざまなアルゴリズムを支援するために前処理され、
ロスレス出力(フィールドが適切に一致していると仮定)。 通常、フィールド対応
デノイザー、または明るさ/コントラストの調整が役立ちます。
このフィルターは、TIVTC / TFM(AviSynthプロジェクト)および
VIVTC / VFM(VapourSynthプロジェクト)。 後者はTFMのライトクローンであり、そこから「フィールドマッチ」が行われます。
に基づいています。 セマンティクスと使用法は非常に近いですが、一部の動作とオプションの名前
異なる場合があります。
この 間引 フィルタは現在、一定のフレームレート入力に対してのみ機能します。 入力に
テレシネ(30fps)とプログレッシブコンテンツが混在し、フレームレートが24fpsのように低い場合は
次のフィルターチェーンを使用して、必要なcfrストリームを生成します。
"dejudder、fps = 30000/1001、fieldmatch、decimate"。
フィルタは次のオプションを受け入れます。
注文
入力ストリームの想定されるフィールド順序を指定します。 使用可能な値は次のとおりです。
オート
パリティを自動検出します(FFmpegの内部パリティ値を使用します)。
BFF 最初に下部フィールドを想定します。
tff 最初にトップフィールドを想定します。
ストリームによってアナウンスされたパリティを信頼しないことが推奨される場合があることに注意してください。
デフォルト値は オート.
モード
使用するマッチングモードまたは戦略を設定します。 pc モードはそれという意味で最も安全です
可能であれば、フレームが重複しているためにジャーキネスが発生するリスクはありませんが、
悪い編集やブレンドされたフィールドは、良い一致のときにコーマフレームを出力することになります
実際に存在する可能性があります。 一方で、 pcn_ub モードは、次の点で最も危険です
ぎくしゃくした感じがしますが、フレームがあればほとんどの場合良いフレームが見つかります。 ザ
他の値はすべてその中間にあります pc と pcn_ub ジャーキネスのリスクに関して
重複するフレームを作成するのではなく、編集が不適切なセクションで適切な一致を見つけることはできません。
孤立したフィールド、混合フィールドなど。
p / c / n / u / bの詳細については、次のURLを参照してください。 p / c / n / u / b 意味 のセクションから無料でダウンロードできます。
使用可能な値は次のとおりです。
pc 2ウェイマッチング(p / c)
pc_n
2ウェイマッチング、およびまだコーミングされている場合は3番目のマッチを試行します(p / c + n)
pc_u
2ウェイマッチング、およびまだコーミングされている場合は3番目のマッチ(同じ順序)を試行します(p / c + u)
pc_n_ub
2ウェイマッチング、まだコーミングされている場合は3番目のマッチを試行し、4/5番目のマッチを試行する場合
まだコーミング(p / c + n + u / b)
pcn 3方向マッチング(p / c / n)
pcn_ub
3ウェイマッチング、および元のマッチの4つすべてが
コーマとして検出(p / c / n + u / b)
最後の括弧は、そのモードに使用される一致を示します
前提 注文=tff (と フィールド on オート or top).
スピードの面で pc モードは断然最速で、 pcn_ub 最も遅いです。
デフォルト値は pc_n.
ppsrc
メイン入力ストリームを前処理済み入力としてマークし、セカンダリ入力を有効にします
フィールドを選択するためのクリーンなソースとしてストリームします。 のフィルターの紹介を参照してください
詳細。 それはに似ています clip2 VFM/TFMの機能。
デフォルト値は0(無効)です。
フィールド
一致するフィールドを設定します。 これをと同じ値に設定することをお勧めします 注文
その設定とのマッチングの失敗が発生しない限り。 特定の状況では
マッチングに使用されるフィールドを変更すると、マッチングに大きな影響を与える可能性があります
パフォーマンス。 使用可能な値は次のとおりです。
オート
自動(と同じ値 注文).
ボトム
下のフィールドから一致します。
top トップフィールドから一致します。
デフォルト値は オート.
マクロマ
一致比較中に彩度を含めるかどうかを設定します。 ほとんどの場合それ
これを有効のままにしておくことをお勧めします。 クリップにが含まれている場合にのみ、これを0に設定する必要があります
重いレインボーやその他のアーティファクトなどの悪いコロマの問題。 これを0に設定する
ある程度の精度を犠牲にして物事をスピードアップするために使用することもできます。
デフォルト値は1です。
y0
y1 これらは、間の線を除外する除外バンドを定義します y0 と y1 から
フィールドマッチングの決定に含まれます。 除外バンドを使用して無視できます
字幕、ロゴ、またはマッチングを妨げる可能性のあるその他のもの。 y0 を設定します
スキャンラインの開始と y1 終了行を設定します。 間のすべての行 y0 と y1
(含む y0 と y1)は無視されます。 設定 y0 と y1 同じ値に
機能を無効にします。 y0 と y1 デフォルトは0です。
ススレッシュ
シーン変化検出しきい値を、輝度の最大変化のパーセンテージとして設定します
飛行機。 適切な値は「[8.0]」の範囲です。 シーンチェンジ検知のみ
場合に関連 コムマッチ=sc。 の範囲 ススレッシュ は「[0.0]」です。
デフォルト値は12.0です。
コムマッチ
日時 コンバット ではありません なし、「fieldmatch」は、
最終一致として使用する一致を決定するときに一致します。 使用可能な値は次のとおりです。
なし
コーミングされたスコアに基づく最終的なマッチングはありません。
sc コーミングスコアは、シーンの変更が検出された場合にのみ使用されます。
フル
常にコームスコアを使用します。
デフォルトは sc.
くし
「fieldmatch」を強制して、特定の一致のコーミングされたメトリックを計算し、それらを出力します。
この設定は、 マイクアウト TFM/VFM語彙で。 使用可能な値は次のとおりです。
なし
強制計算はありません。
pcn p / c/n計算を強制します。
PCナブ
p / c / n / u/bの計算を強制します。
デフォルト値は なし.
クレシュ
これは、コーミングされたフレームの検出に使用されるエリアコーミングのしきい値です。 これは本質的に
「強力な」または「目に見える」コーミングを検出する方法を制御します。 値が大きいということは
コーミングはより目立つ必要があり、値が小さいほどコーミングが目立たなくなる可能性があります。
強力であり、まだ検出されています。 有効な設定は「-1」からです(すべてのピクセルは
コーミングとして検出)から255(ピクセルはコーミングとして検出されません)。 これは基本的に
ピクセル差の値。 適切な範囲は「[8]」です。
デフォルト値は9です。
彩度
コーマフレーム決定で彩度を考慮するかどうかを設定します。 無効にするだけ
これは、ソースに問題を引き起こしているクロマの問題(レインボーなど)がある場合です。
クロマを有効にしたコーマフレーム検出用。 実は 彩度=0 is
クロマがコーミングのみである場合を除いて、通常はより信頼性があります
ソース。
デフォルト値は0です。
ブロックx
濃淡のむらがある
コーマフレーム中に使用されるウィンドウのx軸とy軸のサイズをそれぞれ設定します
検出。 これは、領域のサイズと関係があります コンペル ピクセルは
フレームがコーミングされたと宣言されるためには、コーミングされたものとして検出される必要があります。 を参照してください コンペル
詳細については、パラメータの説明。 可能な値は、累乗である任意の数値です。
2から始まり4までの512の。
デフォルト値は16です。
コンペル
いずれかの内部のコーミングされたピクセルの数 濃淡のむらがある by ブロックx 上のサイズのブロック
コーミングとして検出されるフレームのフレーム。 その間 クレシュ どのように「見える」かを制御します
コーミングは必須です。この設定は、どのコーミングが存在する必要があるかを制御します。
ローカライズされた領域(によって定義されたウィンドウ ブロックx と 濃淡のむらがある 設定)フレームに。
最小値は0、最大値は「blocky xblockx」です(この時点ではフレームはありません
コーミングとして検出されることはありません)。 この設定は、 MI TFM/VFM語彙で。
デフォルト値は80です。
p / c / n / u / b 意味
p / c / n
次のテレシネストリームを想定しています。
トップフィールド:1 2 2 3 4
下部フィールド:1 2 3 4 4
番号は、フィールドが関連するプログレッシブフレームに対応しています。 ここで、最初のXNUMXつ
フレームはプログレッシブで、3番目と4番目はコーミングされます。
「fieldmatch」が下からマッチングを実行するように構成されている場合(フィールド=ボトム) こうやって
この入力ストリームは変換されます:
入力ストリーム:
た 1 2 2 3 4
B 1 2 3 4<-マッチングリファレンス
一致:ccnnc
出力ストリーム:
た 1 2 3 4 4
乙 1 2 3 4 4
フィールドマッチングの結果、一部のフレームが重複していることがわかります。 実行するには
完全な逆テレシネの場合、この操作の後はデシメーションフィルターに依存する必要があります。
たとえば、 間引 フィルタ。
同じ操作がトップフィールドから一致するようになりました(フィールド=top)は次のようになります。
入力ストリーム:
T 1 2 2 3<-マッチングリファレンス
乙 1 2 3 4 4
一致:ccppc
出力ストリーム:
た 1 2 2 3 4
乙 1 2 2 3 4
これらの例では、何を見ることができます p, c と n 平均; 基本的に、それらはフレームを参照し、
反対のパリティのフィールド:
*<p 前のフレームの反対のパリティのフィールドに一致します>
*<c 現在のフレームの反対のパリティのフィールドに一致します>
*<n 次のフレームの反対のパリティのフィールドに一致します>
u / b
この u と b マッチングは、反対側からマッチングするという意味で少し特別です
パリティフラグ。 次の例では、現在2番目に一致していると想定しています。
フレーム(上:2、下:2)。 試合によると、「x」はそれぞれの上下に配置されます
一致したフィールド。
ボトムマッチング付き(フィールド=ボトム):
一致:cpnbu
xxxxx
トップ1 2 2 1 2 2 1 2 2 1 2 2 1
下部1 2 3 1 2 3 1 2 3 1 2 3 1
xxxxx
出力フレーム:
2 1 2 2 2
2 2 2 1 3
トップマッチング付き(フィールド=top):
一致:cpnbu
xxxxx
トップ1 2 2 1 2 2 1 2 2 1 2 2 1
下部1 2 3 1 2 3 1 2 3 1 2 3 1
xxxxx
出力フレーム:
2 2 2 1 2
2 1 3 2 2
例
トップフィールドの最初のテレシネストリームの単純なIVTC:
fieldmatch = order = tff:combmatch = none、間引き
フォールバックをオンにした高度なIVTC ヤディフ まだコーミングされているフレームの場合:
fieldmatch = order = tff:combmatch = full、yadif = deint = interlaced、decimate
フィールドオーダー
入力ビデオのフィールド順序を変換します。
次のパラメータを受け入れます。
注文
出力フィールドの順序。 有効な値は次のとおりです tff 最初のトップフィールドまたは BFF 下用
最初にフィールド。
デフォルト値は tff.
変換は、画像コンテンツをXNUMX行上または下にシフトすることによって行われます。
残りの行を適切な画像コンテンツで埋めます。 この方法は一貫しています
ほとんどの放送フィールドオーダーコンバーターで。
入力ビデオがインターレースとしてフラグが立てられていない場合、またはすでにインターレースとしてフラグが立てられている場合
必要な出力フィールドの順序の場合、このフィルターは着信ビデオを変更しません。
ボトムフィールドが最初であるPALDVマテリアルとの間で変換する場合に非常に便利です。
例:
ffmpeg -i in.vob -vf "fieldorder = bff" out.dv
FIFO
入力画像をバッファリングし、要求されたときに送信します。
これは主に、libavfilterフレームワークによって自動挿入される場合に役立ちます。
パラメータを取りません。
find_rect
長方形のオブジェクトを探す
次のオプションを受け入れます。
オブジェクト
オブジェクト画像のファイルパスは、gray8である必要があります。
しきい値
検出しきい値。デフォルトは0.5です。
ミップマップ
ミップマップの数。デフォルトは3です。
xmin、 ymin、 xmax、 ワイマックス
検索する長方形を指定します。
例
・を使用して、特定のビデオの代表的なパレットを生成します ffmpeg:
ffmpeg -i file.ts -vf find_rect = newref.pgm、cover_rect = cover.jpg:mode = cover new.mkv
カバーレクト
長方形のオブジェクトをカバーします
次のオプションを受け入れます。
カバー
オプションの表紙画像のファイルパスは、yuv420である必要があります。
モード
カバーモードを設定します。
次の値を受け入れます。
カバー
提供された画像でカバーします
ブラー
周囲のピクセルを補間してカバーします
デフォルト値は ブラー.
例
・を使用して、特定のビデオの代表的なパレットを生成します ffmpeg:
ffmpeg -i file.ts -vf find_rect = newref.pgm、cover_rect = cover.jpg:mode = cover new.mkv
形式でアーカイブしたプロジェクトを保存します.
入力ビデオを指定されたピクセル形式のXNUMXつに変換します。 Libavfilterはしようとします
次のフィルターへの入力として適切なものを選択してください。
次のパラメータを受け入れます。
pix_fmts
「pix_fmts=yuv420p | monow | rgb24」など、ピクセル形式名の「|」で区切られたリスト。
例
・入力ビデオをに変換します yuv420p 形式でアーカイブしたプロジェクトを保存します.
format = pix_fmts = yuv420p
入力ビデオをリスト内の任意の形式に変換します
format = pix_fmts = yuv420p | yuv444p | yuv410p
FPS
フレームを複製またはドロップして、ビデオを指定された一定のフレームレートに変換します。
必要。
次のパラメータを受け入れます。
FPS 必要な出力フレームレート。 デフォルトは25です。
円形
丸め方法。
可能な値は次のとおりです。
ゼロ
0に向かってゼロラウンド
infファイル 0から丸める
ダウン
-無限大に向かって丸める
up +無限大に向かって丸める
近く
最も近い値に丸める
デフォルトは「near」です。
始まる時間
最初のPTSは、秒単位の指定された値である必要があると想定します。 これにより、
ストリーム開始時のパディング/トリミング。 デフォルトでは、
最初のフレームの予想されるPTSであるため、パディングやトリミングは行われません。 たとえば、これ
ビデオの場合、最初のフレームの複製で先頭を埋めるために0に設定できます
ストリームは、オーディオストリームの後に開始するか、負のPTSでフレームをトリミングします。
または、オプションをフラット文字列として指定することもできます。 FPS[:円形].
参照してください セット フィルタ。
例
・fpsを25に設定するための一般的な使用法:
fps = fps = 25
・fpsを24に設定し、省略形と丸め方法を使用して最も近い値に丸めます。
fps = fps = film:round = near
フレームパック
XNUMXつの異なるビデオストリームをステレオスコピックビデオにパックし、適切なメタデータを設定します
サポートされているコーデック。 XNUMXつのビューは、同じサイズ、フレームレート、および処理である必要があります
短いビデオが終了すると停止します。 ビューを簡単に調整できることに注意してください
とのプロパティ 階段 と FPS フィルタ
次のパラメータを受け入れます。
形式でアーカイブしたプロジェクトを保存します.
希望する梱包フォーマット。 サポートされている値は次のとおりです。
SBS ビューは隣り合っています(デフォルト)。
タブ ビューは互いに重なり合っています。
ライン
ビューは行ごとに詰め込まれています。
コラム
ビューは列ごとにパックされています。
frameeq
ビューは一時的にインターリーブされます。
いくつかの例:
#左右のビューをフレームシーケンシャルビデオに変換する
ffmpeg -i LEFT -i RIGHT -filter_complex framepack = frameseq OUTPUT
#ビューを入力と同じ出力解像度のサイドバイサイドビデオに変換します
ffmpeg -i LEFT -i RIGHT -filter_complex [0:v] scale = w = iw / 2 [left]、[1:v] scale = w = iw / 2 [right]、[left] [right] framepack = sbs出力
フレームレート
ソースフレームから新しいビデオ出力フレームを補間して、フレームレートを変更します。
このフィルターは、インターレースメディアで正しく機能するようには設計されていません。 あなたがしたい場合
インターレースメディアのフレームレートを変更すると、この前にインターレースを解除する必要があります
フィルターをかけ、このフィルターの後で再インターレースします。
受け入れられるオプションの説明は次のとおりです。
FPS XNUMX秒あたりの出力フレームを指定します。 このオプションは値として指定することもできます
50人。 デフォルトはXNUMXです。
interp_start
出力フレームが線形として作成される範囲の開始を指定します
0つのフレームの補間。 範囲は[255-15]で、デフォルトはXNUMXです。
interp_end
出力フレームが線形として作成される範囲の終わりを指定します
0つのフレームの補間。 範囲は[255-240]で、デフォルトはXNUMXです。
シーン
シーンチェンジを検出するレベルを0〜100〜XNUMXの値で指定してください。
新しいシーンを示します。 低い値は、現在のフレームの確率が低いことを反映しています。
新しいシーンを導入しますが、値が高いほど、現在のフレームが
7つになります。 デフォルトはXNUMXです。
フラグ
フィルタプロセスに影響を与えるフラグを指定します。
利用可能な値 フラグ 次のとおりです。
scene_change_detect、 scd
オプションの値を使用してシーン変更検出を有効にする シーン。 このフラグは
デフォルトで有効になっています。
フレームステップ
N番目のフレームごとにXNUMXつのフレームを選択します。
このフィルターは、次のオプションを受け入れます。
手順
すべての「ステップ」フレームの後にフレームを選択します。 許可される値は正の整数です
0よりも大きくなります。デフォルト値は1です。
フレイ0r
入力ビデオにfrei0r効果を適用します。
このフィルターのコンパイルを有効にするには、frei0rヘッダーをインストールして
「--enable-frei0r」でFFmpegを設定します。
次のパラメータを受け入れます。
フィルター名
ロードするfrei0rエフェクトの名前。 環境変数の場合 FREI0R_PATH is
定義されている場合、frei0r効果は、によって指定された各ディレクトリで検索されます。
コロンで区切られたリスト FREIOR_PATH。 それ以外の場合、標準のfrei0rパスは次のとおりです。
この順序で検索: HOME / .frei0r-1 / lib /, / usr / local / lib / frei0r-1 /,
/ usr / lib / frei0r-1 /.
フィルタパラメータ
frei0rエフェクトに渡すパラメーターの「|」で区切られたリスト。
frei0r効果パラメーターは、ブール値(値は「y」または「n」のいずれか)、double、a
色(として指定 R/G/Bここで、 R, G, B 0.0との間の浮動小数点数です
1.0を含む)またはffmpegの「色」セクションで指定された色の説明によって-
utils manual)、位置(として指定 X/Yここで、 X と Y 浮動小数点数です)
および/または文字列。
パラメーターの数と種類は、ロードされたエフェクトによって異なります。 エフェクトパラメータが
指定しない場合、デフォルト値が設定されます。
例
・compress0rエフェクトを適用し、最初のXNUMXつのdoubleパラメーターを設定します。
frei0r = filter_name = compress0r:filter_params = 0.5 | 0.01
・最初のパラメータとして色を使用して、colordistance効果を適用します。
frei0r = colordistance:0.2 / 0.3 / 0.4
frei0r = colordistance:violet
frei0r = colordistance:0x112233
・左上と右上の画像の位置を指定して、遠近効果を適用します。
frei0r=perspective:0.2/0.2|0.8/0.2
詳細については、を参照してください。http://frei0r.dyne.org>
fspp
高速でシンプルな後処理を適用します。 それはのより速いバージョンです spp.
(I)DCTを水平/垂直パスに分割します。 単純な後処理とは異なり
フィルタ。そのうちのXNUMXつは、ピクセルごとではなく、ブロックごとにXNUMX回実行されます。 これは多くを可能にします
より高速。
フィルタは次のオプションを受け入れます。
品質
品質を設定します。 このオプションは、平均化するレベルの数を定義します。 それは受け入れます
4〜5の範囲の整数。 デフォルト値は4です。
qp 一定の量子化パラメータを強制します。 0〜63の範囲の整数を受け入れます。 そうでない場合
設定すると、フィルターはビデオストリームからのQPを使用します(利用可能な場合)。
力
フィルタ強度を設定します。 -15から32の範囲の整数を受け入れます。値が小さいほど、より多くのことを意味します。
詳細だけでなく、より多くのアーティファクトがあり、値が高いほど画像は滑らかになりますが、
ぼかし。 デフォルト値は0XPSNR最適です。
use_bframe_qp
1に設定されている場合は、BフレームからのQPの使用を有効にします。このオプションを使用すると、
BフレームのQPが大きいことが多いため、ちらつきが発生します。 デフォルトは0(有効ではありません)です。
ゲク
フィルタは次のオプションを受け入れます。
lum_expr、 LUM
輝度表現を設定します。
cb_expr、 cb
クロミナンスブルーの表現を設定します。
cr_expr、 cr
クロミナンスレッドの表現を設定します。
alpha_expr、 a
アルファ式を設定します。
red_expr、 r
赤の式を設定します。
green_expr、 g
緑の式を設定します。
blue_expr、 b
青い式を設定します。
色空間は、指定されたオプションに従って選択されます。 のいずれか lum_expr,
cb_exprまたは cr_expr オプションが指定されている場合、フィルターは自動的にYCbCrを選択します
色空間。 のいずれか red_expr, green_exprまたは blue_expr オプションが指定されている場合、
RGB色空間を選択します。
クロミナンス式のXNUMXつが定義されていない場合、もうXNUMXつにフォールバックします。 いいえの場合
アルファ式が指定されている場合、不透明な値に評価されます。 クロミナンスがない場合
式が指定されている場合、それらは輝度式に評価されます。
式では、次の変数と関数を使用できます。
N 0から始まる、フィルタリングされたフレームの連続番号。
X
Y 現在のサンプルの座標。
W
H 画像の幅と高さ。
SW
SH 現在フィルタリングされている平面に応じた幅と高さのスケール。 比率です
対応する輝度平面のピクセル数と現在の平面のピクセル数の間。 例えば
YUV4:2:0の場合、値は輝度平面の場合は「1,1」、彩度平面の場合は「0.5,0.5」です。
T 現在のフレームの時間。秒単位で表されます。
p(x、 y)
場所のピクセルの値を返します(x,y)現在の平面の。
lum(x、 y)
場所のピクセルの値を返します(x,y)輝度面の。
cb(x、 y)
場所のピクセルの値を返します(x,y)青の差のコロマ面の。
そのような平面がない場合は0を返します。
cr(x、 y)
場所のピクセルの値を返します(x,y)赤差コロマ面の。
そのような平面がない場合は0を返します。
処方箋、 y)
g(x、 y)
b(x、 y)
場所のピクセルの値を返します(x,y)赤/緑/青のコンポーネント。
そのようなコンポーネントがない場合は0を返します。
alpha(x、 y)
場所のピクセルの値を返します(x,y)アルファ平面の。 ある場合は0を返します
そのような飛行機ではありません。
関数の場合、 x と y エリア外にある場合、値は自動的にクリップされます
近い方の端。
例
・画像を水平方向に反転します。
geq = p(WX \、Y)
・角度「PI / 3」、波長100ピクセルのXNUMX次元正弦波を生成します。
geq=128 + 100*sin(2*(PI/100)*(cos(PI/3)*(X-50*T) + sin(PI/3)*Y)):128:128
・派手な謎めいた動く光を生成します。
nullsrc = s = 256x256、geq =ランダム(1)/hypot(X-cos(N*0.07)*W/2-W/2\,Y-sin(N*0.09)*H/2-H/2)^2*1000000*sin(N*0.02):128:128
・クイックエンボス効果を生成します。
format = gray、geq = lum_expr ='(p(X、Y)+(256-p(X-4、Y-4)))/ 2'
・ピクセル位置に応じてRGBコンポーネントを変更します。
geq = r ='X / W * r(X、Y)':g ='(1-X / W)* g(X、Y)':b ='(HY)/ H * b(X、Y ) '
・入力と同じサイズの放射状グラデーションを作成します( ビネット
フィルター):
geq=lum=255*gauss((X/W-0.5)*3)*gauss((Y/H-0.5)*3)/ガウス(0)/ガウス(0)、format = gray
・別のフィルターのマスクとして使用する線形勾配を作成してから、
オーバーレイ。 この例では、ビデオは上から徐々にぼやけていきます
線形勾配によって定義されるy軸の下部:
ffmpeg -i input.mp4 -filter_complex "geq = lum = 255 *(Y / H)、format = gray [grad]; [0:v] boxblur = 4 [blur]; [blur] [grad] alphamerge [alpha] ; [0:v]αオーバーレイ "output.mp4
卒業生
によってほぼ平坦な領域に時々導入されるバンディングアーティファクトを修正します
8ビットの色深度への切り捨て。 バンドがどこに行くべきか勾配を補間します
であり、それらをディザリングします。
再生専用に設計されています。 非可逆圧縮の前に使用しないでください。
圧縮はディザを失い、バンドを元に戻す傾向があります。
次のパラメータを受け入れます。
力
フィルタが任意のXNUMXピクセルを変更する最大量。 これも
ほぼ平坦な領域を検出するためのしきい値。 許容値の範囲は.51から64です。
デフォルト値は1.2です。 範囲外の値は有効な範囲にクリップされます。
半径
勾配を合わせるための近傍。 半径を大きくすると、グラデーションが滑らかになります。
ただし、フィルターが詳細領域の近くのピクセルを変更するのを防ぎます。
許容値は8〜32です。 デフォルト値は16です。範囲外の値は次のようになります。
有効な範囲にクリップされました。
または、オプションをフラット文字列として指定することもできます。 力[:半径]
例
・3.5の強度と半径8のフィルターを適用します。
gradfun = 3.5:8
・強度を省略して半径を指定します(デフォルト値にフォールバックします)。
gradfun = radius = 8
片割れ
HaldCLUTをビデオストリームに適用します。
最初の入力は処理するビデオストリームで、XNUMX番目の入力はHaldCLUTです。 ハルド
CLUT入力は、単純な画像または完全なビデオストリームにすることができます。
フィルタは次のオプションを受け入れます。
最短
最短の入力が終了したときに強制終了します。 デフォルトは0です。
リピートラスト
ストリームの終了後、最後のCLUTの適用を続行します。 値0は、
CLUTの最後のフレームに達した後にフィルタリングします。 デフォルトは1です。
「haldclut」にも同じ補間オプションがあります lut3d (両方のフィルターは同じものを共有します
内部)。
Hald CLUTの詳細については、Eskil SteenbergのWebサイト(Hald CLUT)を参照してください。
著者)でhttp://www.quelsolaar.com/technology/clut.html>.
ワークフロー 例
停止したCLUTビデオストリーム
さまざまな効果で変更されたアイデンティティHaldCLUTストリームを生成します。
ffmpeg -f lavfi -i B = 8 -vf "hue = H = 2 * PI * t:s = sin(2 * PI * t)+1、curves = cross_process" -t 10 -c:v ffv1 clut.nut
注:ロスレスコーデックを使用していることを確認してください。
次に、「haldclut」と一緒に使用して、ランダムストリームに適用します。
ffmpeg -f lavfi -i mandelbrot -i clut.nut -filter_complex'[0] [1] haldclut' -t 20 mandelclut.mkv
Hald CLUTは、最初の10秒間に適用されます( クラッチナット)、 そうして
そのCLUTストリームの最新の画像は、の残りのフレームに適用されます
「マンデルブロ」ストリーム。
プレビュー付きのHaldCLUT
Hald CLUTは、「Level * Level*Level」のXNUMX乗画像であると想定されています。
「レベル*レベル*レベル」ピクセル。 与えられたHaldCLUTに対して、FFmpegは可能な限り最大のものを選択します
写真の左上から始まる正方形。 残りのパディングピクセル(下または
右)は無視されます。 この領域は、HaldCLUTのプレビューを追加するために使用できます。
通常、次の生成されたHald CLUTは、「haldclut」フィルターによってサポートされます。
ffmpeg -f lavfi -i B = 8 -vf "
pad = iw + 320 [padded_clut];
smptebars = s = 320x256、split [a] [b];
[padded_clut] [a] overlay = W-320:h、curves = color_negative [main];
[メイン][b]overlay = W-320 "-frames:v 1 clut.png
これには、CLUTの効果のオリジナルとプレビューが含まれています。SMPTEカラーバーは
右上に表示され、色の変化によって処理された同じカラーバーの下に表示されます。
次に、このHaldCLUTの効果を次のように視覚化できます。
ffplay input.mkv -vf "movie = clut.png、[in] haldclut"
フリップ
入力ビデオを水平方向に反転します。
たとえば、入力ビデオを水平方向に反転するには、 ffmpeg:
ffmpeg -i in.avi -vf "hflip" out.avi
ヒステク
このフィルターは、フレームごとにグローバルカラーヒストグラム均等化を適用します。
ピクセル強度の範囲が圧縮されたビデオを修正するために使用できます。 The
フィルタは、ピクセル強度を再分配して、全体の分布を均等化します。
強度範囲。 「自動調整コントラストフィルター」と見ることができます。 これ
フィルタは、劣化した、またはキャプチャが不十分なソースビデオを修正する場合にのみ役立ちます。
フィルタは次のオプションを受け入れます。
力
適用する等化の量を決定します。 強度が低下すると、
ピクセル強度の分布は、入力フレームの分布にますます近づいています。
値は[0,1]の範囲の浮動小数点数である必要があり、デフォルトは0.200です。
生成できる最大強度を設定し、出力値をスケーリングします
適切に。 強度は必要に応じて設定する必要があります。そうすれば、強度は次のようになります。
洗い流しを避けるために必要な場合は制限されます。 値は、範囲内の浮動小数点数である必要があります
[0,1]で、デフォルトは0.210です。
アンチバンディング
アンチバンディングレベルを設定します。 有効にすると、フィルターはランダムに輝度を変化させます
ヒストグラムのバンディングを回避するために、ピクセルを少量出力します。 可能な値は次のとおりです
「なし」、「弱い」または「強い」。 デフォルトは「none」です。
ヒストグラム
入力ビデオの色分布ヒストグラムを計算して描画します。
計算されたヒストグラムは、色成分の分布を表したものです。
画像。
フィルタは次のオプションを受け入れます。
モード
ヒストグラムモードを設定します。
次の値を受け入れます。
レベル
画像内の色成分の分布を表示する標準のヒストグラム。
各色成分のカラーグラフを表示します。 Y、U、V、の分布を表示します
現在のフレームの入力形式に応じて、AまたはR、G、Bコンポーネント。 下
各グラフには、色成分スケールメーターが表示されます。
カラー
クロマ値(U / Vカラー配置)をXNUMX次元グラフ(
ベクトルスコープと呼ばれます)。 ベクトルスコープのピクセルが明るいほど、
入力フレームはそのピクセルに対応します(つまり、より多くのピクセルがこのクロマを持ちます
価値)。 Vコンポーネントは、横(X)軸に表示され、左端に表示されます。
辺はV=0で、右端はV=255です。U成分は
垂直(Y)軸に表示され、上部はU = 0を表し、下部は
U=255を表します。
グラフ内の白いピクセルの位置は、
入力クリップのピクセル。 したがって、グラフを使用して色相(色)を読み取ることができます
フレーバー)と彩度(色の色相の優位性)。 の色相として
色が変わり、正方形の周りを移動します。 広場の中央に
彩度はゼロです。これは、対応するピクセルに色がないことを意味します。 の場合
特定の色の量が増加します(他の色は変更されません)
彩度が上がり、インジケーターが正方形の端に向かって移動します。
color2
ベクトルスコープの彩度値。「色」と似ていますが、実際の彩度値は
表示されます。
波形
行/列ごとの色成分グラフ。 行モードでは、左側のグラフ
色成分の値0を表し、右側は値=255を表します。
列モードでは、上面は色成分値= 0を表し、下面は色成分値=XNUMXを表します。
値=255を表します。
デフォルト値は「レベル」です。
レベルの高さ
レベルの高さを「レベル」で設定します。 デフォルト値は200です。許容範囲は[50、2048]です。
スケール_高さ
カラースケールの高さを「レベル」で設定します。 デフォルト値は12です。許容範囲は[0、40]です。
手順
「波形」モードのステップを設定します。 小さい値は、の値の数を見つけるのに役立ちます
同じ輝度が入力行/列に分散されます。 デフォルト値は10です。
許容範囲は[1、255]です。
波形モード
「波形」のモードを設定します。 「行」または「列」のいずれかになります。 デフォルトは「行」です。
波形ミラー
「波形」のミラーリングモードを設定します。 0はミラーリングされていないことを意味し、1はミラーリングされていることを意味します。 ミラーリングされた
モードでは、「行」モードの左側と上部に高い値が表示されます
「列」モードの場合。 デフォルトは0(ミラーリングされていない)です。
ディスプレイモード
「波形」と「レベル」の表示モードを設定します。 次の値を受け入れます。
パレード
「行」波形に色成分の個別のグラフを並べて表示します
「波形」ヒストグラムの「列」波形モードのモードまたは上下
モード。 「レベル」ヒストグラムモードの場合、色ごとのコンポーネントグラフは下に配置されます
お互い。
この表示モードを「波形」ヒストグラムモードで使用すると、色を簡単に見つけることができます
画像の輪郭を比較することにより、画像のハイライトとシャドウをキャストします。
各波形の上部と下部のグラフ。 白、灰色、黒は
正確に等しい量の赤、緑、青の中性領域が特徴です
画像には、幅/高さがほぼ等しいXNUMXつの波形が表示されます。 そうでない場合は、
XNUMXつの波形のレベル調整を行うことで簡単に補正できます。
オーバーレイ
グラフを除いて、「パレード」と同じ情報を表示します
色成分を表すものは、互いに直接重ね合わされます。
「波形」ヒストグラムモードのこの表示モードにより、相対的なものを簡単に見つけることができます
ある色成分の重なり合う領域の相違点または類似点
ニュートラルホワイト、グレー、ブラックなど、同一であると想定されています。
デフォルトは「パレード」です。
Levels_mode
「レベル」のモードを設定します。 「線形」または「対数」のいずれかになります。 デフォルトは「線形」です。
コンポーネント
モード「レベル」に表示するカラーコンポーネントを設定します。 デフォルトは7です。
例
・ヒストグラムの計算と描画:
ffplay -iinput-vfヒストグラム
hqdn3d
これは、高精度/高品質の3Dノイズ除去フィルターです。 画像ノイズの低減を目的としていますが、
滑らかな画像を生成し、静止画像を本当に静止させます。 それは強化する必要があります
圧縮率。
次のオプションのパラメータを受け入れます。
輝度_空間
空間輝度強度を指定する非負の浮動小数点数。 これ
デフォルトは4.0です。
色空間
空間クロマ強度を指定する非負の浮動小数点数。 これ
デフォルトは3.0*輝度_空間/ 4.0。
luma_tmp
輝度の時間的強度を指定する浮動小数点数。 デフォルトは
6.0 *輝度_空間/ 4.0。
クロマ_tmp
コロマの時間的強度を指定する浮動小数点数。 デフォルトは
luma_tmp*色空間/輝度_空間.
本社
ピクセルアート用に設計された高品質の倍率フィルターを適用します。 このフィルターは
もともとマキシムステピンによって作成されました。
次のオプションを受け入れます。
n スケーリング寸法を設定します。「hq2x」の場合は2、「hq3x」の場合は3、「hq4x」の場合は4です。 デフォルトは3です。
hstack
入力動画を水平に積み重ねます。
すべてのストリームは、同じピクセル形式で同じ高さである必要があります。
このフィルターは使用するよりも高速であることに注意してください オーバーレイ と パッド 同じ出力を作成するためのフィルター。
フィルタは次のオプションを受け入れます。
nb_inputs
入力ストリームの数を設定します。 デフォルトは2です。
色相
入力の色相や彩度を変更します。
次のパラメータを受け入れます。
h 色相角を度数として指定します。 式を受け入れ、デフォルト
「0」に。
s [-10,10]の範囲で彩度を指定します。 式を受け入れ、デフォルトで
「1年XNUMX月XNUMX日」。
H 色相角をラジアン数で指定します。 式を受け入れ、デフォルト
「0」に。
b 明るさは[-10,10]の範囲で指定してください。 式を受け入れ、デフォルトで
「0年XNUMX月XNUMX日」。
h と H 相互に排他的であり、同時に指定することはできません。
この b, h, H と s オプション値は、次の定数を含む式です。
n 0から始まる入力フレームのフレーム数
PTS タイムベース単位で表された入力フレームの表示タイムスタンプ
r 入力ビデオのフレームレート、入力フレームレートが不明な場合はNAN
t 秒単位で表されるタイムスタンプ、入力タイムスタンプが不明な場合はNAN
tb 入力ビデオのタイムベース
例
・色相を90度に設定し、彩度を1.0に設定します。
hue = h = 90:s = 1
・同じコマンドですが、色相をラジアンで表現します。
hue = H = PI / 2:s = 1
・色相を回転させ、0秒間に2から1の間で彩度をスイングさせます。
hue = "H = 2 * PI * t:s = sin(2 * PI * t)+1"
・3から始まる0秒のサチュレーションフェードインエフェクトを適用します。
hue = "s = min(t / 3 \、1)"
一般的なフェードイン式は、次のように記述できます。
hue = "s = min(0 \、max((t-START)/ DURATION \、1))"
・3秒から始まる5秒の飽和フェードアウト効果を適用します。
hue = "s = max(0 \、min(1 \、(8-t)/ 3))"
一般的なフェードアウト式は、次のように記述できます。
hue = "s = max(0 \、min(1 \、(START + DURATION-t)/ DURATION))"
コマンド
このフィルターは、次のコマンドをサポートします。
b
s
h
H 入力ビデオの色相および/または彩度および/または明るさを変更します。 The
コマンドは、対応するオプションと同じ構文を受け入れます。
指定された式が無効な場合、現在の値に保持されます。
イデット
ビデオインターレースタイプを検出します。
このフィルターは、入力フレームがインターレース、プログレッシブ、トップ、ボトムのいずれであるかを検出しようとします
最初にフィールド。 また、隣接するフレーム間で繰り返されるフィールドを検出しようとします
(テレシネの兆候)。
単一フレーム検出では、それぞれを分類するときに、すぐ隣接するフレームのみが考慮されます
フレーム。 複数フレーム検出には、以前の分類履歴が組み込まれています
フレーム。
フィルタはこれらのメタデータ値をログに記録します。
シングル.現在のフレーム
シングルフレーム検出を使用して検出された現在のフレームのタイプ。 のXNUMXつ: `` tff''(トップ
フィールドファースト)、「bff」(ボトムフィールドファースト)、「プログレッシブ」、または「未定」
シングル.tff
シングルフレーム検出を使用して最初にトップフィールドとして検出されたフレームの累積数。
複数の.tff
複数フレームを使用して最初にトップフィールドとして検出されたフレームの累積数
検出。
シングル.bff
シングルフレームを使用して最初にボトムフィールドとして検出されたフレームの累積数
検出。
複数の現在のフレーム
複数フレーム検出を使用して検出された現在のフレームのタイプ。 のXNUMXつ: `` tff''(トップ
フィールドファースト)、「bff」(ボトムフィールドファースト)、「プログレッシブ」、または「未定」
複数.bff
複数フレームを使用して最初にボトムフィールドとして検出されたフレームの累積数
検出。
シングルプログレッシブ
シングルフレーム検出を使用してプログレッシブとして検出されたフレームの累積数。
複数のプログレッシブ
複数フレーム検出を使用してプログレッシブとして検出されたフレームの累積数。
単一。未定
単一フレーム検出を使用して分類できなかったフレームの累積数。
複数。未定
複数フレームを使用して分類できなかったフレームの累積数
検出。
repeat.current_frame
現在のフレームのどのフィールドが最後から繰り返されます。 「どちらでもない」のXNUMXつ、
「上」または「下」。
繰り返されます。どちらでもありません
フィールドが繰り返されていないフレームの累積数。
repeat.top
前のフレームのトップからトップフィールドが繰り返されたフレームの累積数
フィールド。
繰り返し。下
前のフレームから繰り返された下部フィールドを持つフレームの累積数
下のフィールド。
フィルタは次のオプションを受け入れます。
intl_thres
インターレースのしきい値を設定します。
prog_thres
プログレッシブしきい値を設定します。
繰り返し回数
繰り返しフィールド検出のしきい値。
人生の半分
統計への特定のフレームの寄与が半分になるまでのフレーム数
(つまり、分類には0.5しか寄与しません)。 デフォルトの0は、
表示されるすべてのフレームには、永久に1.0のフルウェイトが与えられます。
分析_インターレース_フラグ
これが0でない場合、idetは指定されたフレーム数を使用して、
インターレースフラグは正確であり、未決定のフレームはカウントされません。 旗の場合
正確であることが判明した場合は、それ以上の計算なしで使用されます。
不正確であることが判明した場合は、それ以上の計算を行わなくてもクリアされます。 これ
クリーンアップするための低計算方法としてidetフィルターを挿入できます
インターレースフラグ
il
フィールドをデインターリーブまたはインターリーブします。
このフィルターを使用すると、インターレース画像フィールドをインターレース解除せずに処理できます。
デインターリーブは、入力フレームを2つのフィールド(いわゆるハーフ画像)に分割します。 奇数行
出力画像の上半分に移動し、下半分に線を移動します。 あなたはできる
それらを個別に処理(フィルタリング)してから、再インターリーブします。
フィルタは次のオプションを受け入れます。
luma_mode、 l
chroma_mode、 c
alpha_mode、 a
利用可能な値 ルマモード, クロマモード と アルファモード には次の値があります:
なし
何もしない。
デインターリーブ、 d
フィールドをデインターリーブし、上下に配置します。
間を空ける、 i
フィールドをインターリーブします。 デインターリーブの効果を逆にします。
デフォルト値は「none」です。
luma_swap、 ls
chroma_swap、 cs
alpha_swap、 as
ルーマ/クロマ/アルファフィールドを交換します。 偶数行と奇数行を交換します。 デフォルト値は0です。
膨らませる
ビデオに膨張効果を適用します。
このフィルターは、ピクセルを ローカル(3x3)のみを考慮した平均
ピクセルよりも高い値。
次のオプションを受け入れます。
閾値0
閾値1
閾値2
閾値3
各プレーンの最大変更を制限します。デフォルトは65535です。0の場合、プレーンは残ります。
変更なし。
インターレース
プログレッシブコンテンツからのシンプルなインターレースフィルター。 これは上部(または下部)をインターリーブします
奇数フレームからのラインと偶数フレームからの下位(または上位)ライン、フレームレートの半分
画像の高さを維持します。
オリジナルオリジナルニューフレーム
フレーム'j'フレーム'j+ 1'(tff)
========== =========== ==================
0行目-------------------->フレーム'j'0行目
1行目1行目---->フレーム'j+1'1行目
2行目--------------------->フレーム'j'2行目
3行目3行目---->フレーム'j+1'3行目
.........。
新しいフレーム+1は、フレーム'j+2'およびフレーム'j+3'などによって生成されます。
次のオプションのパラメータを受け入れます。
スキャン
これにより、インターレースフレームが偶数(tff-デフォルト)から取得されるか、それともデフォルトから取得されるかが決まります。
プログレッシブフレームの奇数(bff)行。
ローパス
Twitterのインターレースを回避するために、垂直ローパスフィルターを有効(デフォルト)または無効にします
モアレパターンを減らします。
ケルンデイント
DonaldGraftのアダプティブカーネルインターレース解除を適用して入力ビデオをインターレース解除します。 取り組む
プログレッシブフレームを生成するためのビデオのインターレース部分。
受け入れられるパラメータの説明は次のとおりです。
脱穀
ピクセルかどうかを判断するときに、フィルターの許容誤差に影響を与えるしきい値を設定します
行を処理する必要があります。 [0,255]の範囲の整数である必要があり、デフォルトは10です。
値が0の場合、すべてのピクセルにプロセスが適用されます。
地図 1に設定すると、しきい値を超えるピクセルを白にペイントします。デフォルトは0です。
注文
フィールドの順序を設定します。 1に設定されている場合はフィールドを交換し、0の場合はフィールドをそのままにします。デフォルトは0です。
シャープ
1に設定されている場合は、追加のシャープネスを有効にします。デフォルトは0です。
双方向
1に設定されている場合は、双方向シャープニングを有効にします。デフォルトは0です。
例
・デフォルト値を適用します。
kerndeint=thresh=10:map=0:order=0:sharp=0:twoway=0
・追加の研ぎを有効にします。
kerndeint = Sharp = 1
・処理されたピクセルを白でペイントします。
kerndeint = map = 1
レンズ補正
ラジアルレンズの歪みを修正する
このフィルターは、
広角レンズ、それによって画像を再修正します。 適切なパラメータを見つけるには、
たとえば、opencvの一部として、または単に試行錯誤として利用可能なツールを使用します。 使用するには
opencvは、opencvソースからのキャリブレーションサンプル(samples / cppの下)を使用して抽出します
結果の行列からのk1およびk2係数。
事実上、同じフィルターがオープンソースツールのKritaと
KDEプロジェクトのDigikam。
また、 ビネット レンズエラーを補正するためにも使用できるフィルター、これ
フィルタは画像の歪みを補正しますが、 ビネット 明るさを補正します
配布なので、場合によっては両方のフィルターを一緒に使用することもできますが、
注文の面倒を見る必要があります。つまり、ケラレを前に適用するか、
レンズ補正後。
オプション
フィルタは次のオプションを受け入れます。
cx 画像の焦点の相対的なx座標、それによって画像の中心
ねじれ。 この値の範囲は[0,1]で、画像の端数として表されます
幅。
cy 画像の焦点の相対的なy座標、それによって画像の中心
ねじれ。 この値の範囲は[0,1]で、画像の端数として表されます
高さ。
k1 二次補正項の係数。 0.5は修正なしを意味します。
k2 二次二次補正項の係数。 0.5は修正なしを意味します。
補正を生成する式は次のとおりです。
r_src = r_tgt *(1 + k1 *(r_tgt / r_0)^ 2 + k2 *(r_tgt / r_0)^ 4)
コラボレー r_0 画像の対角線の半分であり、 r_src と r_tgt からの距離です
それぞれソース画像とターゲット画像の焦点。
lut3d
3DLUTを入力ビデオに適用します。
フィルタは次のオプションを受け入れます。
file
3DLUTファイル名を設定します。
現在サポートされている形式:
3dl アフターエフェクト
キューブ
イリダス
DAT ダヴィンチ
m3d パンドラ
インタープ
補間モードを選択します。
使用可能な値は次のとおりです。
最寄り
最も近い定義されたポイントからの値を使用します。
トリリニア
キューブを定義する8つのポイントを使用して値を補間します。
四面体
四面体を使用して値を補間します。
lut、 lutrgb、 ルチュフ
各ピクセルコンポーネントの入力値を出力値にバインドするためのルックアップテーブルを計算します。
入力ビデオに適用します。
ルチュフ ルックアップテーブルをYUV入力ビデオに適用します。 ルターグブ RGB入力ビデオに。
これらのフィルターは、次のパラメーターを受け入れます。
c0 最初のピクセルコンポーネント式を設定します
c1 XNUMX番目のピクセルコンポーネント式を設定します
c2 XNUMX番目のピクセルコンポーネント式を設定します
c3 XNUMX番目のピクセルコンポーネント式を設定し、アルファコンポーネントに対応します
r 赤のコンポーネント式を設定します
g 緑のコンポーネント式を設定します
b 青のコンポーネント式を設定します
a アルファ成分式
y Y/輝度成分式を設定する
u U/Cbコンポーネント式を設定します
v V/Crコンポーネント式を設定します
それらのそれぞれは、のルックアップテーブルを計算するために使用する式を指定します
対応するピクセルコンポーネント値。
それぞれに関連付けられている正確なコンポーネント c* オプションは、入力の形式によって異なります。
この 読みます フィルタには、入力にYUVまたはRGBピクセル形式が必要です。 ルターグブ RGBが必要
入力のピクセル形式、および ルチュフ YUVが必要です。
式には、次の定数と関数を含めることができます。
w
h 入力の幅と高さ。
ヴァル ピクセルコンポーネントの入力値。
クリップバル
にクリップされた入力値 ミンバル-最大値
最大値
ピクセルコンポーネントの最大値。
ミンバル
ピクセルコンポーネントの最小値。
ネガバル
にクリップされたピクセルコンポーネント値の否定値 ミンバル-最大値 範囲;
「maxval-clipval+minval」という表現に対応します。
クリップ(val)
の計算値 ヴァル、にクリップされます ミンバル-最大値
gammaval(gamma)
ピクセルコンポーネント値の計算されたガンマ補正値。
ミンバル-最大値 範囲。 式に対応します
"pow((clipval-minval)/(maxval-minval)\、ガンマ)*(maxval-minval)+ minval "
すべての式のデフォルトは「val」です。
例
・入力ビデオを無効にします。
lutrgb = "r = maxval + minval-val:g = maxval + minval-val:b = maxval + minval-val"
lutyuv = "y = maxval + minval-val:u = maxval + minval-val:v = maxval + minval-val"
上記は次と同じです。
lutrgb = "r = negval:g = negval:b = negval"
lutyuv = "y = negval:u = negval:v = negval"
・輝度を無効にする:
lutyuv = y = negval
・クロマコンポーネントを削除し、ビデオをグレートーン画像に変換します。
lutyuv = "u = 128:v = 128"
・輝度燃焼効果を適用します。
lutyuv = "y = 2 * val"
・緑と青のコンポーネントを削除します。
lutrgb = "g = 0:b = 0"
・入力に一定のアルファチャネル値を設定します。
format = rgba、lutrgb = a = "maxval-minval / 2"
・輝度ガンマを0.5倍に修正します。
lutyuv = y = gammaval(0.5)
・輝度の最下位ビットを破棄します。
lutyuv = y ='bitand(val、128 + 64 + 32)'
マージプレーン
複数のビデオストリームからのカラーチャネルコンポーネントをマージします。
フィルタは最大4つの入力ストリームを受け入れ、選択した入力プレーンを出力にマージします
ビデオ。
このフィルターは、次のオプションを受け入れます。
マッピング
入力を出力平面マッピングに設定します。 デフォルトは0です。
マッピングはビットマップとして指定されます。 XNUMX進数で指定する必要があります
0xAa [Bb[Cc[Dd]]]の形式で。 「Aa」は、の最初の平面のマッピングを表します
出力ストリーム。 「A」は使用する入力ストリームの数(0から3)を設定し、「a」は使用する入力ストリームの数を設定します。
使用する対応する入力のプレーン番号(0から3)。 残りの
マッピングも同様です。「Bb」は、出力ストリームのXNUMX番目のプレーンのマッピングを表します。
「Cc」は出力ストリームの第XNUMX平面のマッピングを表し、「Dd」は出力ストリームのXNUMX番目の平面を表します。
出力ストリームのXNUMX番目の平面のマッピング。
形式でアーカイブしたプロジェクトを保存します.
出力ピクセルフォーマットを設定します。 デフォルトは「yuva444p」です。
例
・同じ幅と高さのXNUMXつの灰色のビデオストリームを単一のビデオストリームにマージします。
[a0][a1][a2]mergeplanes=0x001020:yuv444p
・1番目のyuv444pストリームと2番目の灰色のビデオストリームをyuva444pビデオストリームにマージします。
[a0][a1]mergeplanes=0x00010210:yuva444p
・yuva444pストリームでYプレーンとAプレーンを交換します。
format = yuva444p、mergeplanes = 0x03010200:yuva444p
・yuv420pストリームでUプレーンとVプレーンを交換します。
format = yuv420p、mergeplanes = 0x000201:yuv420p
・rgb24クリップをyuv444pにキャストします。
format = rgb24、mergeplanes = 0x000102:yuv444p
マクデイント
動き補償インターレース解除を適用します。
入力としてフレームごとに1つのフィールドが必要であるため、yadif=3/XNUMXまたは
同等。
このフィルターは、次のオプションを受け入れます。
モード
インターレース解除モードを設定します。
次のいずれかの値を受け入れます。
速いです
ミディアム
遅く
反復モーションエスティメーションを使用する
特別に遅い
ような 遅く、ただし、複数の参照フレームを使用します。
デフォルト値は 速いです.
パリティ
入力ビデオに想定される画像フィールドパリティを設定します。 それはのXNUMXつでなければなりません
次の値:
0, tff
最初にトップフィールドを想定
1, BFF
最初に下部フィールドを想定します
デフォルト値は BFF.
qp 内部エンコーダーが使用するブロックごとの量子化パラメーター(QP)を設定します。
値を大きくすると、モーションベクトルフィールドは滑らかになりますが、最適性は低くなります。
個々のベクトル。 デフォルト値は1です。
mpデシメート
フレームを減らすために、前のフレームと大きく異ならないフレームをドロップします
レート。
このフィルターの主な用途は、非常に低ビットレートのエンコーディング(ダイヤルアップ経由のストリーミングなど)です。
モデム)、しかし理論的には逆テレシネされた映画を修正するために使用することができます
間違って。
受け入れられるオプションの説明は次のとおりです。
マックス ドロップできる連続フレームの最大数を設定します(正の場合)、または
ドロップされたフレーム間の最小間隔(負の場合)。 値が0の場合、
フレームは、前に連続してドロップされたフレームの数に関係なくドロップされます。
デフォルト値は0です。
hi
lo
燕尾服
ドロップしきい値を設定します。
の値 hi と lo 8x8ピクセルブロック用で、実際のピクセル値を表します
差があるため、しきい値64は、各ピクセルの差の1単位に対応します。
または、同じものがブロック全体に異なって広がります。
8x8ブロックの差がしきい値を超えていない場合、フレームはドロップの候補になります
of hi、および 燕尾服 ブロック(1は画像全体を意味します)は、
のしきい値 lo.
のデフォルト値 hi は64*12、デフォルト値は lo は64*5で、デフォルト値は
燕尾服 0.33です。
否定する
入力ビデオを無効にします。
入力に整数を受け入れます。 ゼロ以外の場合、アルファコンポーネントを無効にします(使用可能な場合)。
入力のデフォルト値は0です。
ノーフォーマット
次への入力に指定されたピクセル形式を使用しないようにlibavfilterを強制します
フィルタ。
次のパラメータを受け入れます。
pix_fmts
'|'で区切られたピクセル形式名のリスト(apix_fmts = yuv420p | monow | rgb24 "など)。
例
・libavfilterに次とは異なる形式を使用するように強制します yuv420p vflipへの入力用
フィルタ:
noformat = pix_fmts = yuv420p、vflip
・入力ビデオをリストに含まれていない形式のいずれかに変換します。
noformat = yuv420p | yuv444p | yuv410p
ノイズ
ビデオ入力フレームにノイズを追加します。
フィルタは次のオプションを受け入れます。
すべてのシード
c0_seed
c1_seed
c2_seed
c3_seed
特定のピクセルコンポーネントまたはすべてのピクセルコンポーネントのノイズシードを設定する
すべてのシード。 デフォルト値は123457です。
all_strength、 全部
c0_strength、 c0s
c1_strength、 c1s
c2_strength、 c2s
c3_strength、 c3s
場合に応じて、特定のピクセルコンポーネントまたはすべてのピクセルコンポーネントのノイズ強度を設定します
すべての強さ。 デフォルト値は0です。許容範囲は[0、100]です。
all_flags、 すべて
c0_flags、 c0f
c1_flags、 c1f
c2_flags、 c2f
c3_flags、 c3f
ピクセルコンポーネントフラグを設定するか、すべてのコンポーネントにフラグを設定する場合 すべてのフラグ。 利用可能
コンポーネントフラグの値は次のとおりです。
a 平均化された時間的ノイズ(スムーズ)
p ランダムノイズを(半)規則的なパターンと混合する
t 一時的なノイズ(フレーム間でノイズパターンが変化する)
u 均一ノイズ(それ以外の場合はガウス)
例
入力ビデオに時間的で均一なノイズを追加します。
noise = alls = 20:allf = t + u
ヌル
ビデオソースを変更せずに出力に渡します。
ocv
libopencvを使用してビデオ変換を適用します。
このフィルターを有効にするには、libopencvライブラリーとヘッダーをインストールし、FFmpegを次のように構成します。
「--enable-libopencv」。
次のパラメータを受け入れます。
フィルター名
適用するlibopencvフィルターの名前。
フィルタパラメータ
libopencvフィルターに渡すパラメーター。 指定しない場合、デフォルト値
想定されます。
より正確な情報については、libopencvの公式ドキュメントを参照してください。
<http://docs.opencv.org/master/modules/imgproc/doc/filtering.html>
いくつかのlibopencvフィルターがサポートされています。 次のサブセクションを参照してください。
膨張する
特定の構造化要素を使用して画像を拡張します。 libopencvに対応します
関数「cvDilate」。
次のパラメータを受け入れます。 構造体エル|nb_iterations.
構造体エル 構造化要素を表し、構文は次のとおりです。
コルズx行+アンカー_xxアンカー_y/形状
コルズ と 行 構造化要素の列と行の数を表し、
アンカー_x と アンカー_y アンカーポイント、および 形状 構造化要素の形状。
形状 「rect」、「cross」、「ellipse」、または「custom」である必要があります。
の値が 形状 「カスタム」の場合は、その後に次の形式の文字列を続ける必要があります
"=ファイル名"。名前のファイル ファイル名 それぞれがバイナリイメージを表すと想定されます
明るいピクセルに対応する印刷可能な文字。 カスタム時 形状 使用されている、 コルズ と
行 無視され、代わりに、読み取られたファイルの数または列と行が想定されます。
のデフォルト値 構造体エル 「3x3+0x0/rect」です。
nb_iterations 変換が画像に適用される回数を指定し、
デフォルトは1です。
いくつかの例:
#デフォルト値を使用
ocv = dilate
#5x5のクロスを持つ構造化要素を使用して拡張し、XNUMX回繰り返します
ocv=filter_name=dilate:filter_params=5x5+2x2/cross|2
#ファイルdiamond.shapeから形状を読み取り、XNUMX回繰り返します。
#ファイルdiamond.shapeには、次のような文字のパターンが含まれている可能性があります
#*
#***
#*****
#***
#*
#指定された列と行は無視されます
#しかし、アンカーポイントの座標は
ocv=dilate:0x0+2x2/custom=diamond.shape|2
浸食する
特定の構造化要素を使用して画像を侵食します。 libopencvに対応します
関数「cvErode」。
次のパラメータを受け入れます。 構造体エル:nb_iterations、と同じ構文とセマンティクス
膨張する フィルタ。
スムーズ
入力ビデオをスムーズにします。
フィルタは次のパラメータを取ります。 type|param1|param2|param3|param4.
type 適用するスムーズフィルターのタイプであり、次のいずれかの値である必要があります。
「blur」、「blur_no_scale」、「median」、「gaussian」、または「bilateral」。 デフォルト値は
「ガウス」。
の意味 param1, param2, param3, param4 滑らかなタイプによって異なります。 param1 と
param2 整数の正の値または0を受け入れます。 param3 と param4 浮動小数点を受け入れる
値。
のデフォルト値 param1 は3です。他のパラメータのデフォルト値は0です。
これらのパラメーターは、libopencv関数に割り当てられたパラメーターに対応します。
「cvSmooth」。
オーバーレイ
XNUMXつのビデオを別のビデオの上にオーバーレイします。
XNUMXつの入力を取り、XNUMXつの出力を持ちます。 最初の入力は、「メイン」ビデオです。
XNUMX番目の入力がオーバーレイされます。
次のパラメータを受け入れます。
受け入れられるオプションの説明は次のとおりです。
x
y メインにオーバーレイされたビデオのx座標とy座標の式を設定します
ビデオ。 デフォルト値は、両方の式で「0」です。 式が無効な場合、
大きな値に設定されています(つまり、オーバーレイは
出力表示領域)。
eof_action
二次入力でEOFが検出されたときに実行するアクション。 のいずれかを受け入れます
次の値:
繰り返す
最後のフレームを繰り返します(デフォルト)。
エンドオール
両方のストリームを終了します。
パス
メイン入力を通過させます。
評価する
の式が x, y 評価されます。
次の値を受け入れます。
INIT
フィルタの初期化中またはコマンド時にXNUMX回だけ式を評価します
処理されます
フレーム
着信フレームごとに式を評価する
デフォルト値は フレーム.
最短
1に設定すると、最短の入力が終了したときに出力を強制的に終了します。 デフォルト
値は0です。
形式でアーカイブしたプロジェクトを保存します.
出力ビデオのフォーマットを設定します。
次の値を受け入れます。
yuv420
YUV420出力を強制します
yuv422
YUV422出力を強制します
yuv444
YUV444出力を強制します
RGB RGB出力を強制します
デフォルト値は yuv420.
RGB (廃止予定)
1に設定すると、フィルターはRGB色空間の入力を受け入れるように強制されます。 デフォルト値
は0です。このオプションは非推奨です。使用してください 形式でアーカイブしたプロジェクトを保存します. を代わりにお使いください。
リピートラスト
1に設定されている場合、フィルターに最後のオーバーレイフレームをメイン入力の上に描画するように強制します。
ストリームの終わり。 値0は、この動作を無効にします。 デフォルト値は1です。
この x, y 式には、次のパラメーターを含めることができます。
main_w、 W
main_h、 H
主な入力の幅と高さ。
overlay_w、 w
overlay_h、 h
オーバーレイ入力の幅と高さ。
x
y の計算値 x と y。 それらは、新しいフレームごとに評価されます。
ひサブ
対サブ
出力フォーマットの水平および垂直クロマサブサンプル値。 たとえば
ピクセルフォーマット「yuv422p」 ひサブ 2とは 対サブ 1です。
n 0から始まる入力フレームの数
投稿する 入力フレームのファイル内の位置、不明な場合はNAN
t 秒単位で表されるタイムスタンプ。 入力タイムスタンプが不明な場合はNANです。
なお、 n, 投稿する, t 変数は、評価が行われたときにのみ使用できます 以下のために フレーム,
いつNANに評価されます 評価する に設定されています INIT.
フレームはタイムスタンプ順に各入力ビデオから取得されることに注意してください。
初期タイムスタンプは異なります。XNUMXつの入力を
setpts = PTS-STARTPTS 例のように、同じゼロタイムスタンプで開始するようにフィルタリングします
映画 フィルタは行います。
より多くのオーバーレイを連鎖させることができますが、そのようなアプローチの効率をテストする必要があります。
コマンド
このフィルターは、次のコマンドをサポートします。
x
y オーバーレイ入力のxとyを変更します。 このコマンドは、
対応するオプション。
指定された式が無効な場合、現在の値に保持されます。
例
・メインビデオの右下隅から10ピクセルでオーバーレイを描画します。
overlay = main_w-overlay_w-10:main_h-overlay_h-10
名前付きオプションを使用すると、上記の例は次のようになります。
overlay = x = main_w-overlay_w-10:y = main_h-overlay_h-10
・入力の左下隅に、を使用して透明なPNGロゴを挿入します。 ffmpeg
「-filter_complex」オプションを備えたツール:
ffmpeg -i input -i logo -filter_complex'overlay = 10:main_h-overlay_h-10' output
・2つの異なる透明なPNGロゴ(右下隅のXNUMX番目のロゴ)を使用して挿入します
ffmpeg ツール:
ffmpeg -i input -i logo1 -i logo2 -filter_complex'overlay = x = 10:y = Hh-10、overlay = x = Ww-10:y=Hh-10'出力
・メインビデオの上に透明なカラーレイヤーを追加します。 「WxH」は、のサイズを指定する必要があります
オーバーレイフィルターへの主な入力:
[メール保護]:size=WxH[以上]; [in][over] オーバーレイ [out]
・元のビデオとフィルターされたバージョン(ここではデシェイクフィルター付き)を並べて再生します
を使用する側 再生する ツール:
ffplay input.avi -vf'split [a] [b]; [a] pad = iw * 2:ih [src]; [b] deshake [filt]; [src] [filt] overlay = w '
上記のコマンドは次と同じです。
ffplay input.avi -vf'split [b]、pad = iw * 2 [src]、[b] deshake、[src] overlay = w'
・画面の左上から右上にスライドオーバーレイが表示されるようにします
時間2から開始:
overlay = x ='if(gte(t、2)、-w +(t-2)* 20、NAN)':y = 0
・XNUMXつの入力ビデオを並べて出力を作成します。
ffmpeg -i left.avi -i right.avi -filter_complex "
nullsrc = size =200x100[背景];
[0:v] setpts = PTS-STARTPTS、scale =100x100[左];
[1:v] setpts = PTS-STARTPTS、scale =100x100[右];
[背景][左]overlay= shortest =1[背景+左];
[背景+左][右]overlay= shortest = 1:x =100[左+右]
"
・セクションにデロゴフィルターを適用して、ビデオの10〜20秒をマスクします
ffmpeg -i test.avi -codec:v:0 wmv2 -ar 11025 -b:v 9000k
-vf '[in]split[split_main][split_delogo];[split_delogo]trim=start=360:end=371,delogo=0:0:640:480[delogoed];[split_main][delogoed]overlay=eof_action=pass[out]'
マスクされた.avi
・カスケードで複数のオーバーレイをチェーンします。
nullsrc = s = 200x200 [bg];
testsrc=s=100x100, split=4 [in0][in1][in2][in3];
[in0] lutrgb = r = 0、[bg] overlay = 0:0 [mid0];
[in1] lutrgb = g = 0、[mid0] overlay = 100:0 [mid1];
[in2] lutrgb = b = 0、[mid1] overlay = 0:100 [mid2];
[in3] null、[mid2] overlay = 100:100 [out0]
騒音
オーバーコンプリートウェーブレットデノイザーを適用します。
フィルタは次のオプションを受け入れます。
深さ
深さを設定します。
深度値を大きくすると、低周波数成分のノイズが除去されますが、速度は低下します。
フィルタリング。
8〜16の範囲のintである必要があり、デフォルトは8です。
luma_strength、 ls
輝度強度を設定します。
0〜1000の範囲のdouble値である必要があり、デフォルトは1.0です。
chroma_strength、 cs
コロマ強度を設定します。
0〜1000の範囲のdouble値である必要があり、デフォルトは1.0です。
パッド
入力画像にパディングを追加し、元の入力を提供された場所に配置します x, y
座標。
次のパラメータを受け入れます。
幅、 w
高さ、 h
パディングを追加した出力画像のサイズの式を指定します。 の場合
の値 幅 or 高さ が0の場合、対応する入力サイズが出力に使用されます。
この 幅 式は、によって設定された値を参照できます 高さ 表現、および副
逆もまた同様です。
のデフォルト値 幅 と 高さ 0です。
x
y 入力画像をパディングされた領域内に配置するためのオフセットを指定します。
出力画像の左上の境界線に移動します。
この x 式は、によって設定された値を参照できます y 式、およびその逆。
のデフォルト値 x と y 0です。
カラー
パディングされた領域の色を指定します。 このオプションの構文については、「色」を確認してください
ffmpeg-utilsマニュアルのセクション。
のデフォルト値 カラー 「黒」です。
の値 幅, 高さ, x, y オプションは、以下を含む式です。
定数:
in_w
in_h
入力ビデオの幅と高さ。
iw
ih これらはと同じです in_w と in_h.
アウト_w
アウト_h
出力の幅と高さ(パディングされた領域のサイズ)、 幅
と 高さ 式。
ow
oh これらはと同じです アウト_w と アウト_h.
x
y によって指定されたxおよびyオフセット x と y 式、またはまだの場合はNAN
指定。
a と同じ iw / ih
sar 入力サンプルのアスペクト比
与える 入力ディスプレイのアスペクト比は、(iw / ih)* sar
ひサブ
対サブ
水平および垂直のクロマサブサンプル値。 たとえば、ピクセル形式の場合
「yuv422p」 ひサブ 2とは 対サブ 1です。
例
・入力ビデオに「紫」の色のパディングを追加します。 出力ビデオサイズは
640x480で、入力ビデオの左上隅が列0、行40に配置されます。
pad = 640:480:0:40:violet
上記の例は、次のコマンドと同等です。
pad = width = 640:height = 480:x = 0:y = 40:color = violet
・入力をパディングして、寸法が3/2増加した出力を取得し、入力を配置します
パッド入りエリアの中央のビデオ:
pad="3/2*iw:3/2*ih:(ow-iw)/2:(oh-ih)/2"
・入力をパディングして、サイズが
幅と高さを入力し、入力ビデオをパディングされた領域の中央に配置します。
pad = "max(iw \、ih):ow:(ow-iw)/ 2:(oh-ih)/ 2"
・入力をパディングして、16:9の最終的なw/h比を取得します。
pad = "ih * 16/9:ih:(ow-iw)/ 2:(oh-ih)/ 2"
・アナモルフィックビデオの場合、出力表示アスペクトを正しく設定するために、
使用する必要があります sar 式では、関係に従って:
(ih * X / ih)* sar = output_dar
X = 出力_dar / sar
したがって、前の例を次のように変更する必要があります。
pad = "ih * 16/9 / sar:ih:(ow-iw)/ 2:(oh-ih)/ 2"
・出力サイズをXNUMX倍にし、入力ビデオを右下隅に配置します。
出力パッド領域:
pad = "2 * iw:2 * ih:ow-iw:oh-ih"
パレットゲン
ビデオストリーム全体に対してXNUMXつのパレットを生成します。
次のオプションを受け入れます。
最大色数
パレットで量子化する色の最大数を設定します。 注:パレットは
まだ256色が含まれています。 未使用のパレットエントリは黒になります。
reserved_transparent
最大255色のパレットを作成し、最後のパレットを透明度のために予約します。
透明色を予約すると、GIFの最適化に役立ちます。 設定されていない場合、
パレットの最大色は256色になります。おそらくこのオプションを無効にする必要があります
スタンドアロンイメージの場合。 デフォルトで設定されます。
統計モード
統計モードを設定します。
次の値を受け入れます。
フル
フルフレームヒストグラムを計算します。
差分
前のフレームと異なる部分のヒストグラムのみを計算します。 これはかもしれません
次の場合は、入力の可動部分をより重要視することに関連します。
背景は静的です。
デフォルト値は フル.
フィルタは、フレームメタデータ "lavfi.color_quant_ratio"( "nb_color_in /
nb_color_out ")これを使用して、の色の量子化の程度を評価できます。
パレット。 この情報は、 info ロギングレベル。
例
・を使用して、特定のビデオの代表的なパレットを生成します ffmpeg:
ffmpeg -i input.mkv-vfパレットゲンpalette.png
パレット使用
パレットを使用して、入力ビデオストリームをダウンサンプリングします。
フィルタは256つの入力を取ります:XNUMXつのビデオストリームとパレット。 パレットはXNUMXでなければなりません
ピクセル画像。
次のオプションを受け入れます。
ディザ
ディザリングモードを選択します。 使用可能なアルゴリズムは次のとおりです。
バイエル
配列ディザリング8x8バイエル(決定論的)
ヘックバート
1982年にPaulHeckbertによって定義されたディザリング(単純な誤差拡散)。 ノート:
このディザリングは「間違っている」と見なされることがあり、参照として含まれています。
フロイドスタインバーグ
フロイドとステインバーグのディザリング(誤差拡散)
sierra2
フランキーシエラディザリングv2(誤差拡散)
シエラ2_4a
フランキーシエラディザリングv2「ライト」(誤差拡散)
デフォルトは シエラ2_4a.
ベイヤースケール
日時 バイエル ディザリングが選択されている場合、このオプションはパターンのスケールを定義します(方法
多くのハッチングパターンが表示されます)。 低い値は、より目に見えるパターンを意味します
バンディングが少なく、値が高いほど、バンディングが多くなりますが、パターンが見えにくくなります。
オプションは、[0,5]の範囲の整数値である必要があります。 デフォルトは 2.
差分モード
設定されている場合は、処理するゾーンを定義します
長方形
変化する長方形のみが再処理されます。 これはGIFに似ています
トリミング/オフセット圧縮メカニズム。 このオプションは、次の場合に速度を上げるのに役立ちます。
画像の一部のみが変更されており、範囲を制限するなどのユースケースがあります
エラー拡散の ディザ 移動するシーンの境界となる長方形に(
シーンがあまり変化しない場合は、より決定論的な出力につながります。
その結果、移動ノイズが少なくなり、GIF圧縮が向上します)。
デフォルトは なし.
例
・パレットを使用する(たとえば、 パレットゲン)を使用してGIFをエンコードする ffmpeg:
ffmpeg -i input.mkv-iパレット.png-lavfiパレット使用output.gif
視点
画面に対して垂直に記録されていないビデオの正しい視点。
受け入れられるパラメータの説明は次のとおりです。
x0
y0
x1
y1
x2
y2
x3
y3 左上、右上、左下、右下の座標式を設定します
コーナー。 デフォルト値は「0:0:W:0:0:H:W:H」で、パースペクティブはそのまま残ります
変更なし。 「センス」オプションが「ソース」に設定されている場合、指定されたポイントは
目的地の隅に送られます。 「センス」オプションがに設定されている場合
「宛先」の場合、ソースのコーナーが指定された場所に送信されます
座標。
式は次の変数を使用できます。
W
H ビデオフレームの幅と高さ。
補間
遠近法補正の補間を設定します。
次の値を受け入れます。
線形
キュービック
デフォルト値は 線形.
センス
座標オプションの解釈を設定します。
次の値を受け入れます。
0, source
指定された座標で指定されたソース内のポイントを、
目的地。
1, デスティネーション
ソースのコーナーを、で指定された宛先のポイントに送信します。
与えられた座標。
デフォルト値は source.
相
フィールドの順序が変わるように、インターレースビデオをXNUMXフィールド時間遅らせます。
使用目的は、反対のフィールドでキャプチャされたPALムービーを修正することです。
フィルムからビデオへの転送を注文します。
受け入れられるパラメータの説明は次のとおりです。
モード
フェーズモードを設定します。
次の値を受け入れます。
t フィールドオーダーを上からキャプチャし、下から転送します。 フィルタは遅延します
下のフィールド。
b フィールドオーダーを最下位からキャプチャし、最上位に転送します。 フィルターはトップを遅らせます
フィールド。
p 同じフィールド順序でキャプチャして転送します。 このモードは、
参照する他のオプションのドキュメントですが、実際にそれを選択した場合は、
フィルタは忠実に何もしません。
a フィールドフラグによって自動的に決定されたフィールドの順序をキャプチャし、反対に転送します。
フィルタは中から選択します t と b フィールドフラグを使用したフレームごとのモード。 もしも
フィールド情報が利用できない場合、これは次のように機能します u.
u 未知または変化するものをキャプチャし、反対に転送します。 フィルタは中から選択します t と b 上の
画像を分析し、代替案を選択することにより、フレームごとに
フィールド間の最適な一致を生成します。
T トップファーストでキャプチャし、不明または変動する転送。 フィルタは中から選択します t と p
画像解析を使用します。
B ボトムファーストでキャプチャし、不明または変化するものを転送します。 フィルタは中から選択します b と p
画像解析を使用します。
A フィールドフラグによって決定されたキャプチャ、不明または変動する転送。 フィルタ選択
間で t, b と p フィールドフラグと画像分析を使用します。 フィールド情報がない場合
利用可能であれば、これは次のように機能します U。 これがデフォルトのモードです。
U 不明または変動するキャプチャと転送の両方。 フィルタは中から選択します t, b と p
画像解析のみを使用します。
ピクデステスト
ピクセルフォーマット記述子テストフィルター。主に内部テストに役立ちます。 出力ビデオ
入力ビデオと同じである必要があります。
例:
format = monow、pixdesctest
モノホワイトピクセルフォーマット記述子の定義をテストするために使用できます。
pp
libpostprocを使用して、指定された後処理サブフィルターのチェーンを有効にします。 このライブラリ
GPLビルド( "--enable-gpl")で自動的に選択される必要があります。 サブフィルターは
'/'で区切られ、'-'を前に付けることで無効にできます。 各サブフィルターといくつかのオプション
交換可能に使用できる短い名前と長い名前があります。つまり、dr/deringは
同じ。
フィルタは次のオプションを受け入れます。
サブフィルター
後処理サブフィルター文字列を設定します。
すべてのサブフィルターは、スコープを決定するための共通のオプションを共有しています。
a / autoq
このサブフィルターの品質コマンドを尊重します。
c / chrom
クロミナンスフィルタリングも行います(デフォルト)。
y / nochrom
ルミナンスフィルタリングのみを実行します(クロミナンスは実行しません)。
n / noluma
クロミナンスフィルタリングのみを実行します(ルミナンスなし)。
これらのオプションは、サブフィルター名の後に「|」で区切って追加できます。
使用可能なサブフィルターは次のとおりです。
hb / hdeblock [| Difference [| flatness]]
水平非ブロックフィルター
違い
値が大きいほど非ブロック化が多いことを意味する差分係数(デフォルト:32)。
平坦度
平坦度のしきい値。値が小さいほど非ブロック化が多くなります(デフォルト:39)。
vb / vdeblock [| Difference [| flatness]]
垂直非ブロックフィルター
違い
値が大きいほど非ブロック化が多いことを意味する差分係数(デフォルト:32)。
平坦度
平坦度のしきい値。値が小さいほど非ブロック化が多くなります(デフォルト:39)。
ha / hadeblock [| Difference [| flatness]]
正確な水平デブロッキングフィルター
違い
値が大きいほど非ブロック化が多いことを意味する差分係数(デフォルト:32)。
平坦度
平坦度のしきい値。値が小さいほど非ブロック化が多くなります(デフォルト:39)。
va / vadeblock [| difference [| flatness]]
正確な垂直非ブロックフィルター
違い
値が大きいほど非ブロック化が多いことを意味する差分係数(デフォルト:32)。
平坦度
平坦度のしきい値。値が小さいほど非ブロック化が多くなります(デフォルト:39)。
水平および垂直非ブロックフィルターは、差と平坦度の値を共有するため、
水平方向と垂直方向に異なるしきい値を設定することはできません。
h1 / x1hdeblock
実験的な水平非ブロックフィルター
v1 / x1vdeblock
実験的な垂直非ブロックフィルター
dr / dering
デリングフィルター
tn / tmpnoise [| threshold1 [| threshold2 [| threshold3]]]、 一時的な ノイズ 減速
閾値1
より大きく->より強力なフィルタリング
閾値2
より大きく->より強力なフィルタリング
閾値3
より大きく->より強力なフィルタリング
al / autolevels [:f / fullrange]、 自動 明るさ / コントラスト 補正
f/フルレンジ
輝度を「0-255」に伸ばします。
lb / linblenddeint
すべてをフィルタリングすることにより、指定されたブロックをインターレース解除する線形ブレンドインターレース解除フィルター
「(1 2 1)」フィルターを使用した行。
li / linipoldeint
与えられたブロックを次のようにインターレース解除する線形補間インターレース解除フィルター
XNUMX行おきに線形補間します。
ci / cubicipoldeint
キュービック補間インターレース解除フィルターは、指定されたブロックをキュービックにデインターレースします
XNUMX行おきに補間します。
md / mediandeint
中央値を適用することにより、指定されたブロックをインターレース解除する中央値インターレース解除フィルター
XNUMX行おきにフィルタリングします。
fd / ffmpegdeint
FFmpegインターレース解除フィルターは、すべてをフィルタリングすることにより、指定されたブロックをインターレース解除します
「(-1 4 2 4 -1)」フィルターを使用したXNUMX行目。
l5 / lowpass5
指定されたブロックをインターレース解除する垂直方向に適用されたFIRローパスインターレース解除フィルター
「(-1 2 6 2 -1)」フィルターですべての行をフィルター処理します。
fq / forceQuant [| quantizer]
指定した定数量子化器を使用して、入力からの量子化器テーブルをオーバーライドします。
量子化器
使用する量子化器
de / default
デフォルトのppフィルターの組み合わせ( "hb | a、vb | a、dr | a")
fa / fast
高速ppフィルターの組み合わせ( "h1 | a、v1 | a、dr | a")
ac 高品質のppフィルターの組み合わせ( "ha | a | 128 | 7、va | a、dr | a")
例
・水平および垂直の非ブロック化、デリンギング、および自動輝度/コントラストを適用します。
pp = hb / vb / dr / al
・明るさ/コントラスト補正なしでデフォルトのフィルターを適用します。
pp = de / -al
・デフォルトのフィルターと一時的なノイズ除去装置を適用します。
pp = default / tmpnoise | 1 | 2 | 3
・輝度のみに非ブロック化を適用し、垂直方向の非ブロック化をオンまたはオフに切り替えます
使用可能なCPU時間に応じて自動的に:
pp = hb | y / vb | a
pp7
後処理フィルター7を適用します。これは spp フィルタ、spp = 6、7に似ています
ポイントDCT。IDCTの後に中央のサンプルのみが使用されます。
フィルタは次のオプションを受け入れます。
qp 一定の量子化パラメータを強制します。 0から63の範囲の整数を受け入れます。
設定されていない場合、フィルターはビデオストリームからのQPを使用します(使用可能な場合)。
モード
しきい値モードを設定します。 使用可能なモードは次のとおりです。
ハード
ハードしきい値を設定します。
ソフト
ソフトしきい値を設定します(より良いデリンギング効果がありますが、ぼやけている可能性があります)。
ミディアム
中程度のしきい値を設定します(良好な結果、デフォルト)。
psnr
XNUMXつの間の平均、最大、および最小のPSNR(ピーク信号対雑音比)を取得します
入力動画。
このフィルターは入力XNUMXつの入力ビデオを取り込み、最初の入力は「メイン」と見なされます
ソースであり、変更されずに出力に渡されます。 XNUMX番目の入力は「参照」として使用されます
PSNRを計算するためのビデオ。
このフィルターが機能するには、両方のビデオ入力が同じ解像度とピクセル形式である必要があります
正しく。 また、両方の入力のフレーム数が同じであると想定しています。
XNUMXつずつ比較しました。
得られた平均PSNRは、ロギングシステムを介して印刷されます。
フィルタは、各フレームの累積MSE(平均二乗誤差)を保存し、最後に
処理の結果は、すべてのフレームで均等に平均化され、次の式は次のようになります。
PSNRを取得するために適用されます。
PSNR = 10 * log10(MAX ^ 2 / MSE)
ここで、MAXは、画像の各コンポーネントの最大値の平均です。
受け入れられるパラメータの説明は次のとおりです。
stats_file、 f
指定した場合、フィルターは指定されたファイルを使用して各個人のPSNRを保存します
フレーム。
次の場合に印刷されるファイル 統計ファイル が選択され、キーと値のペアのシーケンスが含まれています
フォーム キー:値 比較されたフレームのカップルごとに。
示されている各パラメーターの説明は次のとおりです。
n 1から始まる入力フレームの連番
mse_avg
平均二乗誤差比較されたフレームのピクセルごとの平均差、平均
すべての画像コンポーネントにわたって。
mse_y、 mse_u、 mse_v、 mse_r、 mse_g、 mse_g、 mse_a
平均二乗誤差の比較されたフレームのピクセルごとの平均差
接尾辞で指定されたコンポーネント。
psnr_y、 psnr_u、 psnr_v、 psnr_r、 psnr_g、 psnr_b、 psnr_a
によって指定されたコンポーネントの比較されたフレームのピーク信号対雑音比
サフィックス。
例:
movie = ref_movie.mpg、setpts = PTS-STARTPTS [main];
[main] [ref] psnr = "stats_file = stats.log" [out]
この例では、処理中の入力ファイルが参照ファイルと比較されます
ref_movie.mpg。 個々のフレームのPSNRはに保存されます 統計ログ.
プルアップ
混合ハードテレシネを処理できるプルダウン反転(逆テレシネ)フィルター、
24000/1001 fpsプログレッシブ、および30000/1001fpsプログレッシブコンテンツ。
プルアップフィルターは、将来のコンテキストを利用して決定を下すように設計されています。
このフィルターは、フォローするパターンにロックされないという意味でステートレスですが、
代わりに、一致を識別して再構築するために、次のフィールドを楽しみにしています
プログレッシブフレーム。
フレームレートが均一なコンテンツを作成するには、プルアップ後にfpsフィルターを挿入します。
入力フレームレートが24000fpsの場合は「fps=1001/29.97」、24fpsの場合は「fps= 30」および(まれ)
テレシネされた25fps入力。
フィルタは次のオプションを受け入れます。
jl
jr
jt
jb これらのオプションは、左、右、上、下で無視する「ジャンク」の量を設定します
それぞれ、画像の。 左と右は8ピクセル単位で、上と
下は2行単位です。 デフォルトは、各辺が8ピクセルです。
sb 厳密な休憩を設定します。 このオプションを1に設定すると、フィルターの可能性が低くなります
不一致のフレームがときどき生成されますが、過剰な数が発生する可能性もあります
ハイモーションシーケンス中にドロップされるフレームの数。 逆に、-1に設定します
フィルタの一致フィールドがより簡単になります。 これは、ビデオの処理に役立つ場合があります
フィールド間にわずかなぼやけがありますが、インターレースが発生する可能性もあります
出力のフレーム。 デフォルト値は0です。
mp 使用するメートル平面を設定します。 次の値を受け入れます。
l 輝度面を使用します。
u クロマブループレーンを使用してください。
v クロマレッド面を使用してください。
このオプションは、デフォルトの輝度平面の代わりに彩度平面を使用するように設定できます。
フィルタの計算。 これにより、非常にクリーンなソースマテリアルの精度が向上する可能性がありますが、
特にクロマノイズ(レインボー)がある場合は、精度が低下する可能性が高くなります
効果)または任意のグレースケールビデオ。 設定の主な目的 mp 彩度平面に
CPU負荷を軽減し、低速のマシンでプルアップをリアルタイムで使用できるようにします。
最良の結果を得るには(出力ファイルに重複するフレームがない場合)、変更する必要があります
出力フレームレート。 たとえば、テレシネNTSC入力を逆にするには:
ffmpeg -i input -vf pullup -r24000/1001..。
qp
ビデオ量子化パラメーター(QP)を変更します。
フィルタは次のオプションを受け入れます。
qp 量子化パラメータの式を設定します。
式はevalAPIを介して評価され、特に、
次の定数:
既知の
インデックスが1でない場合は129、それ以外の場合は0。
qp -129から128までのシーケンシャルインデックス。
例
・次のような方程式:
qp = 2 + 2 * sin(PI * qp)
ランダム
フレームの内部キャッシュからランダムな順序にビデオフレームをフラッシュします。 フレームはありません
廃棄されました。 に触発された フレイ0r 神経質なフィルター。
フレーム
サイズを内部キャッシュのフレーム数で2〜512の範囲で設定します。デフォルトは30です。
シード
乱数ジェネレーターのシードを設定します。0とXNUMXの間に含まれる整数である必要があります
「UINT32_MAX」。 指定されていない場合、または明示的に0未満に設定されている場合、フィルターは
ベストエフォートベースで適切なランダムシードを使用するようにしてください。
穀物を取り除く
removegrainフィルターは、プログレッシブビデオの空間ノイズ除去装置です。
m0 最初の平面のモードを設定します。
m1 XNUMX番目の平面のモードを設定します。
m2 XNUMX番目の平面のモードを設定します。
m3 XNUMX番目の平面のモードを設定します。
モードの範囲は0〜24です。各モードの説明は次のとおりです。
0 入力プレーンは変更しないでください。 デフォルト。
1 隣接する8つのピクセルの最小値と最大値でピクセルをクリップします。
2 8つの隣接ピクセルのXNUMX番目の最小値と最大値でピクセルをクリップします。
3 8つの隣接ピクセルのXNUMX番目の最小値と最大値でピクセルをクリップします。
4 8つの隣接ピクセルのXNUMX番目の最小値と最大値でピクセルをクリップします。 これ
メディアンフィルターに相当します。
5 最小限の変更を与えるラインセンシティブクリッピング。
6 ラインセンシティブクリッピング、中間。
7 ラインセンシティブクリッピング、中間。
8 ラインセンシティブクリッピング、中間。
9 隣接するピクセルが最も近いラインでのラインセンシティブクリッピング。
10 ターゲットピクセルを最も近い隣のピクセルに置き換えます。
11 [1]水平および垂直のカーネルブラー。
12 モード11と同じです。
13 ボブモード、隣接するピクセルが存在するラインからトップフィールドを補間します
最も近い。
14 ボブモード、隣接するピクセルが存在するラインから下のフィールドを補間します
最も近い。
15 ボブモード、トップフィールドを補間します。 13と同じですが、より複雑な補間があります
式。
16 ボブモード、下部フィールドを補間します。 14と同じですが、より複雑です
補間式。
17 それぞれ最大値と最小値の最小値と最大値でピクセルをクリップします
反対側の隣接ピクセルの各ペアの。
18 からの距離が最大の反対側のネイバーを使用したラインセンシティブクリッピング
現在のピクセルは最小です。
19 ピクセルをその8つの隣接ピクセルの平均に置き換えます。
20 9ピクセルを平均します([1 1 1]水平および垂直ブラー)。
21 反対側の隣人の平均を使用してピクセルをクリップします。
22 モード21と同じですが、よりシンプルで高速です。
23 小さなエッジとハローの除去ですが、役に立たないと言われています。
24 23と同様。
削除ロゴ
画像ファイルを使用してテレビ局のロゴを抑制し、どのピクセルが
ロゴ。 これは、ロゴを構成するピクセルを隣接するピクセルで埋めることによって機能します。
フィルタは次のオプションを受け入れます。
ファイル名、 f
フィルタビットマップファイルを設定します。これは、libavformatでサポートされている任意の画像形式にすることができます。
画像ファイルの幅と高さは、ビデオストリームのものと一致する必要があります
処理されました。
値がゼロの提供されたビットマップ画像のピクセルは、の一部とは見なされません。
ロゴ、ゼロ以外のピクセルはロゴの一部と見なされます。 ロゴに白(255)を使用する場合
残りは黒(0)で、安全です。 フィルタビットマップを作成するために、それはです
ロゴが表示された黒いフレームのスクリーンキャプチャを撮ってから、
しきい値フィルターを使用し、続いて侵食フィルターをXNUMX回またはXNUMX回使用します。
必要に応じて、小さな斑点を手動で修正できます。 ロゴピクセルがそうでない場合は覚えておいてください
覆われていると、フィルターの品質が大幅に低下します。 の一部としてあまりにも多くのピクセルをマークする
ロゴはそれほど害はありませんが、カバーするのに必要なぼかしの量が増えます
画像上にあり、必要以上の情報を破壊し、余分なピクセルは
大きなロゴで物事を遅くします。
リピートフィールド
このフィルターは、VideoESヘッダーとハードリピートフィールドのrepeat_fieldフラグを使用します
その値に基づいて。
逆行する、 アバース
クリップを反転します。
警告:このフィルターはクリップ全体をバッファリングするためにメモリを必要とするため、トリミングをお勧めします。
例
・クリップの最初の5秒間を取り、それを逆にします。
トリム=終了=5、逆
回転させる
ラジアンで表される任意の角度でビデオを回転させます。
フィルタは次のオプションを受け入れます。
オプションのパラメータの説明は次のとおりです。
角度、 a
入力ビデオを時計回りに回転させる角度の式を設定します。
ラジアンの数として表されます。 負の値は反時計回りになります
回転。 デフォルトでは「0」に設定されています。
この式は、フレームごとに評価されます。
out_w、 ow
出力幅の式を設定します。デフォルト値は「iw」です。 この式が評価されます
構成中にXNUMX回だけ。
out_h、 oh
出力高さ式を設定します。デフォルト値は「ih」です。 この式が評価されます
構成中にXNUMX回だけ。
バイリニア
1に設定されている場合、双一次補間を有効にします。値が0の場合、双一次補間は無効になります。 デフォルト値は
1.
塗りつぶしの色、 c
回転した画像で覆われていない出力領域を塗りつぶすために使用する色を設定します。 のために
このオプションの一般的な構文については、ffmpeg-utilsマニュアルの「Color」セクションを確認してください。
特別な値「none」が選択されている場合、背景は印刷されません(
背景が表示されない場合の例)。
デフォルト値は「黒」です。
角度と出力サイズの式には、次の定数と
機能:
n 0から始まる入力フレームの連番。常にNANの前にあります。
最初のフレームがフィルタリングされます。
t 入力フレームの秒単位の時間。フィルターが構成されている場合は0に設定されます。 これ
最初のフレームがフィルタリングされる前は、常にNANです。
ひサブ
対サブ
水平および垂直クロマサブサンプル値。 たとえば、ピクセル形式の場合
「yuv422p」 ひサブ 2とは 対サブ 1です。
in_w、 iw
in_h、 ih
入力ビデオの幅と高さ
out_w、 ow
out_h、 oh
出力の幅と高さ、つまり、
幅 と 高さ 表現
rotw(a)
roth(a)
によって回転された入力ビデオを完全に含むために必要な最小の幅/高さ
a ラジアン。
これらは、計算時にのみ使用できます。 アウト_w と アウト_h 式。
例
・入力をPI/6ラジアンだけ時計回りに回転させます。
回転=PI/ 6
・入力をPI/6ラジアンだけ反時計回りに回転させます。
回転=-PI/ 6
・入力を時計回りに45度回転します。
回転=45* PI / 180
・PI / 3の角度から開始して、周期Tで一定の回転を適用します。
回転=PI/ 3 + 2 * PI * t / T
・入力ビデオの回転をT秒の周期と振幅で振動させます
ラジアンの:
回転=A* sin(2 * PI / T * t)
・ビデオを回転させます。出力サイズは、回転する入力ビデオ全体が次のようになるように選択されます。
常に完全に出力に含まれます:
rotate = '2 * PI * t:ow = hypot(iw、ih):oh = ow'
・ビデオを回転させ、出力サイズを小さくして、背景が表示されないようにします。
rotate = 2 * PI * t:ow ='min(iw、ih)/平方根(2)':oh = ow:c = none
コマンド
フィルタは次のコマンドをサポートします。
a, 角度
角度式を設定します。 このコマンドは、対応するものと同じ構文を受け入れます
オプションを選択します。
指定された式が無効な場合、現在の値に保持されます。
SAB
シェイプアダプティブブラーを適用します。
フィルタは次のオプションを受け入れます。
luma_radius、 lr
ルマブラーフィルターの強度を設定します。値は0.1〜4.0の範囲である必要があり、デフォルト値は1.0です。
値を大きくすると、画像がぼやけ、処理が遅くなります。
luma_pre_filter_radius、 LPFR
輝度プレフィルター半径を設定します。0.1〜2.0の範囲の値である必要があり、デフォルト値は
1.0.
luma_strength、 ls
考慮されるピクセル間の輝度の最大差を設定します。値は次の値である必要があります。
0.1〜100.0の範囲、デフォルト値は1.0です。
chroma_radius、 cr
クロマブラーフィルターの強度を設定します。値は0.1〜4.0の範囲である必要があります。 より大きな値
画像がぼやけ、処理が遅くなります。
chroma_pre_filter_radius、 CPFR
クロマプレフィルター半径を設定します。0.1〜2.0の範囲の値である必要があります。
chroma_strength、 cs
考慮されるピクセル間のクロマ最大差を設定します。値である必要があります
0.1〜100.0の範囲です。
各クロマオプション値は、明示的に指定されていない場合、対応する輝度に設定されます
オプション値。
階段
libswscaleライブラリを使用して、入力ビデオをスケーリング(サイズ変更)します。
スケールフィルターは、出力ディスプレイのアスペクト比を入力と同じにするように強制します。
出力サンプルのアスペクト比を変更します。
入力画像の形式が次のフィルターで要求される形式と異なる場合、
スケールフィルターは、入力を要求された形式に変換します。
オプション
フィルタは、次のオプション、またはでサポートされているオプションのいずれかを受け入れます。
libswscaleスケーラー。
見る ffmpeg-スケーラー マニュアル スケーラーオプションの完全なリストについては。
幅、 w
高さ、 h
出力動画の寸法式を設定します。 デフォルト値は入力次元です。
値が0の場合、入力幅が出力に使用されます。
値の1つが-XNUMXの場合、スケールフィルターは
他の指定された寸法から計算された、入力画像のアスペクト比。 もしも
どちらも-1で、入力サイズが使用されます
値の1つが-nでn>XNUMXの場合、スケールフィルターは次の値も使用します。
指定された他の画像から計算された、入力画像のアスペクト比を維持します
寸法。 ただし、その後、計算された寸法が
nで割り切れ、必要に応じて値を調整します。
ディメンション式で使用できる定数のリストについては、以下を参照してください。
インタール
インターレースモードを設定します。 次の値を受け入れます。
1 インターレース認識スケーリングを強制します。
0 インターレーススケーリングを適用しないでください。
-1 ソースフレームにフラグが付けられているかどうかに応じて、インターレース対応スケーリングを選択します
インターレースかどうか。
デフォルト値は 0.
フラグ
libswscaleスケーリングフラグを設定します。 見る ffmpeg-スケーラー マニュアル の完全なリストについては
値。 明示的に指定されていない場合、フィルターはデフォルトのフラグを適用します。
サイズ、 s
ビデオサイズを設定します。 このオプションの構文については、 "ビデオ サイズ" in
ffmpeg-utils マニュアル.
in_color_matrix
アウトカラーマトリックス
YCbCr色空間タイプの入力/出力を設定します。
これにより、自動検出された値をオーバーライドできるだけでなく、
出力とエンコーダーに使用される特定の値。
指定しない場合、色空間タイプはピクセル形式によって異なります。
可能な値:
オート
自動的に選択します。
bt709
国際電気通信連合(ITU)の推奨事項に準拠した形式
BT.709。
fcc 米国連邦通信委員会に準拠した色空間を設定します
(FCC)連邦規則集(CFR)タイトル47(2003)73.682(a)。
bt601
以下に準拠する色空間を設定します。
・ITU無線通信セクター(ITU-R)勧告BT.601
・ITU-RRec。 BT.470-6(1998)システムB、B1、およびG
・Society of Motion Picture and Television Engineers(SMPTE)ST 170:2004
smpte240m
SMPTE ST 240:1999に準拠した色空間を設定します。
範囲内で
範囲外
YCbCrサンプル範囲の設定/出力。
これにより、自動検出された値をオーバーライドできるだけでなく、
出力とエンコーダーに使用される特定の値。 指定しない場合、範囲は
ピクセルフォーマット。 可能な値:
オート
自動的に選択します。
jpeg / full / pc
フルレンジを設定します(0ビット輝度の場合は255〜8)。
mpeg / tv
「MPEG」範囲を設定します(16ビット輝度の場合は235〜8)。
Force_original_aspect_ratio
必要に応じて、出力ビデオの幅または高さを増減できるようにして、
元のアスペクト比。 可能な値:
disable
指定されたとおりにビデオを拡大縮小し、この機能を無効にします。
減少
出力ビデオのサイズは、必要に応じて自動的に縮小されます。
増加する
出力ビデオのサイズは、必要に応じて自動的に増加します。
このオプションの便利な例のXNUMXつは、特定のデバイスの最大値がわかっている場合です。
許可された解像度、これを使用して出力ビデオをそれに制限することができますが、
アスペクト比を維持します。 たとえば、デバイスAでは1280x720の再生が可能であり、
ビデオは1920x800です。 このオプションを使用して(減少するように設定)、1280x720を次のように指定します
コマンドラインは出力を1280x533にします。
これは、-1を指定するのとは異なることに注意してください。 w or h、 あなたはまだ
このオプションを機能させるには、出力解像度を指定する必要があります。
の値 w と h オプションは、次の定数を含む式です。
in_w
in_h
入力の幅と高さ
iw
ih これらはと同じです in_w と in_h.
アウト_w
アウト_h
出力(スケーリングされた)幅と高さ
ow
oh これらはと同じです アウト_w と アウト_h
a と同じ iw / ih
sar 入力サンプルのアスペクト比
与える 入力ディスプレイのアスペクト比。 「(iw / ih)*sar」から計算されます。
ひサブ
対サブ
水平および垂直入力クロマサブサンプル値。 たとえば、ピクセルの場合
フォーマット「yuv422p」 ひサブ 2とは 対サブ 1です。
オーサブ
ovsub
水平および垂直の出力クロマサブサンプル値。 たとえば、ピクセルの場合
フォーマット「yuv422p」 ひサブ 2とは 対サブ 1です。
例
・入力ビデオを200x100のサイズにスケーリングします
scale = w = 200:h = 100
これは次と同等です。
スケール= 200:100
または:
スケール=200x100
・出力サイズのサイズの省略形を指定します。
scale = qcif
これは次のように書くこともできます:
scale = size = qcif
・入力を2倍にスケーリングします。
scale = w = 2 * iw:h = 2 * ih
・上記は次と同じです。
scale = 2 * in_w:2 * in_h
・強制インターレーススケーリングを使用して、入力を2倍にスケーリングします。
scale = 2 * iw:2 * ih:interl = 1
・入力を半分のサイズにスケーリングします。
scale = w = iw / 2:h = ih / 2
・幅を広げ、高さを同じサイズに設定します。
scale = 3/2 * iw:ow
・ギリシャの調和を求める:
scale = iw:1 / PHI * iw
scale = ih * PHI:ih
・高さを増やし、幅を高さの3/2に設定します。
scale = w = 3/2 * oh:h = 3/5 * ih
・サイズを大きくして、サイズをクロマサブサンプル値の倍数にします。
scale = "trunc(3/2 * iw / hsub)* hsub:trunc(3/2 * ih / vsub)* vsub"
・幅を最大500ピクセルに増やし、アスペクト比を最大XNUMXピクセルに保ちます。
入力:
scale = w ='min(500 \、iw * 3/2):h = -1'
コマンド
このフィルターは、次のコマンドをサポートします。
幅、 w
高さ、 h
出力動画の寸法式を設定します。 このコマンドは、
対応するオプション。
指定された式が無効な場合、現在の値に保持されます。
スケール2参照
参照ビデオに基づいて、入力ビデオをスケーリング(サイズ変更)します。
使用可能なオプションについては、スケールフィルターを参照してください。scale2refは同じものをサポートしますが、
基本としてメイン入力の代わりにビデオを参照してください。
例
・オーバーレイする前に、字幕ストリームをメインビデオのサイズと一致するようにスケーリングします
'scale2ref [b] [a]; [a] [b] overlay'
セパレートフィールド
「separatefields」は、フレームベースのビデオ入力を受け取り、各フレームを
コンポーネントフィールド、XNUMX倍のフレームレートとXNUMX倍の新しいハーフハイトクリップを作成
フレーム数。
このフィルターは、フレーム内のフィールド優位性情報を使用して、
出力の最初に配置するフィールド。 間違って使用する場合 セットフィールド 前にフィルタリング
「separatefields」フィルター。
セダー、 セタール
「setdar」フィルターは、フィルター出力ビデオのディスプレイアスペクト比を設定します。
これは、指定されたサンプル(別名ピクセル)アスペクト比を変更することによって行われます。
次の方程式:
= / *
「setdar」フィルターはビデオのピクセルサイズを変更しないことに注意してください
フレーム。 また、このフィルターで設定されたディスプレイのアスペクト比は、後のフィルターで変更される場合があります
フィルタチェーン内。たとえば、スケーリングの場合、または別の「setdar」または「setsar」フィルタが
適用される。
「setsar」フィルターは、フィルター出力ビデオのサンプル(別名ピクセル)アスペクト比を設定します。
このフィルターの適用の結果として、出力表示の側面に注意してください
比率は上記の式に従って変化します。
「setsar」フィルターによって設定されたサンプルのアスペクト比は、次のように変更される可能性があることに注意してください。
フィルタチェーン内の後のフィルタ。たとえば、別の「setsar」または「setdar」フィルタが
適用される。
次のパラメータを受け入れます。
r, 比、 与える (「setdar」 のみ)、 sar (「setsar」 のみ)
フィルタで使用するアスペクト比を設定します。
パラメータは、浮動小数点数の文字列、式、または
フォーム NUM:日ここで、 NUM と 日 アスペクト比の分子と分母です。
パラメータが指定されていない場合は、値「0」と見なされます。 フォームの場合
"NUM:日「」を使用する場合は、「:」文字をエスケープする必要があります。
マックス 分子と分母を表すために使用する最大整数値を設定する
表現されたアスペクト比を有理数に減らします。 デフォルト値は100です。
パラメータ sar 次の定数を含む式です。
E, PI、 PHI
これらは、数学定数e(オイラー数)、piの近似値です。
(ギリシャの円周率)、およびファイ(黄金比)。
w, h
入力の幅と高さ。
a これらはと同じです w / h.
sar 入力サンプルのアスペクト比。
与える 入力ディスプレイのアスペクト比。 (w / h)* sar.
hsub、 対サブ
水平および垂直のクロマサブサンプル値。 たとえば、ピクセル形式の場合
「yuv422p」 ひサブ 2とは 対サブ 1です。
例
・ディスプレイのアスペクト比を16:9に変更するには、次のいずれかを指定します。
setdar = dar = 1.77777
setdar = dar = 16/9
setdar = dar = 1.77777
・サンプルのアスペクト比を10:11に変更するには、次のように指定します。
setsar = sar = 10/11
・ディスプレイのアスペクト比を16:9に設定し、最大整数値を1000に指定するには
アスペクト比を下げるには、次のコマンドを使用します。
setdar = ratio = 16/9:max = 1000
セットフィールド
出力ビデオフレームの力場。
「setfield」フィルターは、出力フレームのインターレースタイプフィールドをマークします。 それはしません
入力フレームを変更しますが、対応するプロパティのみを設定します。これは、
フレームは、次のフィルター(「fieldorder」や「yadif」など)によって処理されます。
フィルタは次のオプションを受け入れます。
モード
使用可能な値は次のとおりです。
オート
同じフィールドプロパティを保持します。
BFF フレームをボトムフィールドファーストとしてマークします。
tff フレームをトップフィールドファーストとしてマークします。
うろつく
フレームをプログレッシブとしてマークします。
SHOWINFO
各入力ビデオフレームのさまざまな情報を含む行を表示します。 入力ビデオは
変更されていません。
示されている行には、フォームのキーと値のペアのシーケンスが含まれています キー:値.
次の値が出力に表示されます。
n 0から始まる入力フレームの(シーケンシャル)番号。
PTS タイムベースの数として表される、入力フレームのプレゼンテーションタイムスタンプ
単位。 タイムベースの単位は、フィルターの入力パッドによって異なります。
pts_time
入力フレームの表示タイムスタンプ。秒数で表されます。
投稿する 入力ストリーム内のフレームの位置。この情報が次の場合は-1
利用できない、および/または無意味です(たとえば、合成ビデオの場合)。
FMT ピクセルフォーマット名。
sar 入力フレームのサンプルアスペクト比。次の形式で表されます。 NUM/日.
s 入力フレームのサイズ。 このオプションの構文については、 "ビデオ サイズ"
in ffmpeg-utils マニュアル.
i インターレースモードのタイプ(「プログレッシブ」の場合は「P」、最初のトップフィールドの場合は「T」、最初の場合は「B」
一番下のフィールドが最初です)。
イスキー
フレームがキーフレームの場合は1、それ以外の場合は0です。
type
入力フレームの画像タイプ(Iフレームの場合は「I」、Pフレームの場合は「P」、
Bフレーム、または「?」 不明なタイプの場合)。 のドキュメントも参照してください
「AVPictureType」列挙型および「av_get_picture_type_char」関数の
libavutil / avutil.h.
チェックサム
入力フレームのすべての平面のAdler-32チェックサム(XNUMX進数で印刷)。
平面チェックサム
入力フレームの各平面のAdler-32チェックサム(XNUMX進数で印刷)、
「[c0 c1 c2 c3] "。
ショーパレット
各フレームの256色パレットを表示します。 このフィルターはにのみ関連します pal8 ピクセル
フレームをフォーマットします。
次のオプションを受け入れます。
s 30つのパレットカラーエントリを表すために使用されるボックスのサイズを設定します。 デフォルトはXNUMXです(
「30x30」ピクセルボックス)。
シャッフルプレーン
ビデオプレーンを並べ替えたり、複製したりします。
次のパラメータを受け入れます。
map0
最初の出力プレーンとして使用される入力プレーンのインデックス。
map1
XNUMX番目の出力プレーンとして使用される入力プレーンのインデックス。
map2
XNUMX番目の出力プレーンとして使用される入力プレーンのインデックス。
map3
XNUMX番目の出力プレーンとして使用される入力プレーンのインデックス。
最初の平面のインデックスは0です。デフォルトでは、入力は変更されません。
入力のXNUMX番目とXNUMX番目の平面を入れ替えます。
ffmpeg -i INPUT -vf shuffleplanes = 0:2:1:3 OUTPUT
シグナル統計
に関連する問題の特定に役立つさまざまな視覚的指標を評価します
アナログビデオメディアのデジタル化。
デフォルトでは、フィルターはこれらのメタデータ値をログに記録します。
ユミン
入力フレームに含まれる最小のY値を表示します。 の範囲で表現
[0-255]。
黄
入力フレーム内の10%パーセンタイルでY値を表示します。 範囲内で表現
[0-255]の。
ヤブグ
入力フレーム内の平均Y値を表示します。 [0-255]の範囲で表されます。
高
入力フレーム内の90%パーセンタイルでY値を表示します。 範囲内で表現
[0-255]の。
ワイマックス
入力フレームに含まれる最大Y値を表示します。 の範囲で表現
[0-255]。
うみん
入力フレームに含まれる最小のU値を表示します。 の範囲で表現
[0-255]。
ユーロー
入力フレーム内の10%パーセンタイルでU値を表示します。 範囲内で表現
[0-255]の。
UAVG
入力フレーム内の平均U値を表示します。 [0-255]の範囲で表されます。
高い
入力フレーム内の90%パーセンタイルでU値を表示します。 範囲内で表現
[0-255]の。
UMAX
入力フレームに含まれる最大U値を表示します。 の範囲で表現
[0-255]。
VMIN
入力フレームに含まれる最小V値を表示します。 の範囲で表現
[0-255]。
ヴロウ
入力フレーム内の10%パーセンタイルでV値を表示します。 範囲内で表現
[0-255]の。
VAVG
入力フレーム内の平均V値を表示します。 [0-255]の範囲で表されます。
高い
入力フレーム内の90%パーセンタイルでV値を表示します。 範囲内で表現
[0-255]の。
Vmax
入力フレームに含まれる最大V値を表示します。 の範囲で表現
[0-255]。
サトミン
入力フレームに含まれる最小彩度値を表示します。 で表現
[0-〜181.02]の範囲。
サトロフ
入力フレーム内の10%パーセンタイルで飽和値を表示します。 表現
[0-〜181.02]の範囲。
SATAVG
入力フレーム内の平均飽和値を表示します。 の範囲で表現
[0-〜181.02]。
サハイ
入力フレーム内の90%パーセンタイルで飽和値を表示します。 表現
[0-〜181.02]の範囲。
SATMAX
入力フレームに含まれる最大彩度値を表示します。 で表現
[0-〜181.02]の範囲。
ヒュームド
入力フレーム内の色相の中央値を表示します。 の範囲で表現
[0-360]。
ヒューアヴグ
入力フレーム内の色相の平均値を表示します。 の範囲で表現
[0-360]。
YDIF
Y平面のすべての値間のサンプル値の差の平均をで表示します
現在のフレームと前の入力フレームの対応する値。 で表現
[0-255]の範囲。
UDIF
U平面のすべての値間のサンプル値の差の平均をで表示します
現在のフレームと前の入力フレームの対応する値。 で表現
[0-255]の範囲。
VDIF
V平面のすべての値間のサンプル値の差の平均をで表示します
現在のフレームと前の入力フレームの対応する値。 で表現
[0-255]の範囲。
フィルタは次のオプションを受け入れます。
STAT
でる STAT 画像分析の追加形式を指定します。 でる でビデオを出力
指定されたタイプのピクセルが強調表示されます。
どちらのオプションも次の値を受け入れます。
ダフ屋
識別する 一時的な 異常値 ピクセル。 A 一時的な 外れ値 とは異なり、ピクセルです
同じフィールドの隣接するピクセル。 時間的外れ値の例には、
ビデオドロップアウト、ヘッドクロッグ、またはテープトラッキングの問題の結果。
ヴレップ
識別する 垂直 ライン 繰り返し。 垂直線の繰り返しには、同様の行が含まれます
フレーム内のピクセルの。 生まれたデジタルビデオでは、垂直線の繰り返しは
一般的ですが、このパターンは、アナログソースからデジタル化されたビデオでは一般的ではありません。
アナログソースのデジタル化の結果としてビデオで発生した場合、
ドロップアウト補償器からの隠蔽を示すことができます。
もたらす
法定放送範囲外のピクセルを特定します。
色、 c
のハイライト色を設定します でる オプション。 デフォルトの色は黄色です。
例
・さまざまなビデオメトリックの出力データ:
ffprobe -f lavfi movie = example.mov、signalstats = "stat = tout + vrep + brng" -show_frames
・フレームごとのY平面の最小値と最大値に関する特定のデータを出力します。
ffprobe -f lavfi movie = example.mov、signalstats -show_entries frame_tags = lavfi.signalstats.YMAX、lavfi.signalstats.YMIN
・放送範囲外のピクセルを赤でハイライトしながら動画を再生します。
ffplay example.mov -vf signalstats = "out = brng:color = red"
・フレーム上に描画されたsignalstatsメタデータを使用してビデオを再生します。
ffplay example.mov -vf signalstats = stat = brng + vrep + tout、drawtext = fontfile = FreeSerif.ttf:textfile = signalstat_drawtext.txt
コマンドで使用されるsignalstat_drawtext.txtの内容は次のとおりです。
時間%{pts:hms}
Y(%{metadata:lavfi.signalstats.YMIN}-%{metadata:lavfi.signalstats.YMAX})
U(%{metadata:lavfi.signalstats.UMIN}-%{metadata:lavfi.signalstats.UMAX})
V(%{metadata:lavfi.signalstats.VMIN}-%{metadata:lavfi.signalstats.VMAX})
最大飽和度:%{metadata:lavfi.signalstats.SATMAX}
スマートブラー
アウトラインに影響を与えずに、入力ビデオをぼかします。
次のオプションを受け入れます。
luma_radius、 lr
輝度半径を設定します。 オプション値は、[0.1,5.0]の範囲の浮動小数点数でなければなりません。
これは、画像をぼかすために使用されるガウスフィルターの分散を指定します(
大きい)。 デフォルト値は1.0です。
luma_strength、 ls
輝度の強さを設定します。 オプション値は、[-1.0,1.0]の範囲の浮動小数点数でなければなりません。
ぼかしを構成します。 [0.0,1.0]に含まれる値は、画像をぼかします
一方、[-1.0,0.0]に含まれる値は、画像を鮮明にします。 デフォルト値は1.0です。
luma_threshold、 lt
係数として使用される輝度しきい値を設定して、ピクセルが
ぼやけているかどうか。 オプション値は、[-30,30]の範囲の整数である必要があります。 の値
0はすべての画像をフィルタリングし、[0,30]に含まれる値は平坦な領域をフィルタリングし、
[-30,0]に含まれる値は、エッジをフィルタリングします。 デフォルト値は0です。
chroma_radius、 cr
彩度半径を設定します。 オプション値は、[0.1,5.0]の範囲の浮動小数点数でなければなりません。
これは、画像をぼかすために使用されるガウスフィルターの分散を指定します(
大きい)。 デフォルト値は1.0です。
chroma_strength、 cs
彩度を設定します。 オプション値は、範囲内の浮動小数点数である必要があります
ぼかしを設定する[-1.0,1.0]。 [0.0,1.0]に含まれる値は、
一方、[-1.0,0.0]に含まれる値は、画像を鮮明にします。 デフォルト値は
1.0.
chroma_threshold、 ct
係数として使用される彩度しきい値を設定して、ピクセルが
ぼやけているかどうか。 オプション値は、[-30,30]の範囲の整数である必要があります。 の値
0はすべての画像をフィルタリングし、[0,30]に含まれる値は平坦な領域をフィルタリングし、
[-30,0]に含まれる値は、エッジをフィルタリングします。 デフォルト値は0です。
彩度オプションが明示的に設定されていない場合、対応する輝度値が設定されます。
シム
XNUMXつの入力ビデオ間のSSIM(Structural SImilarity Metric)を取得します。
このフィルターは入力XNUMXつの入力ビデオを取り込み、最初の入力は「メイン」と見なされます
ソースであり、変更されずに出力に渡されます。 XNUMX番目の入力は「参照」として使用されます
SSIMを計算するためのビデオ。
このフィルターが機能するには、両方のビデオ入力が同じ解像度とピクセル形式である必要があります
正しく。 また、両方の入力のフレーム数が同じであると想定しています。
XNUMXつずつ比較しました。
フィルタは、各フレームの計算されたSSIMを格納します。
受け入れられるパラメータの説明は次のとおりです。
stats_file、 f
指定した場合、フィルターは指定されたファイルを使用して各個人のSSIMを保存します
フレーム。
次の場合に印刷されるファイル 統計ファイル が選択され、キーと値のペアのシーケンスが含まれています
フォーム キー:値 比較されたフレームのカップルごとに。
示されている各パラメーターの説明は次のとおりです。
n 1から始まる入力フレームの連番
Y, U, V, R, G, B
接尾辞で指定されたコンポーネントの比較されたフレームのSSIM。
すべて フレーム全体の比較されたフレームのSSIM。
dB 上記と同じですが、dB表現です。
例:
movie = ref_movie.mpg、setpts = PTS-STARTPTS [main];
[main] [ref] ssim = "stats_file = stats.log" [out]
この例では、処理中の入力ファイルが参照ファイルと比較されます
ref_movie.mpg。 個々のフレームのSSIMはに保存されます 統計ログ.
psnrとssimの両方を同時に使用する別の例:
ffmpeg -i main.mpg -i ref.mpg -lavfi "ssim; [0:v] [1:v] psnr" -f null-
Stereo3d
異なる立体画像フォーマット間で変換します。
フィルタは次のオプションを受け入れます。
in 入力の立体画像フォーマットを設定します。
入力画像形式で使用可能な値は次のとおりです。
sbsl
平行に並べて(左目左、右目右)
sbsr
サイドバイサイドクロスアイ(右目左、左目右)
sbs2l
半値幅の解像度で平行に並べて表示(左目左、右目右)
sbs2r
半値幅解像度のサイドバイサイドクロスアイ(右目左、左目右)
abl 上-下(左目が上、右目が下)
4月 上-下(右目が上、左目が下)
アブ2ル
上-下半分の高さの解像度(左目が上、右目が下)
アブ2r
上-下半分の高さの解像度(右目が上、左目が下)
al 交互のフレーム(左目が最初、右目がXNUMX番目)
ar 交互のフレーム(右目が最初、左目がXNUMX番目)
デフォルト値は sbsl.
でる 出力の立体画像フォーマットを設定します。
出力画像形式で使用可能な値は、すべての入力形式と次のとおりです。
任意の
アナグリフ赤/青灰色(左目に赤のフィルター、右目に青のフィルター)
引数
アナグリフ赤/緑灰色(左目に赤のフィルター、右目に緑のフィルター)
円弧
アナグリフ赤/シアングレー(左目に赤のフィルター、右目にシアンのフィルター)
アーチ
アナグリフ赤/シアン半色(左目に赤のフィルター、右目にシアンのフィルター)
arcc
アナグリフ赤/シアン色(左目に赤のフィルター、右目にシアンのフィルター)
アークド
デュボアの最小二乗投影で最適化されたアナグリフ赤/シアン色(赤
左目にフィルター、右目にシアンフィルター)
集計
アナグリフグリーン/マゼンタグレー(左目にグリーンフィルター、右目にマゼンタフィルター
目)
あー
アナグリフグリーン/マゼンタハーフカラー(左目にグリーンフィルター、マゼンタフィルターに
右目)
AGMC
アナグリフグリーン/マゼンタ色(左目にグリーンフィルター、右目にマゼンタフィルター
目)
AGMD
デュボアの最小二乗投影で最適化されたアナグリフグリーン/マゼンタカラー
(左目に緑のフィルター、右目にマゼンタのフィルター)
aybg
アナグリフイエロー/ブルーグレー(左目に黄色のフィルター、右目に青いフィルター)
エイブ
アナグリフイエロー/ブルーハーフカラー(左目に黄色のフィルター、右目に青いフィルター
目)
aybc
アナグリフイエロー/ブルーカラー(左目に黄色のフィルター、右目に青いフィルター)
aybd
デュボアの最小二乗投影で最適化されたアナグリフイエロー/ブルーカラー
(左目に黄色のフィルター、右目に青いフィルター)
irl インターリーブされた行(左目は一番上の行、右目は次の行から始まります)
irr インターリーブされた行(右目は一番上の行、左目は次の行から始まります)
ml モノラル出力(左目のみ)
mr モノラル出力(右目のみ)
デフォルト値は アークド.
例
・入力ビデオをアナグリフイエロー/ブルーデュボアと平行に並べて変換します。
Stereo3d = sbsl:aybd
・入力ビデオを上から下(左目上、右目下)から並べて変換します
クロスアイ。
Stereo3d = abl:sbsr
spp
いくつかの画像を圧縮および解凍する単純な後処理フィルターを適用します
(または-の場合 品質 レベル6-すべて)シフトし、結果を平均します。
フィルタは次のオプションを受け入れます。
品質
品質を設定します。 このオプションは、平均化するレベルの数を定義します。 それは受け入れます
0〜6の範囲の整数。 0に設定すると、フィルターは効果がありません。 6の値
より高い品質を意味します。 その値の増分ごとに、速度はXNUMX倍低下します
デフォルト値は2です。
qp 一定の量子化パラメータを強制します。 設定されていない場合、フィルターはからのQPを使用します
ビデオストリーム(利用可能な場合)。
モード
しきい値モードを設定します。 使用可能なモードは次のとおりです。
ハード
ハードしきい値を設定します(デフォルト)。
ソフト
ソフトしきい値を設定します(より良いデリンギング効果がありますが、ぼやけている可能性があります)。
use_bframe_qp
1に設定されている場合は、BフレームからのQPの使用を有効にします。このオプションを使用すると、
BフレームのQPが大きいことが多いため、ちらつきが発生します。 デフォルトは0(有効ではありません)です。
サブタイトル
libassライブラリを使用して、入力ビデオの上に字幕を描画します。
このフィルターのコンパイルを有効にするには、「-enable-libass」でFFmpegを設定する必要があります。
このフィルターには、渡されたものを変換するためにlibavcodecとlibavformatを使用したビルドも必要です
字幕ファイルをASS(Advanced Substation Alpha)字幕形式に変換します。
フィルタは次のオプションを受け入れます。
ファイル名、 f
読み取る字幕ファイルのファイル名を設定します。 指定する必要があります。
オリジナルサイズ
元のビデオ、ASSファイルが作成されたビデオのサイズを指定します。
このオプションの構文については、 "ビデオ サイズ" in ffmpeg-utils
マニュアル。 ASSアスペクト比演算の設計ミスにより、これは次のように必要です。
アスペクト比が変更されている場合は、フォントを正しく拡大縮小します。
フォントディレクトリ
フィルタで使用できるフォントを含むディレクトリパスを設定します。 これらのフォント
フォントプロバイダーが使用するものに加えて使用されます。
チャレンク
字幕入力文字エンコードを設定します。 「字幕」フィルターのみ。 そうでない場合にのみ有用
UTF-8。
stream_index、 si
字幕ストリームインデックスを設定します。 「字幕」フィルターのみ。
力のスタイル
字幕のデフォルトのスタイルまたはスクリプト情報パラメータを上書きします。 文字列を受け入れます
「、」で区切られたASSスタイル形式「KEY=VALUE」のカップルを含みます。
最初のキーが指定されていない場合、最初の値が
ファイル名.
たとえば、ファイルをレンダリングするには サブ.srt 入力ビデオの上で、次のコマンドを使用します。
字幕=sub.srt
これは次と同等です:
字幕=ファイル名=sub.srt
ファイルからデフォルトの字幕ストリームをレンダリングするには ビデオ.mkv、 つかいます:
字幕=video.mkv
そのファイルからXNUMX番目の字幕ストリームをレンダリングするには、次を使用します。
字幕=video.mkv:si = 1
字幕をストリーミングするには サブ.srt 透明な緑色の「DejaVuSerif」で表示されます。次を使用します。
subject = sub.srt:force_style ='FontName = DejaVu Serif、PrimaryColour =&HAA00FF00'
スーパー2xsai
Super2xSaI(Scale and Interpolate)ピクセルアートを使用して、入力を2倍にスケーリングしてスムーズにします
スケーリングアルゴリズム。
シャープネスを落とさずにピクセルアート画像を拡大するのに便利です。
スワップブ
UとVの平面を交換します。
テレシネ
ビデオにテレシネプロセスを適用します。
このフィルターは、次のオプションを受け入れます。
最初のフィールド
上、 t
トップフィールドファースト
下、 b
一番下のフィールドが最初です。デフォルト値は「top」です。
パターン
適用するプルダウンパターンを表す一連の数字。 デフォルト
値は23です。
いくつかの典型的なパターン:
NTSC出力(30i):
27.5p:32222
24p:23(クラシック)
24p:2332(推奨)
20p:33
18p:334
16p:3444
PAL出力(25i):
27.5p:12222
24p:222222222223(「ユーロプルダウン」)
16.67p:33
16p:33333334
サムネイル
連続するフレームの特定のシーケンスで最も代表的なフレームを選択します。
フィルタは次のオプションを受け入れます。
n 分析するフレームのバッチサイズを設定します。 のセットで n フレームの場合、フィルターはXNUMXつを選択します
それらの次のバッチを処理します n 最後までフレーム。 デフォルトは100です。
フィルタはフレームシーケンス全体を追跡するため、より大きな n 値は次のようになります
メモリ使用量が多いため、高い値はお勧めしません。
例
・50フレームごとにXNUMXつの画像を抽出します。
サムネイル= 50
・サムネイル作成の完全な例 ffmpeg:
ffmpeg -i in.avi -vfサムネイル、scale = 300:200 -frames:v 1 out.png
タイル
いくつかの連続するフレームを一緒に並べて表示します。
フィルタは次のオプションを受け入れます。
レイアウト
グリッドサイズ(つまり、行と列の数)を設定します。 この構文について
オプション、チェックしてください "ビデオ サイズ" in ffmpeg-utils マニュアル.
nb_frames
指定された領域にレンダリングするフレームの最大数を設定します。 または未満である必要があります
に等しい wxh。 デフォルト値は0で、すべての領域が使用されることを意味します。
マージン
外側の境界マージンをピクセル単位で設定します。
パディング
内側の境界線の厚さ(つまり、フレーム間のピクセル数)を設定します。 多くのための
高度なパディングオプション(エッジの値が異なるなど)については、
パッドビデオフィルター。
カラー
未使用部分の色を指定します。 このオプションの構文については、「色」を確認してください
ffmpeg-utilsマニュアルのセクション。 のデフォルト値 カラー 「黒」です。
例
・すべてのキーフレームの8x8 PNGタイルを生成します(-スキップフレーム ノーキー)映画の中で:
ffmpeg -skip_frame nokey -i file.avi -vf'scale = 128:72、tile = 8x8' -an -vsync 0 keyframes%03d.png
この -vsync 0 防ぐために必要です ffmpeg 各出力フレームの複製から
最初に検出されたフレームレートに対応します。
・「5x3」フレームの領域に2枚の画像を表示し、その間に7ピクセルを配置し、2枚
フラットと名前付きの混合オプションを使用した初期マージンのピクセル:
tile=3x2:nb_frames=5:padding=7:margin=2
ティンターレース
さまざまなタイプの時間フィールドインターレースを実行します。
フレームは1からカウントされるため、最初の入力フレームは奇数と見なされます。
フィルタは次のオプションを受け入れます。
モード
インターレースのモードを指定します。 このオプションは値として指定することもできます
XNUMX人。 このオプションの値のリストについては、以下を参照してください。
使用可能な値は次のとおりです。
マージ、 0
奇数フレームを上のフィールドに移動し、下のフィールドに移動して、
ハーフフレームレートのダブルハイトフレーム。
------>時間
入力:
フレーム1フレーム2フレーム3フレーム4
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
出力:
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444
drop_odd、 1
偶数フレームのみを出力し、奇数フレームはドロップされ、変更されていないフレームが生成されます
ハーフフレームレートでの高さ。
------>時間
入力:
フレーム1フレーム2フレーム3フレーム4
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
出力:
22222 44444
22222 44444
22222 44444
22222 44444
drop_even、 2
奇数フレームのみを出力し、偶数フレームはドロップされ、変更されていないフレームを生成します
ハーフフレームレートでの高さ。
------>時間
入力:
フレーム1フレーム2フレーム3フレーム4
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
出力:
11111 33333
11111 33333
11111 33333
11111 33333
パッド、 3
各フレームを完全な高さまで拡張しますが、交互の線を黒で埋めて、
同じ入力フレームレートでXNUMX倍の高さのフレーム。
------>時間
入力:
フレーム1フレーム2フレーム3フレーム4
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
出力:
11111 .....33333....。
..... 22222 ..... 44444 ..
11111 .....33333....。
..... 22222 ..... 44444 ..
11111 .....33333....。
..... 22222 ..... 44444 ..
11111 .....33333....。
..... 22222 ..... 44444 ..
interleave_top、 4
奇数フレームの上部フィールドと偶数フレームの下部フィールドをインターリーブし、
半分のフレームレートで高さが変更されていないフレームを生成します。
------>時間
入力:
フレーム1フレーム2フレーム3フレーム4
11111 <-22222 33333 <-44444
11111 22222 <-33333 44444 <-
11111 <-22222 33333 <-44444
11111 22222 <-33333 44444 <-
出力:
11111 33333
22222 44444
11111 33333
22222 44444
interleave_bottom、 5
奇数フレームの下部フィールドと偶数フレームの上部フィールドをインターリーブし、
半分のフレームレートで高さが変更されていないフレームを生成します。
------>時間
入力:
フレーム1フレーム2フレーム3フレーム4
11111 22222 <-33333 44444 <-
11111 <-22222 33333 <-44444
11111 22222 <-33333 44444 <-
11111 <-22222 33333 <-44444
出力:
22222 44444
11111 33333
22222 44444
11111 33333
interlacex2、 6
高さを変えずにXNUMX倍のフレームレート。 フレームが挿入され、それぞれに
前の入力フレームからのXNUMX番目の時間フィールドと最初の時間フィールド
次の入力フレームから。 このモードは、top_field_firstフラグに依存しています。 使える
フィールド同期のないインターレースビデオディスプレイ用。
------>時間
入力:
フレーム1フレーム2フレーム3フレーム4
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
出力:
11111 22222 22222 33333 33333 44444 44444
11111 11111 22222 22222 33333 33333 44444
11111 22222 22222 33333 33333 44444 44444
11111 11111 22222 22222 33333 33333 44444
数値は非推奨ですが、下位互換性の理由から受け入れられます。
デフォルトのモードは「マージ」です。
フラグ
フィルタプロセスに影響を与えるフラグを指定します。
利用可能な値 フラグ 次のとおりです。
ローパスフィルタ、 vlfp
フィルタで垂直ローパスフィルタリングを有効にします。 垂直ローパスフィルタリングは
プログレッシブソースからインターレース宛先を作成するときに必要です。
高周波の垂直方向の詳細が含まれています。 フィルタリングはインターレースを減らします'twitter'
とモアレのパターン化。
垂直ローパスフィルタリングは、次の場合にのみ有効にできます。 モード インターリーブ_トップ と
インターリーブ_ボトム.
転置
入力ビデオの列を含む行を転置し、オプションで反転します。
次のパラメータを受け入れます。
DIR 転置方向を指定します。
次の値を想定できます。
0, 4, c Clock_flip
反時計回りに90度回転し、垂直方向に反転します(デフォルト)。
LR Ll
。 。 ->。 。
lr Rr
1, 5, クロック
時計回りに90度回転します。つまり、次のようになります。
LR lL
。 。 ->。 。
lr rR
2, 6, 時計
反時計回りに90度回転します。つまり、次のようになります。
LR Rr
。 。 ->。 。
lr Ll
3, 7, クロックフリップ
時計回りに90度回転し、垂直方向に反転します。つまり、次のようになります。
LR rR
。 。 ->。 。
lr lL
4〜7の値の場合、転置は、入力ビデオジオメトリが
横向きではなく縦向き。 これらの値は非推奨であり、「パススルー」オプションです。
代わりに使用する必要があります。
数値は非推奨であり、シンボリック定数を優先して削除する必要があります。
パススルー
入力ジオメトリがで指定されたものと一致する場合は、転置を適用しないでください。
指定された値。 次の値を受け入れます。
なし
常に転置を適用します。
肖像
ポートレートジオメトリを保持する( 高さ >= 幅).
風景
ランドスケープジオメトリを保持する( 幅 >= 高さ).
デフォルト値は「none」です。
たとえば、時計回りに90度回転し、縦向きのレイアウトを維持するには、次のようにします。
transpose = dir = 1:passthrough = portal
上記のコマンドは、次のように指定することもできます。
transpose = 1:portrait
トリム
出力に入力のXNUMXつの連続したサブパートが含まれるように、入力をトリミングします。
次のパラメータを受け入れます。
start
保持されたセクションの開始時刻、つまりタイムスタンプ付きのフレームを指定します
start 出力の最初のフレームになります。
end ドロップされる最初のフレーム、つまりすぐにフレームの時間を指定します
タイムスタンプの前に end 出力の最後のフレームになります。
start_pts
これはと同じです start、ただし、このオプションはタイムベースに開始タイムスタンプを設定します
秒の代わりに単位。
end_pts
これはと同じです end、ただし、このオプションはタイムベース単位で終了タイムスタンプを設定します
秒の代わりに。
デュレーション
出力の最大継続時間(秒単位)。
開始フレーム
出力に渡される最初のフレームの番号。
終了フレーム
ドロップする必要がある最初のフレームの番号。
start, end, デュレーション 期間の仕様として表されます。 見る Time
デュレーション in ffmpeg-utils(1) マニュアル 受け入れられた構文について。
開始/終了オプションの最初のXNUMXセットと デュレーション オプションを見てください
フレームタイムスタンプ、_frameバリアントは単に通過するフレームをカウントします
フィルター。 また、このフィルターはタイムスタンプを変更しないことに注意してください。 ご希望の場合
ゼロから開始するタイムスタンプを出力し、トリムフィルターの後にsetptsフィルターを挿入します。
複数の開始または終了オプションが設定されている場合、このフィルターは貪欲になり、すべての
指定された制約の少なくともXNUMXつに一致するフレーム。 その部分だけを保持する
一度にすべての制約に一致し、複数のトリムフィルターをチェーンします。
デフォルトでは、すべての入力が保持されます。 したがって、たとえば、
指定された時間より前にすべてを保持するための終了値。
例:
・入力のXNUMX分を除くすべてをドロップします。
ffmpeg -i INPUT -vftrim = 60:120
・最初のXNUMX秒だけを保持します。
ffmpeg -i INPUT -vftrim = duration = 1
不鮮明
入力ビデオをシャープまたはぼかします。
次のパラメータを受け入れます。
luma_msize_x、 lx
輝度マトリックスの水平サイズを設定します。 3から63までの奇数の整数である必要があります。
デフォルト値は5です。
luma_msize_y、 ly
輝度行列の垂直サイズを設定します。 3から63までの奇数の整数である必要があります。
デフォルト値は5です。
luma_amount、 la
輝度効果の強さを設定します。 浮動小数点数、妥当な値でなければなりません
-1.5と1.5の間にあります。
負の値は入力ビデオをぼかし、正の値は入力ビデオをシャープにします。
ゼロの値は効果を無効にします。
デフォルト値は1.0です。
chroma_msize_x、 cx
クロママトリックスの水平サイズを設定します。 3から63までの奇数の整数である必要があります。
デフォルト値は5です。
chroma_msize_y、 cy
クロママトリックスの垂直サイズを設定します。 3から63までの奇数の整数である必要があります。
デフォルト値は5です。
chroma_amount、 ca
クロマ効果の強さを設定します。 浮動小数点数、妥当な値でなければなりません
-1.5と1.5の間にあります。
負の値は入力ビデオをぼかし、正の値は入力ビデオをシャープにします。
ゼロの値は効果を無効にします。
デフォルト値は0.0です。
opencl
1に設定されている場合、OpenCL機能を使用して指定します。FFmpegが
「--enable-opencl」で構成されます。 デフォルト値は0です。
すべてのパラメータはオプションであり、デフォルトでは文字列「5:5:1.0:5:5:0.0」に相当します。
例
・強力な輝度研ぎ効果を適用します。
unsharp = luma_msize_x = 7:luma_msize_y = 7:luma_amount = 2.5
・ルーマとクロマの両方のパラメータを強くぼかします。
unsharp=7:7:-2:7:7:-2
uspp
画像を圧縮および解凍する超低速/単純な後処理フィルターを適用します
いくつかで(または-の場合 品質 レベル8-すべて)シフトし、結果を平均します。
これがsppの動作と異なる点は、usppが実際にそれぞれをエンコードおよびデコードすることです。
libavcodec Snowの場合、sppは、次のような単純化されたイントラのみの8x8DCTを使用します。
MJPEG。
フィルタは次のオプションを受け入れます。
品質
品質を設定します。 このオプションは、平均化するレベルの数を定義します。 それは受け入れます
0〜8の範囲の整数。 0に設定すると、フィルターは効果がありません。 8の値
より高い品質を意味します。 その値の増分ごとに、速度はXNUMX倍低下します
デフォルト値は2です。
qp 一定の量子化パラメータを強制します。 設定されていない場合、フィルターはからのQPを使用します
ビデオストリーム(利用可能な場合)。
ベクトルスコープ
2次元グラフにXNUMXつの色成分値を表示します(これは、
vectorscope)。
このフィルターは、次のオプションを受け入れます。
モード、 m
vectorscopeモードを設定します。
次の値を受け入れます。
グレー
灰色の値がグラフに表示されます。明るさが高いほど、より多くのピクセルが同じであることを意味します
グラフ内の場所のコンポーネントの色の値。 これがデフォルトのモードです。
カラー
灰色の値がグラフに表示されます。 ない周囲のピクセル値
ビデオフレームに存在するものは、設定されている2つの色成分のグラデーションで描画されます
オプション「x」および「y」による。
color2
ビデオフレームに存在する実際の色成分値がグラフに表示されます。
color3
color2に似ていますが、グラフ上で同じ値「x」と「y」の頻度が高くなります
デフォルト値である輝度である別のカラーコンポーネントの値を増やします
「x」と「y」の。
color4
ビデオフレームに存在する実際の色がグラフに表示されます。 XNUMXつの異なる場合
色はグラフ上の同じ位置にマップされ、コンポーネントの値が高い色ではなく
グラフに存在するものが選択されます。
x X軸に表示されるカラーコンポーネントを設定します。 デフォルトは1です。
y Y軸に表示される色成分を設定します。 デフォルトは2です。
強度、 i
モードで使用される強度を設定します:グレー、カラー、カラー3
グラフ内の(X、Y)位置の頻度を表す色成分。
封筒、 e
なし
封筒はありません。これがデフォルトです。
インスタント
インスタントエンベロープ、最も暗い単一ピクセルでも明確に強調表示されます。
ピーク
時間の経過とともにグラフに表示される最大値と最小値を保持します。 このようにあなたはすることができます
常にvectorscopeを見なくても、範囲外の値を見つけることができます。
ピーク+インスタント
ピークエンベロープとインスタントエンベロープを組み合わせたもの。
vidstab検出
ビデオの安定化/デシェイクを分析します。 パス1/2を実行します。を参照してください。 vidstab変換 パス用
2.
このフィルターは、相対的な平行移動および回転変換情報を含むファイルを生成します
後続のフレームについて vidstab変換 フィルタ。
このフィルターのコンパイルを有効にするには、FFmpegを構成する必要があります
「--enable-libvidstab」。
このフィルターは、次のオプションを受け入れます。
結果
変換情報の書き込みに使用されるファイルへのパスを設定します。 デフォルト値は
変換.trf.
震え
ビデオの揺れとカメラの速さを設定します。 整数を受け入れます
範囲1〜10、値1は震えが少ないことを意味し、値10は震えが強いことを意味します。
デフォルト値は5です。
精度
検出プロセスの精度を設定します。 1〜15の範囲の値である必要があります。 A
値1は低精度を意味し、値15は高精度を意味します。 デフォルト値は15です。
刻み幅
検索プロセスのステップサイズを設定します。 最小付近の領域を1ピクセルでスキャンします
解像度。 デフォルト値は6です。
最小コントラスト
最小コントラストを設定します。 この値を下回ると、ローカル測定フィールドは破棄されます。 でなければなりません
0-1の範囲の浮動小数点値。 デフォルト値は0.3です。
三脚
三脚モードの基準フレーム番号を設定します。
有効にすると、フレームの動きがフィルター処理された参照フレームと比較されます
指定された番号で識別されるストリーム。 アイデアは、のすべての動きを補償することです
多かれ少なかれ静的なシーンであり、カメラビューを完全に静止させます。
0に設定すると、無効になります。 フレームは1からカウントされます。
表示する
結果のフレームにフィールドと変換を表示します。 範囲内の整数を受け入れます
0-2。 デフォルト値は0で、視覚化を無効にします。
例
・デフォルト値を使用します。
vidstab検出
・非常に不安定な映画を分析し、結果をファイルに保存します mytransforms.trf:
vidstabdetect = shakiness = 10:accuracy = 15:result = "mytransforms.trf"
・結果のビデオで内部変換の結果を視覚化します。
vidstabdetect = show = 1
・を使用して中程度の揺れのあるビデオを分析する ffmpeg:
ffmpeg -i input -vf vidstabdetect = shakiness = 5:show =1ダミー.avi
vidstab変換
ビデオの安定化/シェイク解除:パス2 of 2、を参照 vidstab検出 パス1の場合。
各フレームの変換情報を含むファイルを読み取り、それらを適用/補正します。 一緒
vidstab検出 フィルタこれは、ビデオのシェイクを解除するために使用できます。 も参照してください
<http://public.hronopik.de/vid.stab>。 を使用することも重要です 不鮮明 フィルタ、を参照してください
を参照してください。
このフィルターのコンパイルを有効にするには、FFmpegを構成する必要があります
「--enable-libvidstab」。
オプション
変換の読み取りに使用されるファイルへのパスを設定します。 デフォルト値は 変換.trf.
スムージング
カメラのローパスフィルタリングに使用するフレーム数(値* 2 + 1)を設定します
動き。 デフォルト値は10です。
たとえば、10という数字は、21フレームが使用されていることを意味します(過去に10フレーム、
将来)ビデオの動きを滑らかにします。 値を大きくすると、ビデオがスムーズになります。
ただし、カメラの加速を制限します(パン/チルトの動き)。 0は特殊なケースです
静的カメラがシミュレートされます。
オプタルゴ
カメラパス最適化アルゴリズムを設定します。
受け入れられる値は次のとおりです。
ガウス
カメラモーションのガウスカーネルローパスフィルター(デフォルト)
平均 変換の平均
最大シフト
フレームを変換する最大ピクセル数を設定します。 デフォルト値は-1で、いいえを意味します
限定。
最大角度
フレームを回転させるには、最大角度をラジアン(度* PI / 180)で設定します。 デフォルト値は-1です。
制限がないことを意味します。
作物
動きの補正によって表示される可能性のある境界線の処理方法を指定します。
使用可能な値は次のとおりです。
続ける
前のフレームの画像情報を保持する(デフォルト)
黒
境界線を黒く塗りつぶす
転倒
1に設定されている場合、変換を反転します。デフォルト値は0です。
相対
1に設定されている場合は前のフレームを基準にして、0に設定されている場合は絶対変換と見なします。
デフォルト値は0です。
ズーム
ズームするパーセンテージを設定します。 正の値はズームイン効果になり、負の値になります
ズームアウト効果の値。 デフォルト値は0(ズームなし)です。
オプトズーム
境界線を避けるために最適なズームを設定します。
受け入れられる値は次のとおりです。
0 無効
1 最適な静的ズーム値が決定されます(非常に強い動きのみが
表示される境界線)(デフォルト)
2 最適な適応ズーム値が決定されます(境界線は表示されません)。を参照してください。
ズームスピード
ズームで与えられた値は、ここで計算された値に追加されることに注意してください。
ズームスピード
各フレームを最大にズームするようにパーセントを設定します( オプトズーム 2)に設定されます。 範囲は
0から5まで、デフォルト値は0.25です。
インターポール
補間のタイプを指定します。
使用可能な値は次のとおりです。
いいえ 補間なし
線形
線形のみ水平
バイリニア
両方向に線形(デフォルト)
バイキュービック
両方向に立方体(遅い)
三脚
1に設定されている場合は、仮想三脚モードを有効にします。これは、
「relative=0:smoothing=0」。 デフォルト値は0です。
の「三脚」オプションも使用 vidstab検出.
debug
1に設定すると、ログの冗長性が向上します。また、検出されたグローバルモーションは次のように書き込まれます。
一時ファイル グローバルモーション.trf。 デフォルト値は0です。
例
・ 使用する ffmpeg デフォルト値を使用した一般的な安定化の場合:
ffmpeg -i inp.mpeg -vf vidstabtransform、unsharp = 5:5:0.8:3:3:0.4 inp_stabilized.mpeg
ここでは、 不鮮明 常に推奨されるフィルター。
・もう少しズームインして、特定のファイルから変換データをロードします。
vidstabtransform =zoom = 5:input = "mytransforms.trf"
・ビデオをさらにスムーズにします。
vidstabtransform = smoothing = 30
ヴフリップ
入力ビデオを垂直に反転します。
たとえば、ビデオを垂直方向に反転するには ffmpeg:
ffmpeg -i in.avi -vf "vflip" out.avi
ビネット
自然なケラレ効果を作成または反転します。
フィルタは次のオプションを受け入れます。
角度、 a
レンズ角度式をラジアン数として設定します。
値は「[0、PI/2]」の範囲でクリップされます。
デフォルト値:「PI/5」
x0
y0 中心座標式を設定します。 デフォルトでは、それぞれ「w/2」と「h/2」です。
モード
フォワード/バックワードモードを設定します。
使用可能なモードは次のとおりです。
フォワード
中心点からの距離が離れるほど、画像は暗くなります。
後ろ向き
中心点からの距離が離れるほど、画像は明るくなります。
自動はありませんが、これを使用してビネット効果を元に戻すことができます
レンズを抽出するための検出 角度 およびその他の設定(まだ)。 使用することもできます
燃焼効果を作成します。
デフォルト値は フォワード.
評価する
式の評価モードを設定します(角度, x0, y0).
次の値を受け入れます。
INIT
フィルタの初期化中に式をXNUMX回だけ評価します。
フレーム
着信フレームごとに式を評価します。 これは、 INIT
すべてのスケーラーを再計算する必要があるためモードですが、高度な
ダイナミックな表現。
デフォルト値は INIT.
ディザ
ディザリングを設定して、円形のバンディング効果を減らします。 デフォルトは1(有効)です。
側面
ビネットアスペクトを設定します。 この設定により、ビネットの形状を調整できます。
この値を入力のSARに設定すると、長方形のケラレが発生します
ビデオの寸法に従ってください。
デフォルトは「1/1」です。
式
この アルファ, x0 と y0 式には、次のパラメーターを含めることができます。
w
h 入力の幅と高さ
n 0から始まる入力フレームの数
PTS フィルタリングされたビデオフレームのPTS(Presentation TimeStamp)時間。 TB
単位、未定義の場合はNAN
r 入力ビデオのフレームレート、入力フレームレートが不明な場合はNAN
t フィルタリングされたビデオフレームのPTS(Presentation TimeStamp)(秒単位で表される)、
未定義の場合はNAN
tb 入力ビデオのタイムベース
例
・単純な強力なケラレ効果を適用します。
vignette = PI / 4
・ちらつきのあるケラレを作成します。
vignette ='PI / 4 +ランダム(1)* PI / 50':eval = frame
vstack
入力動画を縦に積み重ねます。
すべてのストリームは、同じピクセル形式で同じ幅である必要があります。
このフィルターは使用するよりも高速であることに注意してください オーバーレイ と パッド 同じ出力を作成するためのフィルター。
フィルタは次のオプションを受け入れます。
nb_inputs
入力ストリームの数を設定します。 デフォルトは2です。
w3fdif
入力ビデオのインターレース解除(「w3fdif」は「Weston3 Field DeinterlacingFilter」の略)。
Martin WestonがBBCR&Dのために記述したプロセスに基づいており、
ウェストン3フィールドであるBBCR&Dのためにジムイースターブルックによって書かれたインターレース解除アルゴリズム
インターレース解除フィルターは、BBC R&Dによって計算されたフィルター係数を使用します。
フィルタ係数には、「単純」と「複雑」のXNUMXつのセットがあります。 どのセットの
使用されるフィルター係数は、オプションのパラメーターを渡すことで設定できます。
filter
インターレースフィルター係数を設定します。 次のいずれかの値を受け入れます。
シンプルな
単純なフィルター係数セット。
複雑な
より複雑なフィルター係数セット。
デフォルト値は 複雑な.
ディント
インターレース解除するフレームを指定します。 次のいずれかの値を受け入れます。
を すべてのフレームをインターレース解除し、
インターレース
インターレースとしてマークされたフレームのみをインターレース解除します。
デフォルト値は を.
波形
ビデオ波形モニター。
波形モニターは、色成分の強度をプロットします。 デフォルトでは輝度のみ。 各
波形の列は、ソースビデオのピクセルの列に対応します。
次のオプションを受け入れます。
モード、 m
「行」または「列」のいずれかになります。 デフォルトは「列」です。 行モードでは、上のグラフは
左側は色成分値0を表し、右側は値=を表します。
255.列モードでは、上面は色成分値= 0を表し、下面は色成分値=XNUMXを表します。
値=255を表します。
強度、 i
強度を設定します。 小さい値は、同じ値の数を見つけるのに役立ちます
輝度は入力行/列に分散されます。 デフォルト値は0.04です。 許可された
範囲は[0、1]です。
鏡、 r
ミラーリングモードを設定します。 0はミラーリングされていないことを意味し、1はミラーリングされていることを意味します。 ミラーモードでは、より高い
値は、「行」モードの場合は左側に、「列」の場合は上部に表示されます。
モード。 デフォルトは1(ミラーリング)です。
表示、 d
表示モードを設定します。 次の値を受け入れます。
オーバーレイ
グラフを除いて、「パレード」と同じ情報を表示します
色成分を表すものは、互いに直接重ね合わされます。
この表示モードを使用すると、相対的な相違点や類似点を簡単に見つけることができます。
同一であると思われる色成分の重なり合う領域、
ニュートラルホワイト、グレー、またはブラックとして。
パレード
「行」モードまたはXNUMXつで、色成分の個別のグラフを並べて表示します
「列」モードで他の下に。
この表示モードを使用すると、ハイライトの色かぶりを簡単に見つけることができます。
の上部と下部のグラフの輪郭を比較することにより、画像の影
各波形。 白、灰色、黒は完全に等しいという特徴があるので
画像の赤、緑、青の中立領域の量はXNUMXつ表示されます
ほぼ等しい幅/高さの波形。 そうでない場合、修正は簡単に実行できます
レベル調整を行うことにより、XNUMXつの波形。
デフォルトは「パレード」です。
コンポーネントは、 c
表示するカラーコンポーネントを設定します。 デフォルトは1で、これは輝度または赤のみを意味します
入力がRGB色空間の場合の色成分。 たとえば7に設定すると、
3つすべての(もしあれば)利用可能なカラーコンポーネントを表示します。
封筒、 e
なし
封筒はありません。これがデフォルトです。
インスタント
グラフに表示されるインスタントエンベロープ、最小値、最大値は簡単になります
小さな「ステップ」値でも表示されます。
ピーク
時間の経過とともにグラフに表示される最小値と最大値を保持します。 このようにあなたはすることができます
波形を常に見なくても、範囲外の値を見つけることができます。
ピーク+インスタント
ピークエンベロープとインスタントエンベロープを組み合わせたもの。
フィルタ、 f
ローパス
フィルタリングはありません。これがデフォルトです。
フラットな
ルーマとクロマが組み合わされています。
フラット
上記と同様ですが、青と赤の彩度の違いを示しています。
彩度
コロマのみを表示します。
アクロマ
上記と同様ですが、青と赤の彩度の違いを示しています。
カラー
波形に実際の色の値を表示します。
xbr
ピクセルアート用に設計されたxBR高品質倍率フィルターを適用します。 これ
一連のエッジ検出ルールに従います。を参照してください。
<http://www.libretro.com/forums/viewtopic.php?f = 6&t = 134>.
次のオプションを受け入れます。
n スケーリング寸法を設定します。「2xBR」の場合は2、「3xBR」の場合は3、「4xBR」の場合は4です。 デフォルトは3です。
ヤディフ
入力ビデオのインターレース解除(「yadif」は「さらに別のインターレース解除フィルター」を意味します)。
次のパラメータを受け入れます。
モード
採用するインターレースモード。 次のいずれかの値を受け入れます。
0, send_frame
フレームごとにXNUMXフレームを出力します。
1, 送信フィールド
フィールドごとにXNUMXフレームを出力します。
2, send_frame_nospatial
「send_frame」と同様ですが、空間インターレースチェックをスキップします。
3, send_field_nospatial
「send_field」と同様ですが、空間インターレースチェックをスキップします。
デフォルト値は「send_frame」です。
パリティ
入力インターレースビデオに対して想定される画像フィールドパリティ。 のいずれかを受け入れます
次の値:
0, tff
一番上のフィールドが最初であると仮定します。
1, BFF
下のフィールドが最初であると想定します。
-1、 オート
フィールドパリティの自動検出を有効にします。
デフォルト値は「auto」です。 インターレースが不明な場合、またはデコーダーが不明な場合
この情報をエクスポートすると、最初にトップフィールドが想定されます。
ディント
インターレース解除するフレームを指定します。 次のいずれかの値を受け入れます。
0, を
すべてのフレームをインターレース解除します。
1, インターレース
インターレースとしてマークされたフレームのみをインターレース解除します。
デフォルト値は「all」です。
ズームパン
ズーム&パン効果を適用します。
このフィルターは、次のオプションを受け入れます。
ズーム、 z
ズーム式を設定します。 デフォルトは1です。
x
y xおよびy式を設定します。 デフォルトは0です。
d 期間式をフレーム数で設定します。 これは、いくつの数を設定します
フレーム効果は、単一の入力画像に対して持続します。
s 出力画像サイズを設定します。デフォルトは「hd720」です。
各式には、次の定数を含めることができます。
in_w、 iw
入力幅。
in_h、 ih
入力の高さ。
out_w、 ow
出力幅。
out_h、 oh
出力の高さ。
in 入力フレーム数。
on 出力フレーム数。
x
y 現在の入力の「x」および「y」式から最後に計算された「x」および「y」の位置
フレーム。
px
py 前の入力フレームの最後の出力フレームの「x」と「y」、またはまだ存在しない場合は0
そのようなフレーム(最初の入力フレーム)。
ズーム
現在の入力フレームの「z」式から最後に計算されたズーム。
pズーム
前の入力フレームの最後の出力フレームの最後に計算されたズーム。
デュレーション
現在の入力フレームの出力フレームの数。 'd'式から計算
各入力フレーム。
期間
前の入力フレーム用に作成された出力フレームの数
a 有理数:入力幅/入力高さ
sar サンプルのアスペクト比
与える ディスプレイのアスペクト比
例
・1.5までズームインし、同時に画像の中央近くのある場所にパンします。
zoompan=z='min(zoom+0.0015,1.5)':d=700:x='if(gte(zoom,1.5),x,x+1/a)':y='if(gte(zoom,1.5),y,y+1)':s=640x360
・1.5までズームインし、常に画像の中央でパンします。
zoompan=z='min(zoom+0.0015,1.5)':d=700:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'
VIDEO SOURCES
以下は、現在利用可能なビデオソースの説明です。
バッファ
ビデオフレームをバッファリングし、フィルターチェーンで使用できるようにします。
このソースは、主にプログラムによる使用、特にインターフェイスを介した使用を目的としています。
で定義された libavfilter / vsrc_buffer.h.
次のパラメータを受け入れます。
ビデオサイズ
バッファリングされたビデオフレームのサイズ(幅と高さ)を指定します。 の構文について
このオプションは、 "ビデオ サイズ" in ffmpeg-utils マニュアル.
幅
入力ビデオの幅。
高さ
入力ビデオの高さ。
pix_fmt
バッファリングされたビデオフレームのピクセルフォーマットを表す文字列。 それはかもしれません
ピクセルフォーマットに対応する番号、またはピクセルフォーマット名。
タイムベース
バッファリングされたフレームのタイムスタンプが想定するタイムベースを指定します。
フレームレート
ビデオストリームに期待されるフレームレートを指定します。
pixel_aspect、 sar
入力ビデオのサンプル(ピクセル)アスペクト比。
sws_param
自動的に行われるスケールフィルターに使用するオプションのパラメーターを指定します
入力のサイズまたは形式で入力の変更が検出されたときに挿入されます。
例:
buffer=width=320:height=240:pix_fmt=yuv410p:time_base=1/24:sar=1
サイズが320x240でフォーマットのビデオフレームを受け入れるようにソースに指示します
「yuv410p」、タイムスタンプのタイムベースと正方形のピクセルとして1/24を想定(1:1のサンプルアスペクト
比)。 「yuv410p」という名前のピクセル形式は番号6に対応しているため、
列挙型AVPixelFormat定義 libavutil / pixfmt.h)、この例は以下に対応します:
buffer=size=320x240:pixfmt=6:time_base=1/24:pixel_aspect=1/1
または、オプションをフラット文字列として指定することもできますが、この構文は次のとおりです。
非推奨:
幅:高さ:pix_fmt:time_base.num:time_base.den:ピクセル_アスペクト.num:ピクセルアスペクト.den[:sws_param]
セルオート
基本セルオートマトンによって生成されたパターンを作成します。
セルオートマトンの初期状態は、 ファイル名,
パターン オプション。 このようなオプションが指定されていない場合、初期状態はランダムに作成されます。
新しいフレームごとに、ビデオの新しい行がセルラーの結果で埋められます
次世代のオートマトン。 フレーム全体が塗りつぶされたときの動作は、
スクロール オプションを選択します。
このソースは、次のオプションを受け入れます。
ファイル名、 f
指定されたセルオートマトンの初期状態、つまり開始行を読み取ります
ファイル。 ファイルでは、空白以外の各文字は生きているセルと見なされます。
newlineは行を終了し、ファイル内のそれ以降の文字は無視されます。
パターン、 p
指定されたセルオートマトンの初期状態、つまり開始行を読み取ります
文字列。
文字列内の空白以外の各文字は、生きているセル、改行と見なされます
行を終了し、文字列内のそれ以降の文字は無視されます。
割合、 r
ビデオレート、つまり25秒あたりに生成されるフレーム数を設定します。 デフォルトはXNUMXです。
random_fill_ratio、 比
最初のセルオートマトン行のランダム充填率を設定します。 フローティングです
0から1の範囲のポイント番号値は、デフォルトで1/PHIになります。
ファイルまたはパターンが指定されている場合、このオプションは無視されます。
random_seed、 シード
最初の行をランダムに埋めるためのシードを設定します。間に含まれる整数である必要があります
0およびUINT32_MAX。 指定されていない場合、または明示的に-1に設定されている場合、フィルターは次のことを試みます。
ベストエフォートベースで適切なランダムシードを使用します。
ルール
セルオートマトンルールを設定します。これは0〜255の範囲の数値です。デフォルト値
110です。
サイズ、 s
出力動画のサイズを設定します。 このオプションの構文については、 "ビデオ
サイズ" in ffmpeg-utils マニュアル.
If ファイル名 or パターン が指定されている場合、サイズはデフォルトでの幅に設定されます
指定された初期状態の行で、高さはに設定されています 幅 *ファイ。
If サイズ が設定されている場合、指定されたパターン文字列の幅が含まれている必要があります。
指定したパターンは、大きい方の行の中央に配置されます。
ファイル名またはパターン文字列が指定されていない場合、サイズ値はデフォルトで次のようになります。
「320x518」(ランダムに生成された初期状態に使用されます)。
スクロール
1に設定すると、出力のすべての行が終了したら、出力を上にスクロールします。
すでにいっぱいです。 0に設定すると、新しく生成された行が一番上の行に書き込まれます
下の行が埋められた直後。 デフォルトは1です。
start_full、 フル
1に設定すると、出力を出力する前に、生成された行で出力を完全に埋めます。
最初のフレーム。 これはデフォルトの動作であり、無効にすると値を0に設定します。
ステッチ
1に設定すると、左右の行の端をつなぎ合わせます。 これがデフォルトです
動作を無効にするには、値を0に設定します。
例
・から初期状態を読み取ります パターン、およびサイズ200x400の出力を指定します。
cellauto = f = pattern:s = 200x400
・幅200セル、塗りつぶし率2/3のランダムな初期行を生成します。
cellauto = ratio = 2/3:s = 200x200
・ルール18によって生成されたパターンを作成します。
幅100の最初の行:
cellauto = p = @ s = 100x400:full = 0:rule = 18
・より複雑な初期パターンを指定します。
cellauto = p ='@@ @ @@':s = 100x400:full = 0:rule = 18
マンデルブロ
マンデルブロ集合フラクタルを生成し、で指定された点に向かって徐々にズームします。
スタート_x と 開始_y.
このソースは、次のオプションを受け入れます。
end_pts
端末のpts値を設定します。 デフォルト値は400です。
エンドスケール
ターミナルスケール値を設定します。 浮動小数点値である必要があります。 デフォルト値は0.3です。
内側の
マンデルブロフラクタルを描画するために使用されるアルゴリズムである内部カラーリングモードを設定します
内部領域。
次のいずれかの値を想定します。
黒
ブラックモードを設定します。
収束
収束するまでの時間を表示します。
ミンコル
反復の原点に最も近いポイントに基づいて色を設定します。
期間
期間モードを設定します。
デフォルト値は ミンコル.
救済
ベイルアウト値を設定します。 デフォルト値は10.0です。
マキシター
レンダリングアルゴリズムによって実行される反復の最大値を設定します。 デフォルト値は
7189.
外側の
外側のカラーリングモードを設定します。 次のいずれかの値を想定します。
反復カウント
反復カウンドモードを設定します。
Normalized_iteration_count
正規化された反復カウントモードを設定します。
デフォルト値は Normalized_iteration_count.
割合、 r
25秒あたりのフレーム数として表されるフレームレートを設定します。 デフォルト値は「XNUMX」です。
サイズ、 s
フレームサイズを設定します。 このオプションの構文については、の「ビデオサイズ」セクションを確認してください。
ffmpeg-utilsマニュアル。 デフォルト値は「640x480」です。
開始スケール
初期スケール値を設定します。 デフォルト値は3.0です。
スタート_x
初期のx位置を設定します。 -100から100までの浮動小数点値である必要があります。
デフォルト値は-0.743643887037158704752191506114774です。
開始_y
初期のy位置を設定します。 -100から100までの浮動小数点値である必要があります。
デフォルト値は-0.131825904205311970493132056385139です。
mptestsrc
MPlayerテストフィルターによって生成されるように、さまざまなテストパターンを生成します。
生成されるビデオのサイズは固定されており、256x256です。 このソースは
特にエンコーディング機能のテストに。
このソースは、次のオプションを受け入れます。
割合、 r
ソースビデオのフレームレートを、あたりに生成されるフレーム数として指定します
XNUMX番目。 次の形式の文字列である必要があります フレームレート_番号/フレームレート_デン、整数
数値、浮動小数点数、または有効なビデオフレームレートの略語。 デフォルト
値は「25」です。
デュレーション、 d
ソースビデオの長さを設定します。 見る Time デュレーション in
ffmpeg-utils(1) マニュアル 受け入れられた構文について。
指定されていない場合、または表現された期間が負の場合、ビデオは
永遠に生成されます。
テスト t
実行するテストの番号または名前を設定します。 サポートされているテストは次のとおりです。
dc_luma
dc_chroma
freq_luma
周波数クロマ
アンプルマ
アンプクロマ
cbp
mv
ring1
ring2
を
デフォルト値は「all」で、すべてのテストのリストを循環します。
いくつかの例:
mptestsrc = t = dc_luma
「dc_luma」テストパターンを生成します。
frei0r_src
frei0rソースを提供します。
このフィルターのコンパイルを有効にするには、frei0rヘッダーをインストールして構成する必要があります
「--enable-frei0r」を含むFFmpeg。
このソースは、次のパラメーターを受け入れます。
サイズ
生成するビデオのサイズ。 このオプションの構文については、 "ビデオ
サイズ" in ffmpeg-utils マニュアル.
フレームレート
生成されたビデオのフレームレート。 それは形式の文字列である可能性があります NUM/日 または
フレームレートの略語。
フィルター名
ロードするfrei0rソースの名前。 frei0rとその方法に関する詳細については
パラメータを設定するには、 フレイ0r ビデオフィルターのドキュメントのセクション。
フィルタパラメータ
frei0rソースに渡すパラメーターの「|」で区切られたリスト。
たとえば、サイズが0x0でフレームレートが200のfrei200rpartik10lソースを生成するには
これは、オーバーレイフィルターのメイン入力にオーバーレイされます。
frei0r_src = size = 200x200:framerate = 10:filter_name = partik0l:filter_params =1234[オーバーレイ]; [in][オーバーレイ]オーバーレイ
生活
ライフパターンを生成します。
このソースは、ジョン・コンウェイのライフゲームの一般化に基づいています。
ソース入力はライフグリッドを表し、各ピクセルはXNUMXつに入ることができるセルを表します
生きているか死んでいるかのXNUMXつの可能な状態の。 すべてのセルは、そのXNUMXつの隣接セルと相互作用します。
これは、水平、垂直、または対角線上に隣接するセルです。
各インタラクションで、グリッドは採用されたルールに従って進化します。
細胞を生き続けるか生まれさせる隣接する生きている細胞の数。 The ルール オプション
採用するルールを指定できます。
このソースは、次のオプションを受け入れます。
ファイル名、 f
グリッドの初期状態を読み取るファイルを設定します。 ファイルでは、各非
空白文字は生きているセルと見なされ、改行は
各行の終わり。
このオプションが指定されていない場合、初期グリッドはランダムに生成されます。
割合、 r
ビデオレート、つまり25秒あたりに生成されるフレーム数を設定します。 デフォルトはXNUMXです。
random_fill_ratio、 比
初期ランダムグリッドのランダム塗りつぶし率を設定します。 浮動小数点数です
0から1の範囲の値、デフォルトは1/PHIです。 ファイルが指定されている場合は無視されます。
random_seed、 シード
最初のランダムグリッドを埋めるためのシードを設定します。間に含まれる整数である必要があります
0およびUINT32_MAX。 指定されていない場合、または明示的に-1に設定されている場合、フィルターは次のことを試みます。
ベストエフォートベースで適切なランダムシードを使用します。
ルール
ライフルールを設定します。
ルールは「S」の種類のコードで指定できますNS/BNB"、 どこ NS と NB
0〜8の範囲の数字のシーケンス、 NS 生きている隣接セルの数を指定します
生きている細胞を生き続けるようにする、そして NB 生きている隣接セルの数
死んだ細胞を生かす(つまり「生まれる」)。 「s」と「b」はその場で使用できます
それぞれ「S」と「B」の
または、18ビット整数でルールを指定することもできます。 上位9ビットは
生きているネイバーの数ごとに生きている場合、次のセルの状態をエンコードするために使用されます
セルの下位ビットは、新しいセルを「生成」するためのルールを指定します。 高階ビット
より多くの隣接セルをエンコードします。 たとえば、番号6153 =
「(12 << 9)+9」は、12の存続規則と9のボルンの規則を指定します。これは対応します。
「S23/B03」へ。
デフォルト値は「S23/B3」で、これはコンウェイのオリジナルのライフルールゲームであり、
隣接する生存細胞が2つまたは3つある場合は細胞を生存させ、次の場合は新しい細胞が生まれます。
死んだ細胞の周りにはXNUMXつの生きている細胞があります。
サイズ、 s
出力動画のサイズを設定します。 このオプションの構文については、 "ビデオ
サイズ" in ffmpeg-utils マニュアル.
If ファイル名 が指定されている場合、サイズはデフォルトで入力と同じサイズに設定されます
ファイル。 もしも サイズ が設定されている場合、入力ファイルで指定されたサイズが含まれている必要があり、
そのファイルで定義された最初のグリッドは、結果として得られるより大きな領域の中央に配置されます。
ファイル名が指定されていない場合、サイズ値はデフォルトで「320x240」になります(
ランダムに生成された初期グリッド)。
ステッチ
1に設定されている場合は、左右のグリッドエッジをステッチし、上下をステッチします。
エッジも。 デフォルトは1です。
モールド
セルモールド速度を設定します。 設定されている場合、デッドセルは 死の色 〜へ 型の色 また、
のステップ モールド. モールド 0から255までの値を持つことができます。
ライフカラー
生きている(または生まれたばかりの)細胞の色を設定します。
死の色
死んだ細胞の色を設定します。 もしも モールド が設定されている場合、これは表現に使用される最初の色です
死んだ細胞。
型の色
間違いなく死んでカビの生えた細胞のために、カビの色を設定します。
これらの3つのカラーオプションの構文については、ffmpeg-utilsの「Color」セクションを確認してください。
マニュアル。
例
・からグリッドを読み取ります パターン、サイズ300x300ピクセルのグリッドの中央に配置します。
life = f = pattern:s = 300x300
・200/200の塗りつぶし率で、サイズ2x3のランダムグリッドを生成します。
life = ratio = 2/3:s = 200x200
・ランダムに生成されたグリッドを展開するためのカスタムルールを指定します。
ライフ=ルール=S14/ B34
・スローデス効果(カビ)を使用した完全な例 再生する:
ffplay -f lavfi life=s=300x200:mold=10:r=60:ratio=0.1:death_color=#C83232:life_color=#00ff00,scale=1200:800:flags=16
allrgb、 allyuv、 色、 haldclutsrc、 nullsrc、 rgbtestsrc、 smptebars、 smptehdbars、 テストコード
「allrgb」ソースは、すべてのrgbカラーのサイズ4096x4096のフレームを返します。
「allyuv」ソースは、すべてのyuvカラーのサイズ4096x4096のフレームを返します。
「カラー」ソースは、均一な色の入力を提供します。
「haldclutsrc」ソースは、アイデンティティHaldCLUTを提供します。 も参照してください 片割れ フィルタ。
「nullsrc」ソースは、未処理のビデオフレームを返します。 主に採用するのに便利です
分析/デバッグツールで、または入力データを無視するフィルターのソースとして。
「rgbtestsrc」ソースは、RGBとBGRの検出に役立つRGBテストパターンを生成します
問題。 上から下に赤、緑、青のストライプが表示されます。
「smptebars」ソースは、SMPTEエンジニアリングに基づいてカラーバーパターンを生成します
ガイドラインEG1-1990。
「smptehdbars」ソースは、SMPTERP219-2002に基づいてカラーバーパターンを生成します。
「testsrc」ソースは、テストビデオパターンを生成し、カラーパターン、スクロールを表示します
グラデーションとタイムスタンプ。 これは主にテスト目的を目的としています。
ソースは次のパラメータを受け入れます。
色、 c
ソースの色を指定します。「カラー」ソースでのみ使用できます。 構文について
このオプションについては、ffmpeg-utilsマニュアルの「Color」セクションを確認してください。
レベル
「haldclutsrc」ソースでのみ使用可能なHaldCLUTのレベルを指定します。 A
「N」のレベルは、アイデンティティとして使用される「N * N*N」ピクセルによる「N*N*N」の画像を生成します
3Dルックアップテーブルのマトリックス。 各コンポーネントは「1/(N * N)」スケールでコード化されています。
サイズ、 s
ソースビデオのサイズを指定します。 このオプションの構文については、 "ビデオ
サイズ" in ffmpeg-utils マニュアル。 デフォルト値は「320x240」です。
このオプションは、「haldclutsrc」フィルターでは使用できません。
割合、 r
ソースビデオのフレームレートを、あたりに生成されるフレーム数として指定します
XNUMX番目。 次の形式の文字列である必要があります フレームレート_番号/フレームレート_デン、整数
数値、浮動小数点数、または有効なビデオフレームレートの略語。 デフォルト
値は「25」です。
sar ソースビデオのサンプルアスペクト比を設定します。
デュレーション、 d
ソースビデオの長さを設定します。 見る Time デュレーション in
ffmpeg-utils(1) マニュアル 受け入れられた構文について。
指定されていない場合、または表現された期間が負の場合、ビデオは
永遠に生成されます。
小数、 n
タイムスタンプに表示する小数点以下の桁数を設定します。これは「testsrc」でのみ使用できます。
ソース。
表示されるタイムスタンプ値は、元のタイムスタンプ値に対応します
指定された値の10の累乗を掛けます。 デフォルト値は0です。
たとえば、次のとおりです。
testsrc = duration = 5.3:size = qcif:rate = 10
サイズ5.3x176、フレームレート144秒のビデオを生成します
毎秒10フレームの。
次のグラフの説明では、不透明度が0.2の赤いソースが生成されます。
サイズは「qcif」で、フレームレートは10秒あたりXNUMXフレームです。
color = c =[メール保護]:s = qcif:r = 10
入力内容を無視する場合は、「nullsrc」を使用できます。 次のコマンド
「geq」フィルターを使用して、輝度平面にノイズを生成します。
nullsrc = s = 256x256、geq =ランダム(1)* 255:128:128
コマンド
「カラー」ソースは、次のコマンドをサポートしています。
c, カラー
作成した画像の色を設定します。 対応するのと同じ構文を受け入れます カラー
オプションを選択します。
VIDEO シンク
以下は、現在利用可能なビデオシンクの説明です。
バッファシンク
ビデオフレームをバッファリングし、フィルターグラフの最後で使用できるようにします。
このシンクは、主にプログラムでの使用を目的としており、特にインターフェイスを介して使用することを目的としています。
で定義された libavfilter / buffersink.h またはオプションシステム。
着信を定義するAVBufferSinkContext構造体へのポインターを受け入れます
バッファのフォーマット。不透明なパラメータとして「avfilter_init_filter」に渡されます。
初期化。
ヌルシンク
ヌルビデオシンク:入力ビデオには何もしません。 主に
テンプレートおよび分析/デバッグツールで使用します。
マルチメディア FILTERS
以下は、現在利用可能なマルチメディアフィルターの説明です。
位相計
入力オーディオをビデオ出力に変換し、オーディオフェーズを表示します。
フィルタは次のオプションを受け入れます。
割合、 r
出力フレームレートを設定します。 デフォルト値は25です。
サイズ、 s
出力のビデオサイズを設定します。 このオプションの構文については、 "ビデオ
サイズ" in ffmpeg-utils マニュアル。 デフォルト値は「800x400」です。
rc
gc
bc 赤、緑、青のコントラストを指定します。 デフォルト値は2、7、および1です。許容範囲
は「[0]」です。
MPC メジアンフェーズの描画に使用する色を設定します。 色が「なし」の場合、
デフォルトでは、位相の中央値は描画されません。
フィルタは、平均を表すフレームメタデータ「lavfi.aphasemeter.phase」もエクスポートします
現在のオーディオフレームの位相。 値の範囲は「[-1、1]」です。 「-1」は左右を意味します
チャネルは完全に位相がずれており、1はチャネルが位相が合っていることを意味します。
ベクトルスコープ
入力オーディオを、オーディオベクトルスコープを表すビデオ出力に変換します。
このフィルターは、ステレオオーディオストリームのチャンネル間の差を測定するために使用されます。 A
同一の左右の信号で構成されるモノラル信号は、まっすぐになります
垂直線。 ステレオセパレーションは、この線からの逸脱として表示され、
リサージュ図形。 直線(またはそれからの逸脱)であるが水平線が表示される場合これ
左右のチャネルの位相がずれていることを示します。
フィルタは次のオプションを受け入れます。
モード、 m
ベクトルスコープモードを設定します。
使用可能な値は次のとおりです。
リサージュ
リサージュは45度回転しました。
リサジュー_xy
上記と同じですが、回転しません。
極性の
円の半分に似た形。
デフォルト値は リサージュ.
サイズ、 s
出力のビデオサイズを設定します。 このオプションの構文については、 "ビデオ
サイズ" in ffmpeg-utils マニュアル。 デフォルト値は「400x400」です。
割合、 r
出力フレームレートを設定します。 デフォルト値は25です。
rc
gc
bc
ac 赤、緑、青、アルファのコントラストを指定します。 デフォルト値は40、160、80および
255.許可される範囲は「[0]」です。
rf
gf
bf
af 赤、緑、青、アルファフェードを指定します。 デフォルト値は15、10、5、および5です。
許容範囲は「[0]」です。
ズーム
ズーム率を設定します。 デフォルト値は1です。許容範囲は「[1、10]」です。
例
・を使用した完全な例 再生する:
ffplay -f lavfi'amovie = input.mp3、asplit [a] [out1];
[a] avectorscope=zoom=1.3:rc=2:gc=200:bc=10:rf=1:gf=8:bf=7 [out0]'
連結
オーディオストリームとビデオストリームを連結し、それらを次々に結合します。
フィルタは、同期されたビデオおよびオーディオストリームのセグメントで機能します。 すべてのセグメントは
各タイプのストリームの数は同じであり、それはストリームの数にもなります
出力時。
フィルタは次のオプションを受け入れます。
n セグメント数を設定します。 デフォルトは2です。
v 出力ビデオストリームの数を設定します。これは、のビデオストリームの数でもあります。
各セグメント。 デフォルトは1です。
a 出力オーディオストリームの数を設定します。これは、のオーディオストリームの数でもあります。
各セグメント。 デフォルトは0です。
安全でない
安全でないモードをアクティブにします。セグメントの形式が異なる場合でも失敗しないでください。
フィルターには v+a 出力:最初 v ビデオ出力、次に a オーディオ出力。
全 nx(v+a)入力:最初に、最初のセグメントの入力を、
出力、次にXNUMX番目のセグメントの入力など。
さまざまな理由により、関連するストリームの継続時間は必ずしも同じではありません。
コーデックのフレームサイズやずさんなオーサリングを含みます。 そのため、関連する同期
ストリーム(ビデオとそのオーディオトラックなど)は一度に連結する必要があります。 コンキャット
フィルタは、各セグメント(最後のセグメントを除く)で最も長いストリームの期間を使用します。
必要に応じて、短いオーディオストリームを無音で埋めます。
このフィルターが正しく機能するには、すべてのセグメントがタイムスタンプ0から開始する必要があります。
対応するすべてのストリームは、すべてのセグメントで同じパラメーターを持っている必要があります。 フィルタリング
システムは、ビデオストリームの一般的なピクセル形式と一般的なピクセル形式を自動的に選択します
オーディオストリームのサンプルフォーマット、サンプルレート、チャンネルレイアウト、その他の設定など
解決策として、ユーザーが明示的に変換する必要があります。
さまざまなフレームレートを使用できますが、出力時のフレームレートは変動します。 なれ
それを処理するように出力ファイルを構成してください。
例
・オープニング、エピソード、エンディングをすべてバイリンガルバージョンで連結します(ビデオ
ストリーム0、ストリーム1および2のオーディオ):
ffmpeg-iopening.mkv-iエピソード.mkv-iending.mkv-filter_complex \
'[0:0] [0:1] [0:2] [1:0] [1:1] [1:2] [2:0] [2:1] [2:2]
concat = n = 3:v = 1:a = 2 [v] [a1] [a2]'\
-map'[v]' -map'[a1]' -map'[a2]' output.mkv
・(a)ムービーを使用して、オーディオとビデオを別々に処理するXNUMXつの部分を連結します
ソース、および解像度の調整:
movie = part1.mp4、scale = 512:288 [v1]; amovie = part1.mp4 [a1];
movie = part2.mp4、scale = 512:288 [v2]; amovie = part2.mp4 [a2];
[v1] [v2] concat [outv]; [a1] [a2] concat = v = 0:a = 1 [outa]
オーディオストリームとビデオストリームが同期しない場合、ステッチで非同期が発生することに注意してください
最初のファイルの期間はまったく同じです。
ebur128
EBUR128スキャナーフィルター。 このフィルターは、オーディオストリームを入力として受け取り、それを出力します
変更なし。 デフォルトでは、Momentaryを使用して10Hzの周波数でメッセージをログに記録します
ラウドネス(「M」で識別)、短期ラウドネス(「S」)、統合ラウドネス(「I」)、および
ラウドネス範囲(「LRA」)。
フィルタにはビデオ出力もあります( ビデオ オプション)リアルタイムグラフを使用して
ラウドネスの進化を観察します。 グラフィックには、上記のログメッセージが含まれています。
したがって、このオプションが設定されている場合、詳細ログが設定されていない限り、印刷されなくなります。
メインのグラフ領域には、短期間のラウドネス(3秒の分析)と、
右側のゲージは瞬間的なラウドネス(400ミリ秒)用です。
ラウドネス推奨EBUR128の詳細については
<http://tech.ebu.ch/loudness>.
フィルタは次のオプションを受け入れます。
ビデオ
ビデオ出力をアクティブにします。 このオプションがであるかどうかにかかわらず、オーディオストリームは変更されずに渡されます
セットまたはいいえ。 ビデオストリームは、アクティブ化された場合、最初の出力ストリームになります。 デフォルトは
0.
サイズ
ビデオサイズを設定します。 このオプションはビデオ専用です。 このオプションの構文については、
チェックする "ビデオ サイズ" in ffmpeg-utils マニュアル。 デフォルトおよび最小
解像度は「640x480」です。
メーター
EBUスケールメーターを設定します。 デフォルトは9です。一般的な値はそれぞれ9と18です。
EBUスケールメーター+9およびEBUスケールメーター+18。 この範囲内の他の整数値
許可されています。
メタデータインジェクションを設定します。 1に設定すると、オーディオ入力は100ミリ秒にセグメント化されます
出力フレーム。各フレームには、メタデータにさまざまなラウドネス情報が含まれています。 全て
メタデータキーのプレフィックスは「lavfi.r128」です。
デフォルトは0です。
フレームログ
フレームロギングレベルを強制します。
使用可能な値は次のとおりです。
info
情報ロギングレベル
詳細
詳細なログレベル
デフォルトでは、ロギングレベルはに設定されています info。 もし ビデオ または オプションは
セット、それはに切り替わります 詳細.
ピーク
ピークモードを設定します。
使用可能なモードは累積できます(オプションは「フラグ」タイプです)。 可能な値は次のとおりです。
なし
ピークモードを無効にします(デフォルト)。
サンプル
サンプルピークモードを有効にします。
より高いサンプル値を探す単純なピークモード。 次のメッセージをログに記録します
サンプルピーク(「SPK」で識別)。
true
トゥルーピークモードを有効にします。
有効にすると、ピークルックアップは入力ストリームのオーバーサンプリングバージョンで実行されます
ピーク精度を向上させます。 真のピークのメッセージをログに記録します。 (「TPK」で識別)
フレームごとの真のピーク(「FTPK」で識別)。 このモードでは、
「libswresample」。
例
・を使用したリアルタイムグラフ 再生する、EBUスケールメーター付き+18:
ffplay -f lavfi -i "amovie = input.mp3、ebur128 = video = 1:meter = 18 [out0] [out1]"
・で分析を実行します ffmpeg:
ffmpeg -nostats -i input.mp3 -filter_complex ebur128 -f null-
間を空ける、 インターリーブ
複数の入力からのフレームを一時的にインターリーブします。
「インターリーブ」はビデオ入力で機能し、「インターリーブ」はオーディオで機能します。
これらのフィルターは、複数の入力からフレームを読み取り、キューに入れられた最も古いフレームを
出力。
入力ストリームには、明確に定義された、単調に増加するフレームタイムスタンプ値が必要です。
XNUMXつのフレームを出力に送信するには、これらのフィルターは少なくともXNUMXつのフレームをエンキューする必要があります
入力ごとに、XNUMXつの入力がまだ終了していない場合は機能せず、
着信フレームを受信します。
たとえば、XNUMXつの入力が常に入力をドロップする「選択」フィルターである場合を考えてみます。
フレーム。 「インターリーブ」フィルターはその入力からの読み取りを継続しますが、
入力がストリーム終了信号を送信するまで、出力に新しいフレームを送信できます。
また、入力の同期に応じて、XNUMXつの入力の場合にフィルターはフレームをドロップします
他のフレームよりも多くのフレームを受信し、キューはすでにいっぱいになっています。
これらのフィルターは、次のオプションを受け入れます。
nb_inputs、 n
異なる入力の数を設定します。デフォルトでは2です。
例
・を使用して異なるストリームに属するフレームをインターリーブします ffmpeg:
ffmpeg -i bambi.avi -i pr0n.mkv -filter_complex "[0:v] [1:v] interleave" out.avi
・ちらつきブラー効果を追加します。
select ='if(gt(ランダム(0)、0.2)、1、2)':n = 2 [tmp]、boxblur = 2:2、[tmp]インターリーブ
パーマ、 パーマ
出力フレームの読み取り/書き込み権限を設定します。
これらのフィルターは、主に開発者が次のフィルターでダイレクトパスをテストすることを目的としています。
フィルタグラフで。
フィルタは次のオプションを受け入れます。
モード
権限モードを選択します。
次の値を受け入れます。
なし
何もしない。 これがデフォルトです。
ro すべての出力フレームを読み取り専用に設定します。
rw すべての出力フレームを直接書き込み可能に設定します。
トグル
フレームを書き込み可能の場合は読み取り専用にし、読み取り専用の場合は書き込み可能にします。
ランダム
各出力フレームを読み取り専用または書き込み可能にランダムに設定します。
シード
のシードを設定します ランダム モード、0とXNUMXの間に含まれる整数でなければなりません
「UINT32_MAX」。 指定されていない場合、または明示的に「-1」に設定されている場合、フィルターは次のことを試みます。
ベストエフォートベースで適切なランダムシードを使用します。
注:許可フィルターと次のフィルターの間に自動挿入フィルターの場合、
次のフィルターでは、許可が期待どおりに受信されない可能性があります。 を挿入する
形式でアーカイブしたプロジェクトを保存します. or フォーマットする perms/apermsフィルターの前にフィルターをかけるとこの問題を回避できます。
選択する、 選択
出力に渡すフレームを選択します。
このフィルターは、次のオプションを受け入れます。
expr、 e
入力フレームごとに評価される式を設定します。
式がゼロと評価された場合、フレームは破棄されます。
評価結果が負またはNaNの場合、フレームは最初の出力に送信されます。
それ以外の場合は、入力を想定して、インデックス「ceil(val)-1」で出力に送信されます。
インデックスは0から始まります。
たとえば、値1.2は、インデックス "ceil(1.2)-1 =2-1=の出力に対応します。
1 "、それはXNUMX番目の出力です。
出力、 n
出力数を設定します。 選択したフレームの送信先の出力は、
評価の結果。 デフォルト値は1です。
式には、次の定数を含めることができます。
n 0から始まる、フィルタリングされたフレームの(シーケンシャル)番号。
選択された_n
選択したフレームの(順次)番号。0から始まります。
prev_selected_n
最後に選択されたフレームの連番。 未定義の場合はNANです。
TB 入力タイムスタンプのタイムベース。
PTS フィルタリングされたビデオフレームのPTS(Presentation TimeStamp)は、次のように表されます。 TB 単位
未定義の場合はNANです。
t フィルタリングされたビデオフレームのPTS。秒単位で表されます。 未定義の場合はNANです。
prev_pts
以前にフィルタリングされたビデオフレームのPTS。 未定義の場合はNANです。
prev_selected_pts
以前にフィルタリングされた最後のビデオフレームのPTS。 未定義の場合はNANです。
prev_selected_t
最後に選択されたビデオフレームのPTS。 未定義の場合はNANです。
start_pts
ビデオの最初のビデオフレームのPTS。 未定義の場合はNANです。
スタート_t
ビデオの最初のビデオフレームの時間。 未定義の場合はNANです。
ピクトタイプ (ビデオ のみ)
フィルタリングされたフレームのタイプ。 次のいずれかの値を想定できます。
I
P
B
S
SI
SP
BI
インターレースタイプ (ビデオ のみ)
フレームインターレースタイプ。 次のいずれかの値を想定できます。
プログレッシブ
フレームはプログレッシブです(インターレースではありません)。
トップファースト
フレームはトップフィールドファーストです。
ボトムファースト
フレームはボトムフィールドファーストです。
消費されたサンプル_n (オーディオ のみ)
現在のフレームの前に選択されたサンプルの数
サンプル_n (オーディオ のみ)
現在のフレームのサンプル数
サンプルレート (オーディオ のみ)
入力サンプルレート
キー フィルタリングされたフレームがキーフレームの場合は1、それ以外の場合は0です。
投稿する フィルタリングされたフレームのファイル内の位置。情報が利用できない場合は-1
(例:合成ビデオの場合)
シーン (ビデオ のみ)
新しいシーンを示す0から1までの値。 低い値は低い確率を反映します
現在のフレームが新しいシーンを導入する場合、値が高いほど現在のシーンを意味します
フレームはXNUMXつである可能性が高くなります(以下の例を参照)
選択式のデフォルト値は「1」です。
例
・入力のすべてのフレームを選択します。
select
上記の例は次と同じです。
select = 1
・すべてのフレームをスキップします。
select = 0
・Iフレームのみを選択します。
select ='eq(pict_type \、I)'
・100ごとにXNUMXつのフレームを選択します。
select ='not(mod(n \、100))'
・10〜20の時間間隔に含まれるフレームのみを選択します。
select = between(t \、10 \、20)
・10〜20の時間間隔に含まれるIフレームのみを選択します。
select = between(t \、10 \、20)* eq(pict_type \、I)
・最小距離が10秒のフレームを選択します。
select ='isnan(prev_selected_t)+ gte(t-prev_selected_t \、10)'
・aselectを使用して、サンプル数が100を超えるオーディオフレームのみを選択します。
aselect ='gt(samples_n \、100)'
・最初のシーンのモザイクを作成します。
ffmpeg -i video.avi -vf select ='gt(scene \、0.4)'、scale = 160:120、tile -frames:v 1 Preview.png
比較 シーン 0.3から0.5の間の値に対しては、一般的に正しい選択です。
・偶数フレームと奇数フレームを別々の出力に送信し、それらを構成します。
select = n = 2:e ='mod(n、2)+1'[奇数][偶数]; [奇数]pad= h = 2 * ih [tmp]; [tmp][偶数]overlay= y = h
sendcmd、 asendcmd
フィルタグラフのフィルタにコマンドを送信します。
これらのフィルターは、フィルターグラフ内の他のフィルターに送信されるコマンドを読み取ります。
「sendcmd」はXNUMXつのビデオフィルターの間に挿入する必要があり、「asendcmd」はXNUMXつのビデオフィルターの間に挿入する必要があります
XNUMXつのオーディオフィルターですが、それ以外は同じように機能します。
コマンドの指定は、フィルター引数で指定できます。 コマンド
オプション、またはによって指定されたファイル内 ファイル名 オプションを選択します。
これらのフィルターは、次のオプションを受け入れます。
コマンド、 c
読み取って他のフィルターに送信するコマンドを設定します。
ファイル名、 f
読み取って他のフィルターに送信するコマンドのファイル名を設定します。
コマンド 構文
コマンドの説明は、一連の間隔指定で構成され、
その間隔に関連する特定のイベントが発生したときに実行されるコマンドのリスト。
発生するイベントは通常、特定の時間に出入りする現在のフレーム時間です。
間隔。
間隔は、次の構文で指定されます。
[- ] ;
時間間隔は、 開始 と 終わり 回。 終わり オプションでデフォルト
最大時間まで。
現在のフレーム時間は、に含まれている場合、指定された間隔内であると見なされます
間隔[開始, 終わり)、つまり、時間が次の時間以上になる場合 開始 とです。
未満 終わり.
コマンド 「、」で区切られたXNUMXつ以上のコマンド仕様のシーケンスで構成されます。
その間隔に関連しています。 コマンド仕様の構文は次のように与えられます。
[ ]
FLAGS オプションであり、時間間隔に関連するイベントのタイプを指定します。
指定されたコマンドの送信を有効にします。これは、null以外の識別子フラグのシーケンスである必要があります。
「+」または「|」で区切る「[」と「]」で囲まれています。
次のフラグが認識されます。
入力します
このコマンドは、現在のフレームのタイムスタンプが指定された間隔に入ると送信されます。 の
つまり、コマンドは、前のフレームのタイムスタンプが
与えられた間隔、そして現在はです。
残す
このコマンドは、現在のフレームのタイムスタンプが指定された間隔を離れたときに送信されます。 の
つまり、コマンドは前のフレームのタイムスタンプが指定されたときに送信されます
間隔、および現在はありません。
If FLAGS が指定されていない場合、デフォルト値の「[enter]」が想定されます。
TARGET コマンドのターゲットを指定します。通常は、フィルタークラスの名前または
特定のフィルターインスタンス名。
COMMAND ターゲットフィルターのコマンドの名前を指定します。
ARG オプションであり、指定された引数のオプションのリストを指定します COMMAND.
ある間隔指定と別の間隔指定の間、空白、または文字のシーケンス
「#」で始まり、行末までは無視され、コメントに注釈を付けるために使用できます。
コマンド仕様構文の簡略化されたBNFの説明は次のとおりです。
::="入力"| "離れる"
:: = [(+ | "|") ]
:: = ["[" "]"] [ ]
:: = [、 ]
:: = [- ]
:: = [; ]
例
・4番目のXNUMXでオーディオテンポの変更を指定します。
asendcmd = c = '4.0 atempo tempo 1.5'、atempo
・ファイル内のdrawtextおよびhueコマンドのリストを指定します。
#5〜10の間隔でテキストを表示
5.0-10.0 [enter] drawtext reinit'fontfile = FreeSerif.ttf:text = hello world'、
[残す]drawtextreinit'fontfile = FreeSerif.ttf:text =';
#15〜20の間隔で画像の彩度を下げる
15.0-20.0[入力]色相0、
[入力]drawtextreinit'fontfile = FreeSerif.ttf:text = nocolor'、
[残す]色相1
[残す]drawtextreinit'fontfile = FreeSerif.ttf:text = color';
#時間25から開始して、指数関数的な飽和フェードアウト効果を適用します
25[入力]huesexp(25-t)
ファイルに保存されている上記のコマンドリストを読み取って処理できるようにするフィルターグラフ
テスト.cmd、で指定できます:
sendcmd = f = test.cmd、drawtext = fontfile = FreeSerif.ttf:text =''、hue
setpts、 セットポイント
入力フレームのPTS(プレゼンテーションタイムスタンプ)を変更します。
「setpts」はビデオフレームで機能し、「asetpts」はオーディオフレームで機能します。
このフィルターは、次のオプションを受け入れます。
式
タイムスタンプを作成するためにフレームごとに評価される式。
式はevalAPIを介して評価され、次の定数を含めることができます。
フレームレート
フレームレート、一定のフレームレートのビデオに対してのみ定義
PTS 入力のプレゼンテーションタイムスタンプ
N ビデオの入力フレームの数または消費されたサンプルの数ではなく、
0から始まるオーディオの現在のフレームを含みます。
NB_CONSUMED_SAMPLES
現在のフレームを含まない、消費されたサンプルの数(オーディオのみ)
NB_SAMPLES、 S
現在のフレームのサンプル数(オーディオのみ)
サンプルレート、 SR
オーディオサンプルレート。
スタートポイント
最初のフレームのPTS。
開始
最初のフレームの秒単位の時間
インターレース
現在のフレームがインターレースされているかどうかを示します。
T 現在のフレームの秒単位の時間
POS フレームのファイル内の元の位置、または現在の位置が未定義の場合は未定義
フレーム
PREV_INPTS
前の入力PTS。
PREV_INT
秒単位の前の入力時間
PREV_OUTPTS
前の出力PTS。
PREV_OUTT
以前の出力時間(秒単位)
RTCTIME
マイクロ秒単位のウォールクロック(RTC)時間。 これは非推奨です。使用してください 時間(0)代わりに。
RTCスタート
映画の開始時のウォールクロック(RTC)時間(マイクロ秒単位)。
TB 入力タイムスタンプのタイムベース。
例
・ゼロからPTSのカウントを開始します
setpts = PTS-STARTPTS
・高速モーション効果を適用します。
setpts = 0.5 * PTS
・スローモーション効果を適用します。
setpts = 2.0 * PTS
・毎秒25フレームの固定レートを設定します。
setpts = N /(25 * TB)
・ジッターを使用して固定レートを25fpsに設定します。
setpts = '1 /(25 * TB)*(N + 0.05 * sin(N * 2 * PI / 25))'
・入力PTSに10秒のオフセットを適用します。
setpts = PTS + 10 / TB
・「ライブソース」からタイムスタンプを生成し、現在のタイムベースにリベースします。
setpts ='(RTCTIME-RTCSTART)/(TB * 1000000)'
・サンプルをカウントしてタイムスタンプを生成します。
asetpts = N / SR / TB
settb、 設定
出力フレームのタイムスタンプに使用するタイムベースを設定します。 主にテストに役立ちます
タイムベース構成。
次のパラメータを受け入れます。
expr、 tb
出力タイムベースに評価される式。
の値 tb 有理数を表す算術式です。 式はできます
定数「AVTB」(デフォルトのタイムベース)、「intb」(入力タイムベース)、および「sr」が含まれます
(サンプルレート、オーディオのみ)。 デフォルト値は「intb」です。
例
・タイムベースを1/25に設定します。
settb = expr = 1/25
・タイムベースを1/10に設定します。
settb = expr = 0.1
・タイムベースを1001/1000に設定します。
settb = 1 + 0.001
・タイムベースを2*intbに設定します。
settb = 2 * intb
・デフォルトのタイムベース値を設定します。
settb = AVTB
ショーcqt
入力オーディオを周波数スペクトルを対数で表すビデオ出力に変換します
(Brown-Pucketteアルゴリズムで定数Q変換を使用)、楽音階で、
E0からD#10(10オクターブ)。
フィルタは次のオプションを受け入れます。
ボリューム
変換ボリューム(乗数)式を指定します。 式には次のものを含めることができます
変数:
周波数、 周波数、 f
変換が評価される頻度
タイムクランプ、 tc
タイムクランプオプションの値
および機能:
a_weighting(f)
等ラウドネスの加重
b_weighting(f)
等ラウドネスのB重み付け
c_weighting(f)
等ラウドネスのC重み付け
デフォルト値は16です。
長さ
変換長の式を指定します。 式には変数を含めることができます。
周波数、 周波数、 f
変換が評価される頻度
タイムクランプ、 tc
タイムクランプオプションの値
デフォルト値は「384/f * tc /(384 / f + tc)」です。
タイムクランプ
変換タイムクランプを指定します。 低周波数では、精度の間にトレードオフがあります
時間領域と周波数領域で。 タイムクランプが低い場合、時間領域のイベントは
より正確に表現されます(高速バスドラムなど)。それ以外の場合は、周波数のイベント
ドメインはより正確に表現されます(ベースギターなど)。 許容値は[0.1、
1.0]。 デフォルト値は0.17です。
係数クランプ
変換係数を指定します。 coeffclampが低い場合、変換はより正確になります。
それ以外の場合、変換は高速です。 許容値は[0.1、10.0]です。 デフォルト値は1.0です。
ガンマ
ガンマを指定します。 ガンマが低いとスペクトルのコントラストが高くなり、ガンマが高いと
より広い範囲を持つスペクトル。 許容値は[1.0、7.0]です。 デフォルト値は3.0です。
gamma2
棒グラフのガンマを指定します。 許容値は[1.0、7.0]です。 デフォルト値は1.0です。
フォントファイル
freetypeで使用するフォントファイルを指定します。 指定しない場合は、埋め込みフォントを使用してください。
フォントの色
フォントの色表現を指定します。 これは返されるはずの算術式です
整数値0xRRGGBB。 式には変数を含めることができます。
周波数、 周波数、 f
変換が評価される頻度
タイムクランプ、 tc
タイムクランプオプションの値
および機能:
midi(f)
周波数fのMIDI番号、いくつかのMIDI番号: E0(16) C1(24) C2(36) A4(69)
処方箋)、 g(x)、 b(x)
強度xの赤、緑、青の値
デフォルト値は"st(0、(midi(f)-59.5)/ 12); st(1、if(between(ld(0)、0,1)、
0.5-0.5 * cos(2 * PI *ld(0))、0)); r(1ld(1))+ b(ld(1))」
fullhd
1(デフォルト)に設定されている場合、ビデオサイズは1920x1080(フルHD)であり、0に設定されている場合、
ビデオサイズは960x540です。 このオプションを使用して、CPU使用率を低くします。
FPS ビデオfpsを指定します。 デフォルト値は25です。
カウント
フレームあたりの変換数を指定して、XNUMX秒あたりのfps*count変換が行われるようにします。
オーディオデータレートはfps*countで割り切れる必要があることに注意してください。 デフォルト値は6です。
例
・スペクトルを表示しながらオーディオを再生する:
ffplay -f lavfi'amovie = a.mp3、asplit [a] [out1]; [a] showcqt [out0] '
・上記と同じですが、フレームレートが30fpsです。
ffplay -f lavfi'amovie = a.mp3、asplit [a] [out1]; [a] showcqt = fps = 30:count = 5 [out0] '
・960x540以下のCPU使用率で再生:
ffplay -f lavfi'amovie = a.mp3、asplit [a] [out1]; [a] showcqt = fullhd = 0:count = 3 [out0] '
・A1とその高調波:A1、A2、(近く)E3、A3:
ffplay -f lavfi 'aevalsrc=0.1*sin(2*PI*55*t)+0.1*sin(4*PI*55*t)+0.1*sin(6*PI*55*t)+0.1*sin(8*PI*55*t),
asplit [a] [out1]; [a] showcqt [out0] '
・上記と同じですが、周波数領域でより正確に(そしてより遅く):
ffplay -f lavfi 'aevalsrc=0.1*sin(2*PI*55*t)+0.1*sin(4*PI*55*t)+0.1*sin(6*PI*55*t)+0.1*sin(8*PI*55*t),
asplit [a] [out1]; [a] showcqt = timeclamp = 0.5 [out0] '
・等ラウドネスのB重み付け
volume = 16 * b_weighting(f)
・低いQファクター
tlength = 100 / f * tc /(100 / f + tc)
・カスタムフォントカラー、C-noteは緑色、その他は青色
fontcolor ='if(mod(floor(midi(f)+0.5)、12)、0x0000FF、 g(1)) '
・カスタムガンマ、スペクトルは振幅に対して線形になりました。
ガンマ=2:ガンマ2 = 2
表示頻度
入力オーディオをオーディオパワースペクトルを表すビデオ出力に変換します。 オーディオ
振幅はY軸上にあり、周波数はX軸上にあります。
フィルタは次のオプションを受け入れます。
サイズ、 s
ビデオのサイズを指定します。 このオプションの構文については、 "ビデオ サイズ"
in ffmpeg-utils マニュアル。 デフォルトは「1024x512」です。
モード
表示モードを設定します。 これにより、各周波数ビンの表現方法が設定されます。
次の値を受け入れます。
ライン
バー
ドット
デフォルトは「bar」です。
アスケール
振幅スケールを設定します。
次の値を受け入れます。
LIN 線形スケール。
平方根
平方根スケール。
CBRT
立方根スケール。
ログ 対数目盛。
デフォルトは「ログ」です。
スケール
周波数スケールを設定します。
次の値を受け入れます。
LIN 線形スケール。
ログ 対数目盛。
ログ
逆対数目盛。
デフォルトは「lin」です。
win_size
ウィンドウサイズを設定します。
次の値を受け入れます。
w16
w32
w64
w128
w256
w512
w1024
w2048
w4096
w8192
w16384
w32768
w65536
デフォルトは「w2048」です
win_func
窓関数を設定します。
次の値を受け入れます。
四角い
バートレット
ハニング
ハミング
黒人
ウェルチ
フラットトップ
バリス
ブナトール
バン
正弦
ナットトール
デフォルトは「ハニング」です。
オーバーラップ
ウィンドウのオーバーラップを設定します。 範囲「[0]」。 デフォルトは1です。これは、
選択したウィンドウ関数が選択されます。
平均化
時間平均を設定します。 これを0に設定すると、現在の最大ピークが表示されます。 デフォルトは
1は、時間平均が無効になっていることを意味します。
カラー
スペースまたは'|'で区切られた色のリストを指定しますチャネルを描画するために使用されます
周波数。 認識されない色または欠落している色は、白色に置き換えられます。
ショースペクトル
入力オーディオを、オーディオ周波数スペクトルを表すビデオ出力に変換します。
フィルタは次のオプションを受け入れます。
サイズ、 s
出力のビデオサイズを指定します。 このオプションの構文については、 "ビデオ
サイズ" in ffmpeg-utils マニュアル。 デフォルト値は「640x512」です。
スライド
スペクトルをウィンドウに沿ってスライドさせる方法を指定します。
次の値を受け入れます。
replace
サンプルは、右側に到達すると左側から再開します
スクロール
サンプルは右から左にスクロールします
フルフレーム
フレームは、サンプルが右側に到達したときにのみ生成されます
デフォルト値は「置換」です。
モード
表示モードを指定します。
次の値を受け入れます。
組み合わせた
すべてのチャンネルが同じ行に表示されます
別
すべてのチャネルが別々の行に表示されます
デフォルト値は 組み合わせた.
カラー
表示色モードを指定します。
次の値を受け入れます。
チャンネル
各チャンネルは別々の色で表示されます
各チャンネルは同じ配色で表示されます
デフォルト値は チャンネル.
階段
強度の色の値を計算するために使用されるスケールを指定します。
次の値を受け入れます。
LIN 線形
平方根
平方根、デフォルト
CBRT
立方根
ログ
デフォルト値は 平方根.
飽和
表示される色の彩度モディファイヤを設定します。 負の値は代替を提供します
カラースキーム。 0は飽和状態ではありません。 飽和度は[-10.0、10.0]の範囲内である必要があります。
デフォルト値は1です。
win_func
ウィンドウ関数を設定します。
次の値を受け入れます。
なし
サンプルの前処理はありません(これが高速になるとは思わないでください)
ハン
ハンウィンドウ
ハミング
ハミングウィンドウ
黒人
ブラックマンウィンドウ
デフォルト値は「hann」です。
使用法はshowwavesフィルターと非常によく似ています。 そのセクションの例を参照してください。
例
・対数カラースケーリングの大きなウィンドウ:
showspectrum = s = 1280x480:scale = log
・を使用したチャネルごとの色付きおよびスライディングスペクトルの完全な例 再生する:
ffplay -f lavfi'amovie = input.mp3、asplit [a] [out1];
[a] showspectrum = mode = separate:color = intensity:slide = 1:scale = cbrt [out0] '
ボリュームを表示
入力オーディオボリュームをビデオ出力に変換します。
フィルタは次のオプションを受け入れます。
割合、 r
ビデオレートを設定します。
b 境界線の幅を設定します。許容範囲は[0、5]です。 デフォルトは1です。
w チャネル幅を設定します。許容範囲は[40、1080]です。 デフォルトは400です。
h チャネルの高さを設定します。許容範囲は[1、100]です。 デフォルトは20です。
f フェードを設定します。許容範囲は[1、255]です。 デフォルトは20です。
c ボリュームの色表現を設定します。
式は次の変数を使用できます。
VOLUME
チャネルの現在の最大音量(dB)。
チャンネル
0から始まる現在のチャネル番号。
t 設定されている場合、チャネル名を表示します。 デフォルトは有効です。
ショーウェーブ
入力オーディオをサンプル波を表すビデオ出力に変換します。
フィルタは次のオプションを受け入れます。
サイズ、 s
出力のビデオサイズを指定します。 このオプションの構文については、 "ビデオ
サイズ" in ffmpeg-utils マニュアル。 デフォルト値は「600x240」です。
モード
表示モードを設定します。
使用可能な値は次のとおりです。
ポイント
サンプルごとに点を描きます。
ライン
サンプルごとに垂直線を引きます。
p2p 各サンプルに点を描き、それらの間に線を引きます。
クライン
サンプルごとに中央に垂直な線を引きます。
デフォルト値は「ポイント」です。
n 同じ列に印刷されるサンプル数を設定します。 値を大きくすると
フレームレートを下げます。 正の整数である必要があります。 このオプションは、次の場合にのみ設定できます
の値 率 明示的に指定されていません。
割合、 r
(概算)出力フレームレートを設定します。 これは、オプションを設定することによって行われます n。 デフォルト
値は「25」です。
分割チャンネル
チャネルを個別に描画するか、オーバーラップさせるかを設定します。 デフォルト値は0です。
例
・入力ファイルのオーディオと対応するビデオ表現を同時に出力します
時間:
amovie = a.mp3、asplit [out0]、showwaves [out1]
・合成信号を作成し、showwavesで表示して、フレームレートを30にします。
XNUMX秒あたりのフレーム数:
aevalsrc=sin(1*2*PI*t)*sin(880*2*PI*t):cos(2*PI*200*t),asplit[out0],showwaves=r=30[out1]
ショーウェーブスピック
入力オーディオを、サンプル波を表す単一のビデオフレームに変換します。
フィルタは次のオプションを受け入れます。
サイズ、 s
出力のビデオサイズを指定します。 このオプションの構文については、 "ビデオ
サイズ" in ffmpeg-utils マニュアル。 デフォルト値は「600x240」です。
分割チャンネル
チャネルを個別に描画するか、オーバーラップさせるかを設定します。 デフォルト値は0です。
例
・オーディオトラック全体の波形のチャネル分割表現を抽出します。
1024x800の画像を使用 ffmpeg:
ffmpeg -i audio.flac -lavfi showwavespic = split_channels = 1:s =1024x800waveform.png
スプリット、 分割した
入力をいくつかの同一の出力に分割します。
「asplit」はオーディオ入力で機能し、「split」はビデオで機能します。
フィルタは、出力の数を指定する単一のパラメータを受け入れます。 もしも
指定しない場合、デフォルトは2です。
例
・同じ入力からXNUMXつの別々の出力を作成します。
[in] split [out0] [out1]
・3つ以上の出力を作成するには、次のように出力の数を指定する必要があります。
[in] asplit = 3 [out0] [out1] [out2]
・同じ入力からXNUMXつの別々の出力を作成します。XNUMXつはトリミングされ、もうXNUMXつはパディングされます。
[in] split [splitout1] [splitout2];
[splitout1] crop=100:100:0:0 [cropout];
[splitout2] pad=200:200:100:100 [padout];
・入力オーディオの5つのコピーを作成します ffmpeg:
ffmpeg -i INPUT -filter_complex asplit = 5 OUTPUT
zmq、 azmq
libzmqクライアントを介して送信されたコマンドを受信し、それらをフィルターに転送します。
フィルタグラフ。
「zmq」と「azmq」はパススルーフィルターとして機能します。 「zmq」はXNUMXつのビデオの間に挿入する必要があります
フィルタ、XNUMXつのオーディオフィルタ間の「azmq」。
これらのフィルターを有効にするには、libzmqライブラリーとヘッダーをインストールして構成する必要があります
「--enable-libzmq」を含むFFmpeg。
libzmqの詳細については、以下を参照してください。http://www.zeromq.org/>
「zmq」および「azmq」フィルターはlibzmqサーバーとして機能し、libzmqサーバーは
によって定義されたネットワークインターフェイス バインドアドレス オプションを選択します。
受信したメッセージは次の形式である必要があります。
[ ]
TARGET コマンドのターゲットを指定します。通常は、フィルタークラスの名前または
特定のフィルターインスタンス名。
COMMAND ターゲットフィルターのコマンドの名前を指定します。
ARG オプションであり、指定されたオプションの引数リストを指定します COMMAND.
受信すると、メッセージが処理され、対応するコマンドがに挿入されます
フィルタグラフ。 結果に応じて、フィルターはクライアントに応答を送信します。
形式を採用する:
MESSAGE オプションです。
例
見ます tools / zmqsend コマンドの送信に使用できるzmqクライアントの例
これらのフィルターによって処理されます。
によって生成された次のフィルターグラフについて考えてみます。 再生する
ffplay -dumpgraph 1 -f lavfi "
color = s = 100x100:c = red [l];
color = s = 100x100:c = blue [r];
nullsrc = s = 200x100、zmq [bg];
[bg][l]オーバーレイ[bg+l];
[bg + l] [r] overlay = x = 100 "
ビデオの左側の色を変更するには、次のコマンドを使用できます。
エコーParsed_color_0c黄色| tools / zmqsend
右側を変更するには:
エコーParsed_color_1cピンク| tools / zmqsend
マルチメディア SOURCES
以下は、現在利用可能なマルチメディアソースの説明です。
映画
これはと同じです 映画 ソース。ただし、デフォルトでオーディオストリームを選択します。
映画
ムービーコンテナからオーディオおよび/またはビデオストリームを読み取ります。
次のパラメータを受け入れます。
ファイル名
読み取るリソースの名前(必ずしもファイルである必要はありません。デバイスまたは
いくつかのプロトコルを介してアクセスされるストリーム)。
format_name、 f
映画が読み取るために想定される形式を指定します。名前は次のいずれかになります。
コンテナまたは入力デバイス。 指定しない場合、形式はから推測されます 映画名
またはプロービングによって。
seek_point、 sp
シークポイントを秒単位で指定します。 フレームはこのシークから出力されます
点。 パラメータは「av_strtod」で評価されるため、数値は次のようになります。
接尾辞はIS接尾辞です。 デフォルト値は「0」です。
ストリーム、 s
読み取るストリームを指定します。 「+」で区切って、複数のストリームを指定できます。 The
ソースには、同じ順序で同じ数の出力があります。 構文はで説明されています
ffmpegマニュアルの「ストリーム指定子」セクション。 XNUMXつの特別な名前「dv」と
「da」は、デフォルトの(最適な)ビデオストリームとオーディオストリームをそれぞれ指定します。 デフォルトは
「dv」、またはフィルターが「amovie」と呼ばれる場合は「da」。
stream_index、 si
読み取るビデオストリームのインデックスを指定します。 値が-1の場合、最も適切です
ビデオストリームが自動的に選択されます。 デフォルト値は「-1」です。 非推奨。 もしも
フィルタは「amovie」と呼ばれ、ビデオではなくオーディオを選択します。
ループ
ストリームを順番に読み取る回数を指定します。 値が1未満の場合
ストリームは何度も読み取られます。 デフォルト値は「1」です。
ムービーがループされても、ソースのタイムスタンプは変更されないため、変更されることに注意してください。
単調に増加しないタイムスタンプを生成します。
次に示すように、フィルターグラフのメイン入力の上にXNUMX番目のビデオをオーバーレイできます。
このグラフ:
入力----------->deltapts0->オーバーレイ->出力
^
|
ムービー->スケール->deltapts1------- +
例
・AVIファイルin.aviの先頭から3.2秒スキップし、その上にオーバーレイします。
「in」というラベルの付いた入力:
movie = in.avi:seek_point = 3.2、scale = 180:-1、setpts = PTS-STARTPTS [over];
[in] setpts = PTS-STARTPTS [main];
[メイン][オーバー]overlay= 16:16[アウト]
・video4linux2デバイスから読み取り、「in」というラベルの付いた入力の上にオーバーレイします。
movie = / dev / video0:f = video4linux2、scale = 180:-1、setpts = PTS-STARTPTS [over];
[in] setpts = PTS-STARTPTS [main];
[メイン][オーバー]overlay= 16:16[アウト]
・dvd.vobからID0x81の最初のビデオストリームとオーディオストリームを読み取ります。 ビデオ
「ビデオ」という名前のパッドに接続され、オーディオは「ビデオ」という名前のパッドに接続されます
"オーディオ":
movie = dvd.vob:s = v:0 +#0x81[ビデオ][オーディオ]
onworks.net サービスを使用してオンラインで ffmpeg-all を使用する