问题描述
我对这个问题感到非常难过。
I'm quite stumped on this issue.
我有一个庞大的H.264 mp4视频文件库,我需要在iOS上播放。最初,我只针对iPad,但要求已经改变,现在我需要包括iPhone。但我注意到我的iPod Touch与我的iPad具有完全相同的操作系统版本和内置ID,将无法播放我在iPad上成功使用的相同文件。我已经向一位同事证实了这一点,该同事也拥有相同版本的iPhone和iPad。建立。我也在iPad模拟器中看到了完全相同的行为,但直到现在我还认为它是模拟器的怪癖。现在我不太确定。
I have a large library of H.264 mp4 video files that I need to have play on iOS. Originally, I was targeting only iPad, but requirements have changed and now I need to include iPhone. But I've noticed that my iPod Touch, which has exactly the same OS version and build id as my iPad, won't play the same files that I've been successfully using on the iPad. I've confirmed this with a colleague who also has an iPhone and iPad with the same version & build. I've also seen the exact same behavior in the iPad simulator, but until now I figured it was a quirk of the simulator. Now I'm not so sure.
使用以下设置对mp4进行编码:
The mp4s are encoded with the following settings:
AVC Coding 640x360, Millions
AAC, Stereo (L R), 44.100 kHz
29.97 fps
693.35kb/s
我尝试将媒体从多个服务器上加载,甚至在本地加载,但似乎没有什么区别。
I've tried loading the media off multiple servers and even locally and it doesn't seem to make a difference.
如果我将这些文件从QuickTime导出为m4v文件,它们可以在所有设备和模拟器上正常运行,所以我的直觉告诉我这是一个我缺少的编码器设置。
If I export these files from QuickTime as m4v files, they play fine on all devices and simulators, so my gut tells me this is an encoder setting I'm missing.
为了消除所有其他可能的因素,我尝试直接从Mobile Safari地址栏调用视频文件。我已经确认这种情况发生在以下匹配版本中:
To eliminate all other possible factors, I've tried calling up the video files directly from the Mobile Safari address bar. I've confirmed this is happening on the following matching builds:
设备:
- 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
- 3.2 (7W367a) - plays okay on iPad (no iPhone version)
- 4.0.2 (8A400) - doesn't play iPhone (no iPad version)
- 4.1 (8B117) - doesn't play iPhone (no iPad version)
- 4.2 (8C134) - doesn't play iPhone or iPad
我已经浏览了iOS更新日志,寻找任何可能解释原因的内容一个视频解压缩器应该在一个版本而不是另一个版本上工作,我找不到任何跳出来的东西。
I've gone through the iOS changelogs looking for anything that might explain why a video decompressor should work on one version and not another and I can't find anything that jumps out.
任何人都有任何想法可能背后的原因以及我如何解决它?
Anyone have any ideas what could be behind this and how I can fix it?
推荐答案
确保您的编码器未使用iOS上不可用的H.264功能。我相信所有iOS设备都支持3.0 Baseline,除了第一代支持3.1 Baseline和最近的3.1 Main。维基百科有不同的个人资料之间的。
Be sure that your encoder isn't using H.264 features unavailable on iOS. I believe all iOS devices support 3.0 Baseline, everything but first generation supports 3.1 Baseline, and the most recent 3.1 Main. Wikipedia has a list of differences between the different profiles.
有关iOS设备支持的更详细信息,但每个设备的官方技术规格列出了它的特殊功能。
Somewhat more detailed information on iOS devices' support is available here, but the official tech specs for each device lists its particular capabilities.
这篇关于为什么mp4视频在iPad上播放得很好,而不是在iPhone上?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!