1

我正在开发一个 iPhone 应用程序,我在其中使用MPMoviePlayerController播放视频。我使用自定义控件来播放视频。

我有一个显示视频时间线的滑块。使用此用户可以将电影搜索到电影的任何时间线。

当用户连续移动滑块时:

  1. 仅在第一次暂停视频;[MPMoviePlayerController-obj pause]
  2. MPMoviePlayerController-obj.currentPlaybackTime = slider.value

当滑块动作结束时:

  1. 播放视频;[MPMoviePlayerController-obj play]

这将从用户离开滑块的位置播放电影。但是,当电影播放完毕时,它会导致空白帧。这个缺陷是随机出现的;即不是为了所有的时间。

得到空白帧的原因是什么?我该如何解决这个问题?

4

2 回答 2

2

我不确定这是否可行,但尝试将 设置initialPlaybackTimeslider.valuecurrentPlaybackTime

于 2011-05-30T10:00:33.270 回答
2

为确保您的内容没有缺陷,因此可能触发该问题,您应该尝试MPMoviePlayerController使用 Apple 的参考视频内容复制错误结果。

我个人观察到许多与编码不当有关的问题。处理有损压缩内容时往往会发生奇怪的事情。这适用于视频(i 帧与 p 帧)以及音频(可变比特率)。

一个是报告的播放持续时间不正确。此类问题可能会导致意外的完成状态。我见过一些情况,MPMoviePlayerController即使实际视频显然已经完成,但仍会显示几秒钟的播放时间。一旦用户在视频中四处寻找,这些情况就会经常发生。

一旦您确定使用给定的示例文件也发生了问题,您应该提交错误报告。

于 2011-06-02T20:35:18.493 回答