ChatGPTに、動画変換(mpeg→gif 変換)するPythonスクリプトを書いてもらった

ChatGPTに、mpeg→gif 変換のPythonスクリプトを書いてもらいました。ブログに動画を張り付ける際、mpegが対応していないのでgifに変更していたのですが、オンラインで変換してくれるサービスを利用していたのですが、面倒なので手元でもできるように。

MoviePyは事前にインストールしておきます。MoviePyをインストールするとFFmpegも一緒にインストールされます。

なお、pythonではなく、下記のようなFFmpegコマンドラインだけで出来ますが、そこは好みで。

ffmpeg -i input.mpeg -vf "fps=10,scale=320:-1:flags=lanczos,split [s0] [s1]; [s0]palettegen [p]; [s1] [p]paletteuse" -loop 0 output.gif
指示文(プロンプト):

mpegからgifに変換するpythonプログラムを提示してください。MoviePyを利用してください。動画のサイズ(縦、横)、フレームレートも指定できるようにしてください。

回答:

MoviePyでmpegからgifに変換するプログラムは以下のようになります。


from moviepy.editor import VideoFileClip

# 入力ファイルのパス
input_file = "input.mp4"

# 出力ファイルのパス
output_file = "output.gif"

# 動画のサイズ(横幅、縦幅)
size = (320, 240)

# フレームレート
fps = 10

# 動画を読み込む
clip = VideoFileClip(input_file)

# サイズを変更する
clip = clip.resize(size)

# gifに変換して保存する
clip.write_gif(output_file, fps=fps)
    
結果:

以下のように成功しました。返還前の動画は下記のサイトからフリー素材を使わせてもらいました。
https://www.pexels.com/ja-jp/video/855282/

処理が開始されると下記のように表示されます。少し時間がかかります。

 

変換後のgifはこちら。