それぞれ約25分の長さのビデオがあり、pythonを使用して開始から数秒をカットしたいと思います。
それについて検索して、私はpythonのmoviepyパッケージを見つけました。問題は、1本のビデオであっても時間がかかることです。以下は、単一のビデオの開始から7秒を切るために使用するコードスニペットです。書き込みプロセスは多くの時間を消費します。 Pythonを使用してビデオをカットするより良い方法はありますか?
from moviepy.editor import *
clip = VideoFileClip("video1.mp4").cutout(0, 7)
clip.write_videofile("test.mp4")
詳細がわからない場合はお知らせください。
どんな助けも大歓迎です。ありがとう!
これを試して、高速かどうかを教えてください(可能な場合は、ffmpegを使用して、デコードおよび再エンコードせずにビデオを直接抽出します)。
from moviepy.video.io.ffmpeg_tools import ffmpeg_extract_subclip
ffmpeg_extract_subclip("video1.mp4", start_time, end_time, targetname="test.mp4")
それでも解決しない場合は、 code をご覧ください
from moviepy.video.io.ffmpeg_tools import ffmpeg_extract_subclip
ffmpeg_extract_subclip("video1.mp4", t1, t2, targetname="test.mp4")
このコードのt1とt2は、トリミングの開始時間と終了時間を表します。 t1の前とt2の後のビデオは省略されます。
moviepyを初めて使用する場合は、次の手順に従う必要があります。
pip install --trusted-Host pypi.python.org moviepy
python
import imageio
imageio.plugins.ffmpeg.download()
これらのコマンドの後、最小限のソフトウェア要件があります。
from moviepy.video.io.ffmpeg_tools import ffmpeg_extract_subclip
# ffmpeg_extract_subclip("full.mp4", start_seconds, end_seconds, targetname="cut.mp4")
ffmpeg_extract_subclip("full.mp4", 60, 300, targetname="cut.mp4")