我尝试使用 libvlc 从 http 源播放 mp4 视频。当 moov atom 放在 mdat 之后时,libVLC 会打印错误:
E/VLC: [00000055a5bea948/4a6b] mp4 stream: no moov before mdat and the stream is not seekable
但流播放。
如果我将 moov atom 放在 mdat 之前,它不会打印任何警告,但也不会播放。如果我尝试从本地存储播放两个文件 - 一切正常 - 两个文件都播放良好。
独立的 VLC android 播放器具有相同的行为。VLC(linux) 的桌面版本可以同时播放文件和两种方式 - HTTP 和本地文件。
有人遇到过这个问题吗?