剪掉一部分视频 - python
Cutting out a portion of video - python
我有每个视频的长度大约为 25 分钟,我希望使用 python 从开头剪掉几秒钟。
通过搜索,我偶然发现了 python 的 moviepy 包。问题是,即使是单个视频也会占用大量时间。以下是我用来从单个视频开始剪掉 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
pip install imageio-ffmpeg
旧系统的安装(在你的 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")
对于某些视频,ffmpeg_extract_subclip
没有为我生成正确的结果。 link 中的以下代码虽然有效。
# Import everything needed to edit video clips
from moviepy.editor import *
# loading video gfg
clip = VideoFileClip("geeks.mp4")
# getting only first 5 seconds
clip = clip.subclip(0, 5)
# showing clip
clip.ipython_display(width = 360)
然后您可以按如下方式保存剪辑:
clip.write_videofile("clip.mp4")
我有每个视频的长度大约为 25 分钟,我希望使用 python 从开头剪掉几秒钟。
通过搜索,我偶然发现了 python 的 moviepy 包。问题是,即使是单个视频也会占用大量时间。以下是我用来从单个视频开始剪掉 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
pip install imageio-ffmpeg
旧系统的安装(在你的 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")
对于某些视频,ffmpeg_extract_subclip
没有为我生成正确的结果。 link 中的以下代码虽然有效。
# Import everything needed to edit video clips
from moviepy.editor import *
# loading video gfg
clip = VideoFileClip("geeks.mp4")
# getting only first 5 seconds
clip = clip.subclip(0, 5)
# showing clip
clip.ipython_display(width = 360)
然后您可以按如下方式保存剪辑:
clip.write_videofile("clip.mp4")