在 iOS 中无法使用 avfoundation 播放特定的 MP4 文件

Rab*_*med 7 video ffmpeg avfoundation ios mobile-ffmpeg

我有一个 mp4 视频文件,我想使用 avfoundation 在 iOS 中播放它。不幸的是,即使该文件具有h264视频编解码器和aac音频编解码器,该文件也无法播放且无法保存到默认图库(照片)中。而且只有当我使用 ffmpeg 重新编码它时才能播放。我想知道为什么文件只有在重新编码视频后才能播放?

Not Playable(originalFile.mp4) vs Playable File(outputFile.mp4) 信息比较

在此处输入图片说明

当应用这些命令时,文件可以使用 avfoundation 播放:

  1. ffmpeg -y -hide_banner -i originalFile.mp4 -f mp4 -vcodec h264 -vf scale=out_color_matrix=bt709 -color_primaries bt709 -color_trc bt709 -colorspace bt709 -b:v 5703k -acodec aac -b:a 249k outputFile.mp4

  2. ffmpeg -y -hide_banner -i originalFile.mp4 -f mp4 -vcodec h264 -acodec aac outputFile.mp4

应用此命令时,文件无法使用 avfoundation 播放:

  1. ffmpeg -y -hide_banner -i originalFile.mp4 -f mp4 -vcodec copy -acodec aac outputFile.mp4

originalFile.mp4 文件链接: https : //drive.google.com/file/d/1-yZFL0EsLztMIfwU79Al6dv8gdwJyGAD/view?usp=sharing

两个文件的 ffprobe 流都在这里 https://www.diffchecker.com/VgZL66QB