I am trying to figure out how to use libav
to receive streaming mp4 that contains moov
atom at the end of a file. I found that, libav
has problems decoding such files from https://d.tube. To identify this problem, I have used AtomicParsley
to see the position of moov
atom. Furthermore, I have tested with qt-faststart
. The problematic files processed with qt-faststart
have no problem with libav
at all.
I also looked into how browsers handle this kind of file as mentioned in how HTML5 video handle video with moov atom at the end. I tried download the first and the last chunk of a file to check first before streaming, but avformat_open_input()
cannot open only the last chunk of the file. I think it needs some information from other atoms as well.
So, I would like to ask if anyone knows that libav
can somehow handle this problem.