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

时间:2011-02-12 12:55:56

标签: iphone ipad video codec

我对这个问题感到很难过。

我有一个大型的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

我尝试将媒体从多个服务器上加载,甚至在本地加载,但似乎没有什么区别。

如果我将这些文件从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更新日志,寻找任何可能解释为什么视频解压缩器应该在一个版本而不是另一个版本上工作的东西,我找不到任何跳出来的东西。

任何人都有任何想法可能背后的原因以及我如何解决它?

1 个答案:

答案 0 :(得分:5)

确保您的编码器未使用iOS上不可用的H.264功能。我相信所有iOS设备都支持3.0 Baseline,除了第一代支持3.1 Baseline和最近的3.1 Main。维基百科在不同的个人资料之间有一个list of differences

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