我想从视频中提取单帧(作为拇指),而无需下载完整的视频文件.我想只读取mp4标题(信息应该在moov原子中),然后下载所需的字节范围.Afaik这就是当您跳到无缓冲的部分时,浏览器(HTML5视频)所做的事情
我已经看过:HTML5视频的字节范围请求(伪流)如何工作?但我无法弄清楚如何与ffmpeg一起使用它.
非常感谢!
如果您绝对决定使这种方法有效,那么通用算法的运行方式如下:
moov原子在前面; 确定moov原子的长度并提出另一个请求来获取原子的其余部分moov原子挖掘找到视频trak原子; 挖成原子找到下列原子:stsd,stss,stco/ co64,和stszstsd将为您提供输入H.264视频解码器所需的初始化信息stss原子给你所有同步样本(关键帧)的列表; 这些可以独立解码,非常适合您的缩略图stss原子的礼貌,你可以与stco或co64原子(一个trak将有一个或另一个)交叉引用,以找到绝对文件的位置,和stsz原子,它将告诉你究竟有多少字节在帧中结合所有这些信息,您应该能够下载和解码(并因此调整大小和重新压缩以进行缩略图)只是MP4视频的关键帧.