英語フランス語スペイン語

Ad


OnWorksファビコン

ffmpeg-filters - クラウドでオンライン

Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーター上の OnWorks 無料ホスティング プロバイダーで ffmpeg-filters を実行します。

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド ffmpeg-filters です。

プログラム:

NAME


ffmpeg-filters - FFmpeg フィルター

DESCRIPTION


このドキュメントでは、libavfilter ライブラリによって提供されるフィルター、ソース、およびシンクについて説明します。

フィルタリング はじめに


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':g​​reen = '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-filters を使用する


無料のサーバーとワークステーション

Windows と Linux のアプリをダウンロード

Linuxコマンド

Ad