動画を処理するためのtipsです。
moviepyのインストールは
pip install moviepy
と簡単です。
VideoFileClip
クラスのメソッドfl_image
にコールバック関数をセットします。
このコールバック関数は、各フレームの画像を'(Height, Width, Channel)'のndarray
として受け取り、同様の形式のndarray
を返すことで動画を変換できます。便利ですね。
下記は、各ピクセル0〜255で表現されているndarray
を反転させることで色の反転を行った例です。
from moviepy.editor import VideoFileClip
def func(frame):
"""
:param frame: (H, W, Channel) [ndarray]
:return: (H, W, Channel) [ndarray]
"""
return -frame + 255 # 色を反転
inpout_video = "test_input.mp4"
output_video = 'test_output.mp4'
clip1 = VideoFileClip(inpout_video)
project_clip = clip1.fl_image(func)
project_clip.write_videofile(output_video, audio=True)