指定した座標から四角い範囲を入れ替えるswaprect
の使い方。数値にn
、t
、pos
が使えるので時間の経過で座標を変えることができる。
基本コマンド
- 左上と右下を入れ替える
ffplay input -vf swaprect=w=w/2:h=h/2:x1=w/2:y1=h/2:x2=0:y2=0
- 右上と左下を入れ替える
ffplay input -vf swaprect=w=w/2:h=h/2:x1=w/2:y1=0:x2=0:y2=h/2
- 左上と左下を入れ替える
ffplay input -vf swaprect=w=w/2:h=h/2:x1=0:y1=h/2:x2=0:y2=0
- 右上と右下を入れ替える
ffplay input -vf swaprect=w=w/2:h=h/2:x1=w/2:y1=0:x2=w/2:y2=h/2
- 左上と右上を入れ替える
ffplay input -vf swaprect=w=w/2:h=h/2:x1=0:y1=0:x2=w/2:y2=0
- 左下と右下を入れ替える
ffplay input -vf swaprect=w=w/2:h=h/2:x1=0:y1=h/2:x2=w/2:y2=h/2
公式ドキュメント:FFmpeg Filters Documentation : swaprect
オプション
- w
入れ替える長方形の横幅
既定値:w/2 - h
入れ替える長方形の縦幅
既定値:h/2 - x1
入れ替える長方形の左上のX座標
既定値:w/2 - y1
入れ替える長方形の左上のY座標
既定値:h/2 - x2
入れ替えた先の長方形の左上のX座標
既定値:0 - y2
入れ替えた先の長方形の左上のY座標
既定値:0 - 以下のオプションが数値として代替できる
ffmpeg で使える評価式も使える- w
入力解像度の横幅 - h
入力解像度の縦幅 - a
h/w - sar
アスペクト比 - dar
(w/h)*sar - n
入力したファイルのフレーム数。0 開始 - t
入力したファイルのタイムスタンプ秒 - pos
入力したファイルのフレーム位置
- w
注意点
四角い範囲と入れ替える、または入れ替えた先の座標の右上または左下が解像度を超えた場合はフィルタが無効になる。
w/2+w/2+1=w+1 で入れ替えた先の長方形の幅が解像度幅を超えた例
ffplay input -vf swaprect=w=w/2:h=h/2:x1=w/2+1:y1=0:x2=0:y2=h/2