J'ai des vidéos d'environ 25 minutes chacune et je souhaite couper quelques secondes à partir du début en python.
En cherchant à ce sujet, je suis tombé sur le paquet moviepy pour Python. Le problème, c’est que cela prend beaucoup de temps, même pour une seule vidéo. Voici l'extrait de code que j'utilise pour couper 7 secondes après le début d'une seule vidéo. Le processus d'écriture prend beaucoup de temps. Existe-t-il un meilleur moyen de couper les vidéos en utilisant python?
from moviepy.editor import *
clip = VideoFileClip("video1.mp4").cutout(0, 7)
clip.write_videofile("test.mp4")
S'il vous plaît laissez-moi savoir si j'ai manqué des détails.
Toute aide est appréciée. Merci!
Essayez ceci et dites-nous s'il est plus rapide (s'il le peut, il extraira la vidéo directement à l'aide de ffmpeg, sans décodage ni réencodage):
from moviepy.video.io.ffmpeg_tools import ffmpeg_extract_subclip
ffmpeg_extract_subclip("video1.mp4", start_time, end_time, targetname="test.mp4")
Si cela ne vous aide pas, jetez un coup d'œil au code
from moviepy.video.io.ffmpeg_tools import ffmpeg_extract_subclip
ffmpeg_extract_subclip("video1.mp4", t1, t2, targetname="test.mp4")
t1 et t2 dans ce code représentent l’heure de début et l’heure de fin du découpage. La vidéo avant t1 et après t2 sera omise.
Si vous êtes nouveau sur moviepy , vous devez suivre ces étapes.
pip install --trusted-Host pypi.python.org moviepy
python
import imageio
imageio.plugins.ffmpeg.download()
Après ces commandes, vous avez la configuration logicielle minimale.
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")