Вырезание части видео - python

У меня есть видео длиной около 25 минут каждый, и я хочу сократить несколько секунд с самого начала, используя python.

Поиск по этому вопросу, я наткнулся на пакет pypyp для python. Проблема в том, что это занимает много времени даже для одного видео. Ниже приведен фрагмент кода, который я использую, чтобы отрезать 7 секунд от начала одного видео. Процесс записи занимает много времени. Есть ли лучший способ обрезать видео с помощью python?

from moviepy.editor import *
clip = VideoFileClip("video1.mp4").cutout(0, 7)
clip.write_videofile("test.mp4")

Пожалуйста, дайте мне знать, если я упустил какие-либо подробности.

Любая помощь приветствуется. Спасибо!

Ответ 1

Попробуйте это и скажите нам, если это быстрее (если это возможно, он будет извлекать видео напрямую с помощью ffmpeg, без декодирования и перекодирования):

from moviepy.video.io.ffmpeg_tools import ffmpeg_extract_subclip
ffmpeg_extract_subclip("video1.mp4", start_time, end_time, targetname="test.mp4")

Если это не поможет, взгляните на код

Ответ 2

from moviepy.video.io.ffmpeg_tools import ffmpeg_extract_subclip
ffmpeg_extract_subclip("video1.mp4", t1, t2, targetname="test.mp4")

t1 и t2 в этом коде представляют время начала и время окончания обрезки. Видео до t1 и после t2 будет опущено.

Ответ 3

Если вы новичок в moviepy, вы должны выполнить следующие действия.

Установка (в вашем virtualenv):

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")