检查 HLS 提要是否正在播出

To check if a HLS feed is onair or not

我正在尝试使用 MPMoviePlayerController 在我的应用程序中播放 HLS 提要 Swift。

我正在使用下面的代码播放流

    var url:NSURL = NSURL(string: "streamurl")!
    self.moviePlayer = MPMoviePlayerController()
    self.moviePlayer.movieSourceType = MPMovieSourceType.Streaming
    self.moviePlayer = MPMoviePlayerController(contentURL: url)
    self.moviePlayer.prepareToPlay()
    self.moviePlayer.shouldAutoplay = true

    self.moviePlayer.stop()
    self.moviePlayer.view.frame = self.view.bounds
    self.view.addSubview(self.moviePlayer.view)
    self.moviePlayer.fullscreen = true
    self.moviePlayer.setFullscreen(true, animated: true)
    self.moviePlayer.controlStyle = MPMovieControlStyle.Embedded
    self.moviePlayer.scalingMode = MPMovieScalingMode.AspectFit
    self.moviePlayer.play()

我担心的是我如何知道直播是否在播出,以便我通知用户它现在不可用。

您好,您可以使用媒体服务器的 api 来检查流在线状态,或者您可以阅读 m3u8 文件的内容,如果流在线,则应该包含视频比特率和音频比特率的详细信息。我更喜欢在播放 url.

之前通过发送网络请求来使用媒体服务器 api

有一个媒体服务器 (nimble) 提供名为 dispersa 的服务

(https://wmspanel.com/dispersa)

它授予 api 检查流状态的权限