为了使 Instagram 和 Whatsapp 中的 MP4 可预览,我应该将 MOOV 框移到文件的前面吗?

In order to make an MP4 in Instagram and Whatsapp previewable, should I move the MOOV box to the front of the file?

目前我已经通过MediaCodec成功生成了MP4文件,但是上传后无法在Instagram或Whatsapp中播放。现在我假设问题出在 MP4 文件无法像 MPEG4Writer 所说的那样流式传输,并且为了使它们流式传输,我必须将 MooV 原子移动到 MP4 文件的开头。

我知道 libav/ffmpeg 中的 qt-faststart 选项,但我排除了它,因为 ffmpeg 会使我的 APK 大小膨胀。不过,我听说可以使用 MP4Parser 来做到这一点。

我的问题:

  1. 关于将 MooV 原子移动到 MP4 文件的开头,还有其他选择吗?
  2. Instagram 和 Whatsapp 是否需要像这样流式传输 MP4 文件?

实际上,您不需要所有 libav/ffmpeg 来使用 qt-faststart,它是一个独立的小应用程序 - 您只需要包含它的单个 C 文件,所以它是实际上是一个非常小的工具。

不过,我不知道这是否是 Instagram 和 Whatsapp 无法使用您的视频的原因,或者是否由于其他问题。