【问题标题】:How to get #EXT-X-ENDLIST event when playing HLS content?播放 HLS 内容时如何获取#EXT-X-ENDLIST 事件?
【发布时间】:2017-07-12 16:37:06
【问题描述】:

根据“Example Playlist Files for use with HTTP Live Streaming:Basic Variant Playlist”,它描述了下面的 sn-p 文本:

注意:变体播放列表不会重读。一旦客户端读取了变体播放列表,它就假定变体集没有改变。一旦客户端在单个变体之一上看到 endlist 标记,就会结束流。

但我找不到相关的 API 来获取“endlist tag”发生的事件。 有没有人建议通过委托或函数来获取此事件? 谢谢!

【问题讨论】:

    标签: ios http-live-streaming


    【解决方案1】:

    网络

    Safari 将在播放完成时触发 HTML5 视频元素上的 ended event

    如果您使用第三方播放器,例如hls.jsBitmovin Player,您可能需要查看他们的 API;他们中的大多数为此提供了跨浏览器的便利功能。

    应用程序

    对于 iOS 上的原生应用,AVPlayerItemDidPlayToEndTimeNotification event 可能是您想要查看的内容。

    【讨论】:

    • 我正在寻找与AVFoundation相关的API,但感谢您的信息!
    • AVPlayerItemDidPlayToEndTimeNotification 用于播放到最后。但是 EXT-X-ENDLIST 是由内容服务器发送来描述流媒体结束的。例如,如果流媒体应用程序有搜索栏,并且用户定期将其拖动到请求点,它不会触发 AVPlayerItemDidPlayToEndTimeNotification,但我可以依赖可搜索的持续时间来知道流媒体结束。
    • 好的,所以您实际上是在询问何时从“直播”模式切换到“VoD”模式的事件。是这样吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-18
    • 2019-07-18
    • 2016-11-04
    相关资源
    最近更新 更多