Конкат видео слишком медленно, используя Python MoviePY - PullRequest
0 голосов
/ 02 июня 2019

Я присоединяюсь к 50-м или более видео по 1,2,3 минуты, используя MoviePY, но это дает мне 20 часов, хотя у меня есть 64 ГБ оперативной памяти, i7 и GTX 670, но это не самое лучшее, но разумное решение.Могу ли я в любом случае ускорить этот процесс?

padding = 10 # padding option
video_clips = [VideoFileClip(video_dir + video) for video in os.listdir(video_dir)]
video_fx_list = [video_clips[0]]

idx = video_clips[0].duration - padding
for video in video_clips[1:]:
video_fx_list.append(video.set_start(idx).crossfadein(padding))
idx += video.duration - padding

final_video = CompositeVideoClip(video_fx_list)
final_video.write_videofile(video_dir + 'myoutfile.mp4', fps=24)

Мне не нужны оригинальные аудиофайлы, которые есть в этих клипах, их удаление ускорит процесс?не знаю, как удалить аудио, хотя /

enter image description here

1 Ответ

1 голос
/ 02 июня 2019

Python неэффективен, когда дело доходит до редактирования видео.

Если вы используете MoviePY, взгляните на https://zulko.github.io/moviepy/ref/ffmpeg.html (возможно, используйте версию github dev, которая более стабильна)

У вас есть некоторые функции, которые выполняют прямые вызовы ffmpeg: https://github.com/Zulko/moviepy/blob/master/moviepy/video/io/ffmpeg_tools.py И поэтому чрезвычайно эффективны для таких простых задач, как ваша

...