解像度を変えずに上下左右を特定色で埋めるfillbordersフィルタの使い方。上下左右にロゴや不要な映像が入っているときに真っ黒にしたり、4:3解像度の映像を16:9にするときにpadフィルタを使って左右に余白を追加し、その余白を合わせ鏡のように変えることも出来る。

基本コマンド

左右100ピクセルを隣接した色で埋める。
ffmpeg -i input -vf fillborders=left=100:right=100 output
ffplay -i input -vf fillborders=100:100

上下100ピクセルを白枠に変える。
ffmpeg -i input -vf fillborders=top=100:bottom=100:mode=fixed:color=white output
ffplay -i input -vf fillborders=0:0:100:100:2:white

smptebarsにfillbordersフィルタでライムグリーンをつけた例

ピクセルが入力幅の半分までなので求める映像の2倍幅を入力して半分にクロップするとグラデーションになる。
ffplay -f lavfi -i color=s=640x960:c=black,fillborders=0:0:480:0:fade:white,crop=640:480:0:0

またはグレー背景にホワイトとブラックを上下にフェードする。
ffplay -f lavfi -i color=s=640x480:c=gray,fillborders=0:0:240:0:fade:white,fillborders=0:0:0:240:fade:black

fillbordersフィルタを使ってグラデーションを作る

geqフィルタでもグラデーションを作れる。
数式で線や円、模様が描ける geq

公式ドキュメント:FFmpeg Filters Documentation : fillborders

オプション

  • left[int]
    左のピクセル数の指定
    既定値:0
    範囲:0からINT_MAX(横解像度の半分)まで
  • right[int]
    右のピクセル数の指定
    既定値:0
    範囲:0からINT_MAX(横解像度の半分)まで
  • top[int]
    上のピクセル数の指定
    既定値:0
    範囲:0からINT_MAX(縦解像度の半分)まで
  • bottom[int]
    下のピクセル数の指定
    既定値:0
    範囲:0からINT_MAX(縦解像度の半分) まで
  • mode[int] 上で指定したピクセルの埋め方
    • smear, 0:隣接する色で埋める。既定値
    • mirror, 1:合わせ鏡にする(半分のサンプル)
    • fixed, 2:colorの指定色
    • reflect, 3:合わせ鏡にする
    • wrap, 4:向かい側の映像を複製する
    • fade, 5:colorの指定色でフェードする
    • margins, 6:境界付近のピクセルを加重平均する。smearよりぼやける
  • color[color]
    fixed、fadeの色を指定する
    既定値:”black”(000000)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)