LoginSignup
0
1

長時間動画を短くするときに使ったスクリプト

Posted at

動画を非常に高速に早送りする必要がある場合、Pythonとmoviepyライブラリを使用してこれを簡単に行う方法を紹介します。以下のスクリプトは、動画を400倍速で早送りし、フレームレートをカスタマイズして出力します。

from moviepy.editor import VideoFileClip
from moviepy.video.fx.speedx import speedx

def speed_up_video_with_custom_framerate(input_file_path, output_file_path, speed_factor=400, new_fps=5):
    clip = VideoFileClip(input_file_path).without_audio()
    new_clip = speedx(clip, factor=speed_factor)
    new_clip.write_videofile(output_file_path, codec='libx264', audio=False, fps=new_fps)

# 例としてのパス(適宜変更してください)
input_file_path = "/path/to/your/video/file.mkv"
output_file_path = "/path/to/your/output/video.mkv"

# 関数の実行
speed_up_video_with_custom_framerate(input_file_path, output_file_path)

必要なインストール

このスクリプトを実行する前に、Python環境にmoviepyライブラリをインストールする必要があります。以下のコマンドを実行してください。

pip install moviepy

関数の解説

speed_up_video_with_custom_framerate

この関数は、4つの引数を取ります。

  • input_file_path: 加速したい動画ファイルのパス
  • output_file_path: 加速後の動画を保存するパス
  • speed_factor: 早送りの速度倍率(デフォルトは400)
  • new_fps: 出力される動画のフレームレート(デフォルトは5)

処理の流れ

  1. VideoFileClipを用いて動画ファイルを読み込みます。without_audioメソッドでオーディオトラックを無効にします。
  2. speedx関数で指定された倍率で動画の速度を加速します。
  3. write_videofileメソッドで加速された動画を指定のコーデック、フレームレートでファイルに出力します。

まとめ

このスクリプトは、研究やプレゼンテーションで長時間の動画を短時間で示す際に非常に役立ちます。調整可能なフレームレートと速度倍率により、さまざまなニーズに対応可能です。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1