FFmpegは、オープンソースの強力なオーディオおよびビデオコンバーターです。 FFmpegを使用すると、ほぼすべてのタイプのメディアファイルをエンコード、デコード、トランスコード、マルチプレクサ、デマルチプレクサ、記録、サイズ変更、ストリーミング、フィルタリング、および再生できます。それだけでなく、ライブオーディオ/ビデオストリームも取得できます。 FFmpegには、さまざまなタスクを実行するための多くのフィルターが付属しています。あまり知られていないが便利なフィルターの1つは、ズームパンです。 。ズームパンフィルターを使用すると、Linuxでビデオを簡単にズームインおよびズームアウトできます。コマンドの例を使用して、その方法を説明します。
LinuxマシンにFFmpegがインストールされていることを確認してください。次のリンクで、一般的なLinuxオペレーティングシステムにFFmpegをインストールする手順を文書化しました。
- LinuxにFFmpegをインストールする方法
FFmpegをインストールしたら、ビデオを保存した場所に移動し、次のコマンドを実行してX秒ごとにズームインおよびズームアウトします。
$ ffmpeg -i input.mp4 -vf "zoompan=z='if(lte(mod(time,10),3),2,1)':d=1:x=iw/2-(iw/zoom/2):y=ih/2-(ih/zoom/2):fps=30" output.mp4
上記のコマンドは、ビデオの中央に向かってズームインし、2倍ズームします。 最初の3秒間 10秒ごと 時間のブロック。 input.mp4
を置き換えます あなたのファイル名で。また、要件に応じて値を調整し、入力に一致するようにフィルターのFPSを設定します。デフォルト値は25です。
次のコマンドを使用して、特定のビデオのその他の詳細の中でFPSの詳細を見つけることができます。
$ ffmpeg -i input.mp4

変換前の実際の入力ビデオは次のとおりです。
そして、これが変換された(ズームイン-アウト)ビデオです:
違いに気づきましたか?ビデオは最初の3秒間は2倍にズームインされ、その後通常に戻ります(ズームアウト)。ちょうど10秒で、ビデオは最初の3秒間再びズームインされ、サイクルはビデオが終了するまで続きます。
FFmpegズームパンフィルターのヘルプセクションに記載されている次のズームパン設定を試すこともできます。
最大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)'
上記と同じですが、一時停止しません:
zoompan=z='min(max(zoom,pzoom)+0.0015,1.5)':d=1:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'
入力ビデオの最初の1秒間だけ、画像の中央に2倍にズームインします。
zoompan=z='if(between(in_time,0,1),2,1)':d=1:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'
その他のFFmpegコマンドの例については、次のガイドを参照してください。
- 初心者向けの20以上のFFmpegコマンド
これがお役に立てば幸いです。