ios 知道 hls 直播何时播放了最后一个块

用户516883

我对流没有问题,但我不知道它何时缓冲或流何时结束。无论如何在Objective-C中确定这一点。我找到了音频解决方案,我什至尝试了 AVPlayerItemDidPlayToEndTimeNotification 但它不起作用。有什么建议么?

    NSString *url = liveStream.stream[@"cdn"];

    dispatch_async(dispatch_get_main_queue(), ^{
        AVPlayerItem *playerItem = [[AVPlayerItem alloc]
                                    initWithURL:[NSURL URLWithString:url]];
         [_player replaceCurrentItemWithPlayerItem:playerItem];


        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(itemDidFinishPlaying:) name:AVPlayerItemDidPlayToEndTimeNotification object:playerItem];



        [_player play];
    });
}

-(void)itemDidFinishPlaying:(NSNotification *) notification {

}
史蒂文·奥乔

除了你正在使用的通知之外,你应该使用 KVO 来观察 avPlayer 的速率,以及 avplayer 当前的 AVPlayer item 的状态。通过观察这些属性,你可以创建一个状态机,让你的玩家视图控制器知道发生了什么,并且可以从各种状态变化中恢复。您必须根据观察到的属性为各种玩家状态做好准备并从中恢复。

这是有关如何检查缓冲的答案

这是一个完整的 AVPlayer 的例子

当然,这是苹果关于 AVPlayer 的文档

这是关于 AVPlayerItem 的文档

最后,这是 KVOController 上的链接。以后你会感谢我的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在iOS中使用ffmpeg进行hls直播

来自分类Dev

在iOS中使用ffmpeg进行hls直播

来自分类Dev

iOS直播视频必须使用HLS吗?

来自分类Dev

使用AV Player播放AES加密的hls流-iOS Swift

来自分类Dev

iOS-iOS 10.2更新后,HLS视频将不再在WebView中播放

来自分类Dev

无法在IOS Safari中使用html5 <video>标签一起播放两个LIVE hls流

来自分类Dev

本机iOS视频播放器在使用openssl加密的HLS上失败

来自分类Dev

如何知道iOS中何时满足并行HTTP请求?

来自分类Dev

iOS-Swift如何知道copyItemAtPath何时完成?

来自分类Dev

我怎么知道用户何时从字母更改为数字iOS

来自分类Dev

知道动画何时从iOS中抽象出来的动画

来自分类Dev

iOS-Swift如何知道copyItemAtPath何时完成?

来自分类Dev

AWS S3 iOS - 知道何时完成列出对象

来自分类Dev

我怎么知道最后一个异步函数何时在“ for key in ob”循环中返回结果?

来自分类Dev

测试HLS播放列表

来自分类Dev

如何知道 2 个并行线程请求何时在 iOS 中完成

来自分类Dev

如何知道块何时完成

来自分类Dev

知道iOS通知是否被关闭

来自分类Dev

AudioContext:振荡器 - 知道何时播放了所有声音

来自分类Dev

我怎么知道何时是我的主管在erlang中重新启动过程的最后一个周期

来自分类Dev

我怎么知道何时是我的主管在erlang中重新启动过程的最后一个周期

来自分类Dev

知道每个数组内部的最后一个元素

来自分类Dev

如何知道被调用的方法是否是最后一个

来自分类Dev

iOS HLS(Http实时流)从较低的带宽开始。

来自分类Dev

iOS中HLS的视频宽度和高度

来自分类Dev

在 iOS 上从 HLS 视频流中提取 CMSampleBuffer

来自分类Dev

如果触摸特定视图上方,iOS知道touches何时结束

来自分类Dev

如何知道iOS模拟器何时启动到主屏幕?

来自分类Dev

IOS Game Center:如何知道Game Center的默认登录表单何时完成?

Related 相关文章

  1. 1

    在iOS中使用ffmpeg进行hls直播

  2. 2

    在iOS中使用ffmpeg进行hls直播

  3. 3

    iOS直播视频必须使用HLS吗?

  4. 4

    使用AV Player播放AES加密的hls流-iOS Swift

  5. 5

    iOS-iOS 10.2更新后,HLS视频将不再在WebView中播放

  6. 6

    无法在IOS Safari中使用html5 <video>标签一起播放两个LIVE hls流

  7. 7

    本机iOS视频播放器在使用openssl加密的HLS上失败

  8. 8

    如何知道iOS中何时满足并行HTTP请求?

  9. 9

    iOS-Swift如何知道copyItemAtPath何时完成?

  10. 10

    我怎么知道用户何时从字母更改为数字iOS

  11. 11

    知道动画何时从iOS中抽象出来的动画

  12. 12

    iOS-Swift如何知道copyItemAtPath何时完成?

  13. 13

    AWS S3 iOS - 知道何时完成列出对象

  14. 14

    我怎么知道最后一个异步函数何时在“ for key in ob”循环中返回结果?

  15. 15

    测试HLS播放列表

  16. 16

    如何知道 2 个并行线程请求何时在 iOS 中完成

  17. 17

    如何知道块何时完成

  18. 18

    知道iOS通知是否被关闭

  19. 19

    AudioContext:振荡器 - 知道何时播放了所有声音

  20. 20

    我怎么知道何时是我的主管在erlang中重新启动过程的最后一个周期

  21. 21

    我怎么知道何时是我的主管在erlang中重新启动过程的最后一个周期

  22. 22

    知道每个数组内部的最后一个元素

  23. 23

    如何知道被调用的方法是否是最后一个

  24. 24

    iOS HLS(Http实时流)从较低的带宽开始。

  25. 25

    iOS中HLS的视频宽度和高度

  26. 26

    在 iOS 上从 HLS 视频流中提取 CMSampleBuffer

  27. 27

    如果触摸特定视图上方,iOS知道touches何时结束

  28. 28

    如何知道iOS模拟器何时启动到主屏幕?

  29. 29

    IOS Game Center:如何知道Game Center的默认登录表单何时完成?

热门标签

归档