【问题标题】:iOS 9 Picture in Picture issue for playing live streaming videoiOS 9 用于播放直播视频的画中画问题
【发布时间】:2015-11-12 09:33:22
【问题描述】:

我在画中画模式下播放直播视频时遇到了一个非常奇怪的问题。请参考我的截图:

当我按“暂停”按钮一会儿然后按“播放”按钮时,视频不会开始。

这适用于 VOD。我想知道它有什么问题。

这是我的代码:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {

    let dest = segue.destinationViewController as! PlayerViewController
    dest.delegate = self
    let url = NSURL(string: "http://mylivestreamurl/playlist.m3u8")
    if let movieUrl = url {
        dest.player = AVPlayer(URL: movieUrl)
        dest.player?.play()
    }
}

func playerViewController(playerViewController: AVPlayerViewController, restoreUserInterfaceForPictureInPictureStopWithCompletionHandler completionHandler: (Bool) -> Void) {

    let currentViewController = navigationController?.visibleViewController
    if currentViewController != playerViewController {
        if let topViewController = navigationController?.topViewController {
            topViewController.presentViewController(playerViewController, animated: true, completion: { () -> Void in
                completionHandler(true)
            })
        }
    }
}

有什么想法吗?谢谢。

【问题讨论】:

  • 是否可以在画中画中隐藏播放/暂停按钮?
  • 我的支持。我也有同样的问题。我最初是在一个具有自定义 UI 的播放器中体验它的,所以我认为使用我自己的 AVPlayerLayer 可能存在问题,但是创建一个只有 AVPlayerViewController 的新骨架应用程序会产生相同的结果。从 Wowza 服务器流式传输。点播视频也适合我。只是直播的问题。

标签: ios avplayerviewcontroller


【解决方案1】:

我猜想恢复播放所需的视频片段在内容服务器上不再可用,或者您是否检查过?如果 AVPlayer 在暂停时在后台缓冲实时内容,那么恢复是可能的(受本地缓冲区大小的限制),但我认为这不会发生。如果可以在直播时隐藏暂停按钮,那就太好了。我还没有找到办法,至少现在还没有。

【讨论】:

  • 我现在已经用我的应用进行了测试。看来画中画控制器暂停/播放适用于我的实时流。如果我暂停一会儿,播放器会向前跳到当前播放时间。
  • 播放/暂停通过 AVPlayer 在我的应用程序中运行良好。但它不适用于 PiP。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-09-09
  • 1970-01-01
  • 2021-11-09
  • 2019-05-31
  • 1970-01-01
  • 1970-01-01
  • 2012-06-04
相关资源
最近更新 更多