2021年10月7日木曜日

ffmpeg-ptyhonでrotateフィルタを使用して画像を回転する

ffmpeg-ptyhonでrotateフィルタを使用して画像を回転するには、以下のサンプルプログラムのようにfilterメソッドにフィルタ名"rotate"と以下のパラメータを指定します。
angle: 回転角度をラジアンで指定します。PI定数を使用することが出来ます。tでフレームの秒数を指定することも出来ます。
fillcolor: 回転の結果発生する余白の色を指定します。

サンプルプログラム

ffmepg-pythonがインストールされた仮想環境の作成方法は「FFmpegをPythonから操作できるffmpeg-pythonをインストールした仮想環境を作成し、動画形式変換する」を参考にしてください。
以下のサンプルでは1秒に1度のゆっくりとした速度で画像が回転します。

ffmpeg_rotate.py
import ffmpeg

input = ffmpeg.input('./lake.mp4')
processed = input.video.filter("rotate",angle="t*PI/180",fillcolor="#ffffff")
ffmpeg.output(processed, input.audio, './lake_rotate2.mp4').run()

・実行方法
以下のコマンドを実行して、サンプルプログラムを実行します。
python ffmpeg_rotate.py

〇変換前動画

〇変換後動画

関連情報

・様々な動画に関するアプリケーションについては、以下のまとめを参照してください。
動画関連アプリケーションのまとめ

0 件のコメント:

コメントを投稿