ffmpeg で使える計算書式

どこでこの書式を使うかというと座標やフレーム数、音声の周波数を指定するときの値やタイムライン編集で使う。全てを記載していないのですべての使い方は公式ドキュメントを参照。

公式ドキュメント : FFmpeg Utilities Documentation :: Expression Evaluation
使えるフィルタ一覧 : FFmpeg Filters Documentation

特定の区間だけフィルタを当てるタイムライン編集について

n は 0 から始まるフレーム数(整数)
t は 0 からはじまるタイムスタンプ(時間秒)
この書式を使ってエラーが出る場合は '' で挟むか、半角スペースを削除するか、エスケープする
0 または 1 を返す変数は、変数の頭に置いてその変数の有効無効に使う
三角関数で使われる sin などはθの値がそのまま当てはまるのではなく、PI/2 で θ=90度 になる

値を調べるには print() を使う
  • sinh(x) ハイパボリックサイン(双曲線関数)
  • cosh(x) ハイパボリックコサイン
  • tanh(x) ハイパボリックタンジェント
  • sin(x) サイン(三角関数)
    sin((PI*n)/180) 360フレームで1回転する
    sin((PI*(360/5)*t)/180) 5秒で1回転する
    sin((PI*(180/5)*t)/180) 5秒で半回転する
  • cos(x) コサイン
  • tan(x) タンジェント
  • asin(x) アークサイン(逆関数)
  • acos(x) アークコサイン
  • atan(x) アークタンジェント
  • exp(x) エクスポネンシャル(指数関数)
  • log(x) ログ(対数)
  • abs(x) x の絶対値を返す
  • isnan(x) x が数字でなければ 1 を返す、そうでなければ 0 を返す
  • mod(x\,y) x を y で割り、その余りを返す
    mod(n\,100) 0から99までそれを返し、100は0を返し、101は1を返し、以下ループ
  • max(x\,y) x≦y は y を返し、x>y は x を返す
  • min(x\,y) x≦y は x を返し、x>y は y を返す
  • between(x\,min\,max) x が min 以上または max 以下ならば 1、そうでなければ 0 を返す
  • clip(x\, min\, max) x が min から max の間だけ返す。min以下は min を返し、max 以上は max を返す
  • eq(x\, y) x=y のときに y を返し、そうでなければ 0 を返す
  • gcd(x, y) x, y の共通の最大公約数を返す。x, y の両方が 0 だと 0 を返し、x, y の片方が 0 または マイナスだと undefined を返す
  • gte(x\, y) x≦y は 0 を返し、x>y は x を返す
    gte(n\,100) n≦100 までは 0 を返し、n≧101 からは n を返す
  • gt(x\, y) x<y は 0 を返し、x≧y は x を返す
    gt(n\,100) n≦99 までは 0 を返し、n≧100 からは n を返す
  • lte(x\, y) x≦y は y を返し、x>y は 0 を返す
    lte(n\,100) n≦100 までは n を返し、n≧101 からは 0 を返す
  • lt(x\, y) x<y は y を返し、x≧y は 0 を返す
    lt(n\,100) n≦99 までは n を返し、n≧100 からは 0 を返す
  • st(var\, expr) var には数値を、expr は計算式が使える
  • ld(var) st() で使った変数を再利用する 同じフィルタのオプション(::)内でしか使えない
    つまり同じフィルタ内にあると st(n\,mod(n\,100)) と ld(n) は同じ計算になる
    例:x='st(0, 100);ld(0)' x には 100 が代入される
    例:x='st(0, 100);st(1, 100);ld(0)+ld(1)' x には 200 が代入される
  • ceil(expr) 小数点以下を繰り上げ
    ceil(1.5) は 2.0 になる
  • floor(expr) 小数点以下を繰り下げ
    floor(-1.5) は -2.0 になる
  • trunc(expr) 小数点以下を切り捨て
    trunc(-1.5) は -1.0 になる
  • sqrt(expr) expr の平方根を返す
  • random(x) 0 から 1 までの小数点を含む値をランダム数を返す x は他の値と区別する
  • if(x\, y) x が 0 であれば 0 を返す、そうでなければ y を返す
  • if(x\, y\, z) x が 0 であれば y を返す、そうでなければ z を返す
  • ifnot(x\, y) x が 0 であれば y を返す、そうでなければ 0 を返す
  • ifnot(x\, y\, z) x が 0 であれば y を返す、そうでなければ z を返す
  • time(0) 現在の時間を Unixtime で返す
  • print(t), print(t\,1) t(タイムスタンプ)のログをコンソールに表示。引数をつけることでログレベルを指定できる。t の部分を変えることでいろいろな変数の値を調べられる

  • PI 円周率 3.14
  • E 自然対数の底 2.718
  • PHI 黄金比 1.618

