gpt4 book ai didi

video - 使用 MP4 文件 block 作为缩略图

转载 作者:行者123 更新时间:2023-12-04 22:51:25 28 4
gpt4 key购买 nike

我想从视频中提取单帧(作为拇指),而无需下载完整的视频文件。我只想阅读 mp4 header (信息应该在 moov atom 中),然后下载所需的字节范围。 Afaik 这就是您跳到无缓冲部分时浏览器(HTML5 视频)所做的事情

我已经看过了:How can HTML5 video's byte-range requests (pseudo-streaming) work?但我不知道如何将它与 ffmpeg 一起使用。

非常感谢!

最佳答案

如果您绝对确定要使这种方法发挥作用,那么以下是通用算法的运行方式:

  • 下载 MP4 文件的第一个千字节
  • 确保 moov原子在前面;确定moov原子的长度并发出另一个请求以获取原子的其余部分
  • 挖掘moov atom 找视频 trak原子;挖掘该原子以找到以下原子:stsd , stss , stco/co64 , 和 stsz
  • stsd将为您提供输入 H.264 视频解码器所需的初始化信息
  • stss atom 为您提供所有同步样本(关键帧)的列表;这些可以独立解码,非常适合您的缩略图前景
  • 当您知道哪些帧是关键帧时,由 stss 提供atom,您可以与 stco 交叉引用或 co64原子(trak 将有一个或另一个)以找到绝对文件位置,而 stsz atom,它将准确地告诉您帧中有多少字节

  • 结合所有这些信息,您应该能够仅下载和解码 MP4 视频的关键帧(从而调整大小并重新压缩以进行缩略图)。

    关于video - 使用 MP4 文件 block 作为缩略图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21223749/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com