MoviePyを使用しPythonでGIF画像をビデオ(MP4、AVI)に変換してみます。
MoviePyはPythonの標準ライブラリではありませんので、事前にインストールする必要があります。
■Python
今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)
■MoviePyをインストール
GIF画像をビデオ(MP4、AVI)に変換するために、MoviePyをインストールしていきます。
今回はpipを経由してインストールを行うので、まずW■MoviePyをインストール■MoviePyをインストールindowsのコマンドプロンプトを起動します。
pip install moviepy
起動後、上記のコマンドを入力し、Enterキーを押します。
なお、今回は、pythonランチャーを使用しており、Python Version 3.8.5にインストールを行うために、pipを使う場合にはコマンドでの切り替えを行います。
py -3.8 -m pip install moviepy
切り替えるために、上記のコマンドを入力し、Enterキーを押します。
Processing c:\users\user\appdata\local\pip\cache\wheels\e4\a4\db\0368d3a04033da662e13926594b3a8cf1aa4ffeefe570cfac1\moviepy-1.0.3-py3-none-any.whl
Collecting imageio<3.0,>=2.5; python_version >= “3.4”
Downloading imageio-2.9.0-py3-none-any.whl (3.3 MB)
|████████████████████████████████| 3.3 MB 37 kB/s
Requirement already satisfied: decorator<5.0,>=4.0.2 in c:\pg\python38\lib\site-packages (from moviepy) (4.4.2)
Requirement already satisfied: requests<3.0,>=2.8.1 in c:\pg\python38\lib\site-packages (from moviepy) (2.25.0)
Collecting imageio-ffmpeg>=0.2.0; python_version >= “3.4”
Downloading imageio_ffmpeg-0.4.2-py3-none-win_amd64.whl (22.6 MB)
|████████████████████████████████| 22.6 MB 6.8 MB/s
Requirement already satisfied: numpy; python_version >= “2.7” in c:\pg\python38\lib\site-packages (from moviepy) (1.19.4)
Requirement already satisfied: tqdm<5.0,>=4.11.2 in c:\pg\python38\lib\site-packages (from moviepy) (4.53.0)
Processing c:\users\user\appdata\local\pip\cache\wheels\22\82\ff\56950e4b223a69eda3a2bdeaef2ae4b274c3d1ced9b5814c99\proglog-0.1.9-py3-none-any.whl
Requirement already satisfied: pillow in c:\pg\python38\lib\site-packages (from imageio<3.0,>=2.5; python_version >= “3.4”->moviepy) (8.0.1)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\pg\python38\lib\site-packages (from requests<3.0,>=2.8.1->moviepy) (1.26.2)
Requirement already satisfied: chardet<4,>=3.0.2 in c:\pg\python38\lib\site-packages (from requests<3.0,>=2.8.1->moviepy) (3.0.4)
Requirement already satisfied: certifi>=2017.4.17 in c:\pg\python38\lib\site-packages (from requests<3.0,>=2.8.1->moviepy) (2020.11.8)
Requirement already satisfied: idna<3,>=2.5 in c:\pg\python38\lib\site-packages (from requests<3.0,>=2.8.1->moviepy) (2.10)
Installing collected packages: imageio, imageio-ffmpeg, proglog, moviepy
Successfully installed imageio-2.9.0 imageio-ffmpeg-0.4.2 moviepy-1.0.3 proglog-0.1.9
Enterキーを押すと、インストールが開始され、「Successfully installed」と表示されます。これが表示されれば、正常にインストールは完了となります。なお、moviepyは「RuntimeError: Python 3.5 or later is required(Python3.5以降が必要です)」となっています。
■GIF画像を用意する
MoviePyのインストールは完了しましたので、GIF画像を用意します。
今回はロイヤルティーフリーのGIF画像(sample.gif)を用意しました。
ファイルが保存されている場所は「C:\Users\user\test(フォルダパス)」になります。
■MoviePyを使用しGIF画像をビデオ(MP4、AVI)に変換する
GIF画像の用意ができましたので、MoviePyを使用しGIF画像をビデオ(MP4、AVI)に変換するスクリプトを書いていきます。
■コード
import moviepy.editor as mp clip = mp.VideoFileClip(r"C:\Users\user\test\sample.gif") clip.write_videofile(r"C:\Users\user\test\sample.mp4") clip.write_videofile(r"C:\Users\user\test\sample.avi" ,codec="libx264") clip.close()
MoviePyのmoviepy.editorを呼び出して、clipという変数を作成し、mp.VideoFileClip()で今回用意したGIF画像を指定し格納します。
格納後、write_videofile()でGIF画像の情報を指定した保存場所とファイル名で書き込みを行います。今回はmp4形式と、avi形式の2つのファイルに変換してみます。
■実行
今回のスクリプトを「gitimage_conversion.py」という名前で保存し、コマンドプロンプトから実行してみます。
Moviepy – Building video C:\Users\user\test\sample.mp4.
Moviepy – Writing video C:\Users\user\test\sample.mp4Moviepy – Done !
Moviepy – video ready C:\Users\user\test\sample.mp4
Moviepy – Building video C:\Users\user\test\sample.avi.
Moviepy – Writing video C:\Users\user\test\sample.aviMoviepy – Done !
Moviepy – video ready C:\Users\user\test\sample.avi
コマンドプロンプトに「Moviepy – Done !(完了)」と表示されれば、変換は完了となります。
完了後、ファイルの保存場所を確認すると、mp4形式と、avi形式の2つのファイルが生成されていることが確認できました。またファイルの中身も再生できることを確認できました。
コメント