在 MPMoviePlayerController 上调用 play 后,电影播放有一些延迟

Posted

技术标签:

【中文标题】在 MPMoviePlayerController 上调用 play 后,电影播放有一些延迟【英文标题】:Movie is played with some delay after calling play on MPMoviePlayerController 【发布时间】:2011-06-23 12:29:56 【问题描述】:

我正在开发一个使用 MPMoviePlayerController 播放视频的 iPhone 应用程序。有时,我在 MPMoviePlayerController 上调用 play 后,某些视频不会立即播放。

我已经调用了 prepareToPlay 并且在 MPMediaPlaybackIsPreparedToPlayDidChangeNotification 的通知方法中,我正在调用 MPMoviePlayerController 上的播放。

我怎样才能确定这里的问题?

【问题讨论】:

【参考方案1】:

尝试使用属性movieSourceType 并在运行prepareToPlay 之前为其分配适当的值。

来自MPMoviePlayerController reference;

这个的默认值 属性是 MPMovieSourceTypeUnknown。 这个属性提供了一个线索 播放系统应该如何 下载和缓冲电影内容。 如果你知道源类型 电影,设置这个值 播放开始前的属性可以 改善电影的加载时间 内容。如果不设置源 在播放前显式键入, 电影播放器​​控制器必须收集 此信息,可能会延迟 播放。

【讨论】:

我正在尝试播放本地文件。因此,我在调用 prepareToPlay 之前将 MPMovieSourceTypeFile 设置为 movieSourceType。它没有帮助。另外,我注意到这个问题只发生在 3GS (4.3)

以上是关于在 MPMoviePlayerController 上调用 play 后,电影播放有一些延迟的主要内容,如果未能解决你的问题,请参考以下文章

如何在 MPMoviePlayerController 上处理多个 SRT 文件

在 MPMoviePlayerController 上执行捏合手势时屏幕黑屏

在 UITableViewCell 中嵌入 MPMoviePlayerController

MPMoviePlayerController 在影片结尾更改控件样式

后台的 MPMoviePlayerController / AVAudioSession 在来电后不会重新开始播放

MPMoviePlayerController 在启动前显示空白屏幕?