【问题标题】:Load video from url in moviepy and save frame从moviepy中的url加载视频并保存帧
【发布时间】:2021-06-16 08:00:17
【问题描述】:
from moviepy.editor import *

clip = ( VideoFileClip("https://filelink/file.mp4"))

clip.save_frame("frame.png", t = 3)

我可以使用moviepy加载视频,但它会加载完整的视频,然后保存帧。是否可以不加载完整的视频,而只加载前四秒,然后在 3 秒时保存帧。

【问题讨论】:

  • 你为什么要发帖"https://filelink/file.mp4"?您找不到有效的网址吗?

标签: python python-3.x asynchronous moviepy


【解决方案1】:

除非我错过了什么,否则无法使用 MoviePy。
您可以改用ffmpeg-python

这是一个使用 ffmpeg-python 的代码示例:

import ffmpeg

stream_url = "https://file-examples-com.github.io/uploads/2017/04/file_example_MP4_480_1_5MG.mp4"

# Input seeking example: https://trac.ffmpeg.org/wiki/Seeking
(
    ffmpeg
    .input(stream_url, ss='00:00:03')  # Seek to third second
    .output("frame.png", pix_fmt='rgb24', frames='1')  # Select PNG codec in RGB color space and one frame.
    .overwrite_output()
    .run()
)

注意事项:

  • 该解决方案可能不适用于所有 mp4 URL 文件,因为 mp4 格式不是那么“WEB 友好” - 我认为 moov atom 必须位于文件的开头。
  • 您可能需要手动安装FFmpeg 命令行工具(但它应该与MoviePy 一起安装)。

结果框:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-30
    • 2018-10-15
    • 1970-01-01
    • 2018-07-14
    • 2012-09-02
    • 1970-01-01
    相关资源
    最近更新 更多