我正在尝试播放从 iTunes 获得的电影。这部电影是通过文件共享/iTunes 传输放置在我的沙盒中的。应用程序正在使用MPMoviePlayerController
或MPMoviePlayerViewController
。我可以使用任何一个,但都不能在 iTunes 电影上正常工作。
以下是我正在观察的内容:
测试影片
- 从 Hillegass 获得(第 20 章)- OK [1]
- 从 Apple 的样本中获取 - OK [2]
- Apple 视频应用程序 - 好的
iTunes 电影
- 没有视频
- 没有音频
- 我的应用程序中的静默失败 [3]
- Hillegas 样本中的无声失败 [3]
- 苹果样本中的无声失败 [3]
- Apple 视频应用程序 - 好的
当视图启动时,我得到一个黑屏并且 PLAY 按钮可用。点击PLAY会使玩家尝试操作,但失败 (?) 并再次显示 PLAY 按钮。
检查电影控制器的状态表明它已就绪。当点击PLAY时,状态变为正在播放,然后立即变为暂停。再次尝试播放会重复该循环。
在 Ready → Playing → Paused 过渡期间,我没有收到完成通知,也没有收到其他通知的错误。
我认为方向可能是问题,但旋转或更改方向模式会使 Xcode 崩溃。
Apple 的文档没有提及 iTunes 电影、受保护内容或 DRM 的任何特殊内容(也许我错过了相关文档)。这似乎是一个有争议的问题,因为电影是从 iTunes 购买的,该设备已获得授权(都在同一个帐户下),而我是被许可人。
对于它的价值,NSZombieEnabled
是的,所以我不相信我正在破坏内存(Apple 和 Hillegass 的样本中可能不存在内存错误)。
关于我可能做错了什么或应该如何播放我购买的 iTunes 电影的任何想法?
参考
[1] http://www.bignerdranch.com/book/iphone_programming_the_big_nerd_ranch_guide
[2] http://developer.apple.com/library/ios/#samplecode/MoviePlayer_iPhone/Introduction/Intro.html
[3] http://www.apple.com/itunes/charts/tv-shows/the-simpsons/lost-verizon/