我正在尝试弄清楚如何使用libav
来接收流mp4,该流mp4在文件末尾包含moov
原子。我发现libav
在解码https://d.tube中的此类文件时遇到问题。为了确定此问题,我使用了AtomicParsley
来查看moov
原子的位置。此外,我已经使用qt-faststart
进行了测试。用qt-faststart
处理的有问题的文件完全没有libav
的问题。
我还研究了浏览器如何处理how HTML5 video handle video with moov atom at the end中提到的这种文件。我尝试下载文件的第一个和最后一个块,然后在流式传输之前先进行检查,但是avformat_open_input()
无法仅打开文件的最后一个块。我认为它也需要其他原子的一些信息。
因此,我想问问是否有人知道libav
能以某种方式解决此问题。