訂正 2013/07/13、2016/12/02
比較の書式を直した

使用例

そのほかの対応フィルタ

関連記事

この記事へのコメント

管理人のみ通知 :

トラックバック


ニコニコチャンネル始めました
ニコラボチャンネル
スポンサード リンク
THE IDOLM@STER THE@TER ACTIVITIES 03
THE IDOLM@STER THE@TER ACTIVITIES 03

Fate/EXTELLA REGALIA BOX for PlayStation (R) 4 【初回限定特典】ネロ・クラウディウス、アルトリア・ペンドラゴン衣装「純真のナイトドレス」プロダクトコード付+【Amazon.co.jp限定特典】アルテラ衣装「スイートデビル」プロダクトコード配信 - PS4
Fate/EXTELLA REGALIA BOX for PlayStation (R) 4 【初回限定特典】ネロ・クラウディウス、アルトリア・ペンドラゴン衣装「純真のナイトドレス」プロダクトコード付+【Amazon.co.jp限定特典】アルテラ衣装「スイートデビル」プロダクトコード配信 - PS4

妖怪ウォッチ くったりぬいぐるみだニャン ジバニャン
妖怪ウォッチ くったりぬいぐるみだニャン ジバニャン

Fate/EXTELLA VELBER BOX 【初回限定特典】ネロ・クラウディウス、アルトリア・ペンドラゴン衣装「純真のナイトドレス」プロダクトコード付+【Amazon.co.jp限定特典】アルテラ衣装「スイートデビル」プロダクトコード配信 - PS4
Fate/EXTELLA VELBER BOX 【初回限定特典】ネロ・クラウディウス、アルトリア・ペンドラゴン衣装「純真のナイトドレス」プロダクトコード付+【Amazon.co.jp限定特典】アルテラ衣装「スイートデビル」プロダクトコード配信 - PS4

Fate/EXTELLA REGALIA BOX for PlayStation (R) Vita 【初回限定特典】ネロ・クラウディウス、アルトリア・ペンドラゴン衣装「純真のナイトドレス」プロダクトコード付+【Amazon.co.jp限定特典】アルテラ衣装「スイートデビル」プロダクトコード配信 - PS Vita
Fate/EXTELLA REGALIA BOX for PlayStation (R) Vita 【初回限定特典】ネロ・クラウディウス、アルトリア・ペンドラゴン衣装「純真のナイトドレス」プロダクトコード付+【Amazon.co.jp限定特典】アルテラ衣装「スイートデビル」プロダクトコード配信 - PS Vita

【早期購入特典あり】初音ミクシンフォニー~Miku Symphony 2016~オーケストラ ライブ CD(初音ミクシンフォニー描き下ろしクリアファイル付き(ランダム配布))
【早期購入特典あり】初音ミクシンフォニー~Miku Symphony 2016~オーケストラ ライブ CD(初音ミクシンフォニー描き下ろしクリアファイル付き(ランダム配布))

「うたわれるもの 偽りの仮面&二人の白皇」歌集(初回限定盤)
「うたわれるもの 偽りの仮面&二人の白皇」歌集(初回限定盤)

TVアニメ『ラブライブ!サンシャイン!!』挿入歌シングル「想いよひとつになれ/MIRAI TICKET」
TVアニメ『ラブライブ!サンシャイン!!』挿入歌シングル「想いよひとつになれ/MIRAI TICKET」

『刀剣乱舞-花丸-』 歌詠集 其の三 特装盤
『刀剣乱舞-花丸-』 歌詠集 其の三 特装盤

本好きの下剋上~司書になるためには手段を選んでいられません~第一部 「本がないなら作ればいい3」
本好きの下剋上~司書になるためには手段を選んでいられません~第一部 「本がないなら作ればいい3」

新着記事と追記・編集記事
スポンサード リンク
ブログ内検索
プロフィール

Author:ロベルト
お問い合わせはこちらまで
robelt2525[at]gmail.com

中の人 @nico_lab
ブログ更新用 @blo_nico_lab

詳しいプロフィールはこちら

カテゴリ
アクセスの多い記事
記事アーカイブ

最新コメント
リンク
ニコニコ静画
アニメカテゴリ毎時ランキング
免責事項
当ブログはリンクフリーです。記事によりトラブルが生じた場合でも、当ブログ管理人は一切の責任を負いません。 当ブログに記載されている情報の正誤や利用は、ご自身の判断でお願いします。 紹介したアプリケーションに関する問い合わせは作者に問い合わせてください。ニコニコ動画に関する質問はまずは公式掲示板、2ch、各Q&Aサイトを参照ください。
ブログの読者になる(RSS)
アクセス数