一定間隔で映像に線を引く drawgrid


映像に縦線や横線、または格子状に直線を引く drawgrid フィルタの使い方。

基本コマンド

100×100 毎に太さ2pxで赤の半分透過した格子状の線を引く
ffmpeg -i input -vf drawgrid=width=100:height=100:thickness=2:color=red@0.5 output
ffmpeg -i input -vf drawgrid=0:0:100:100:red@.5:2 output
ffplay -i input -vf drawgrid=0:0:100:100:red@.5:2 output

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

オプション

  • x[string]
    左から1本目の縦線の座標指定
    既定値:0
  • y[string]
    左から1本目の横線の座標指定
    既定値:0
  • width, w[string]
    横線のピクセル間隔の指定
    既定値:0(線を書かない)
  • height, h[string]
    縦線のピクセル間隔の指定
    既定値:0(線を書かない)
  • color, c[string]
    線の色指定。色名指定とカラーコード指定ができる
    invert は背景色に応じて輝度を反転させた色を表示する
    @0.5 のようにすることで透過できる。0 から 1 まで。1 は透過しない
    透過に invert は併用できない
    既定値:black(0x000000)
  • thickness, t[string]
    線の太さの指定
    既定値:1
    x, y, w と h のオプションには評価式が使える
    ffmpeg で使える計算書式

  • dar
    (w / h) * sar
  • hsub, vsub
    入力クロマサブサンプル値。yuv422p だと hsub は 2、vsub は 1
  • in_h, ih
    入力縦幅
  • in_w, iw
    入力横幅
  • sar
    サンプルアスペクト比
  • x
    x で指定した値
  • y
    y で指定した値
  • w
    y で指定した値
  • h
    h で指定した値
  • t
    t で指定した値

コマンド例

映像に太さ2pxの横の走査線を引く
線の間隔と線の太さの差を1pxとすることで線を引いていない部分が1pxになる
ffplay -i input -vf drawgrid=0:0:0:3:t=2

drawgrid の出力例


縦横3分の1毎に輝度反転した2pxの線を引く
ffplay -i input -vf drawgrid=w=iw/3:h=ih/3:t=2:c=invert

コメントを残す

メールアドレスが公開されることはありません。