为什么mp4视频在iPad上播放得很好,而不是在iPhone上?

And*_*rew 11 iphone video codec ipad

我对这个问题感到非常难过.

我有一个大型的H.264 mp4视频文件库,我需要在iOS上播放.最初,我只针对iPad,但要求已经改变,现在我需要包括iPhone.但我注意到我的iPod Touch与我的iPad具有完全相同的操作系统版本和内置ID,将无法播放我在iPad上成功使用的相同文件.我已经与一位同事拥有相同版本和版本的iPhone和iPad确认了这一点.我在iPad模拟器中也看到过完全相同的行为,但直到现在我才认为它是模拟器的怪癖.现在我不太确定.

mp4使用以下设置进行编码:

AVC Coding 640x360, Millions
AAC, Stereo (L R), 44.100 kHz
29.97 fps
693.35kb/s
Run Code Online (Sandbox Code Playgroud)

我已经尝试从多个服务器甚至本地加载媒体,它似乎没有什么区别.

如果我将这些文件从QuickTime导出为m4v文件,它们可以在所有设备和模拟器上正常运行,所以我的直觉告诉我这是一个我缺少的编码器设置.

为了消除所有其他可能的因素,我尝试直接从Mobile Safari地址栏调用视频文件.我已经确认在以下匹配版本中发生了这种情况:

设备:

  • 4.2.1(8C148) - 在iPad上播放,而不是在iPhone上播放.

模拟器:

  • 3.2(7W367a) - 在iPad上播放没问题(没有iPhone版)
  • 4.0.2(8A400) - 不玩iPhone(没有iPad版)
  • 4.1(8B117) - 不玩iPhone(没有iPad版)
  • 4.2(8C134) - 不播放iPhone或iPad

我已经浏览了iOS更新日志,寻找任何可能解释为什么视频解压缩器应该在一个版本而不是另一个版本上工作的东西,我找不到任何跳出来的东西.

任何人都有任何想法可以支持这个以及如何解决它?

And*_*all 5

确保您的编码器未使用iOS上不可用的H.264功能.我相信所有iOS设备都支持3.0 Baseline,除了第一代支持3.1 Baseline和最近的3.1 Main.维基百科有不同配置文件之间的差异列表.

这里提供有关iOS设备支持的更详细信息,但每种设备的官方技术规格都列出了其特定功能.