video - 使用 ffmpeg 检查不完整的视频片段
问题描述
我有一个用户有一个非常大的视频,他们必须上传:它至少是 100GB 和.mov
格式。在用户能够上传完整文件之前,我需要检查以下内容:
- 分辨率为 1920x080
- 有视频编解码器 Apple ProRes 422
- 有 6 或 8 个音轨
- 具有 PCM Little Endian 音频
为了检查用户是否有有效的文件上传,我想到了以下方法:
- 也许只抓取文件的前 10K 字节并检查标题(这总是有效吗?)
- 抓取头部的 10K 和尾部的 10K 并运行 ffmpeg(服务器端或浏览器内通过https://itnext.io/build-ffmpeg-webassembly-version-ffmpeg-js-part-1 -preparation-ed12bf4c8fac)。
什么可能是这样做的好方法?再说一遍,我有一个用户上传了一个非常大的视频,我想在允许他们上传整个视频文件之前预先检查它是否符合四个标准。
解决方案
FFmpeg 需要解析每个视频/音频流的完整标题和前几帧来填充这些细节。标题可能需要超过 10K 的空间,比如 1M。根据位置的不同moov
,您将需要头部和尾部的数据。
用户访问https://mediaarea.net/MediaInfoOnline向您发送文本报告会更方便。