腾讯TcPlayer listener函数监听

精选30+云产品,助力企业轻松上云!>>> hot3.png

一、触发条件
1、从给定直播地址拉流 2、使用腾讯云的TcPlayer播放器 3、当网站允许flash时,如果给定的直播地址存在flv时,优先使用flash 4、播放器被隐藏

二、问题描述
使用腾讯云的TcPlayer从给定的直播地址拉流,在初始化播放器时,播放器支持设置一个listener方法,可以监听流是否拉取成功。
刚开始时是把播放器设置display:none,隐藏起来的,因为还要展示一个未开始播放的状态,拉到流之后才需要展示播放器。
此时(播放器被隐藏)如果有m3u8的流(采用h5的video播放),是没问题的,可以正常通过listener函数监听,但是播放flv时,flash就无法通过listener函数监听到流的状态,必须要把display:none干掉才行。

listener: function (msg) {
                    if(msg.type == 'error') {
                        console.log(msg, '播放报错');
                        _this.$emit('update-stream-state', 3);
                        // 可以尝试5次拉流
                        if (_this.player) {
                            timer = setTimeout(() => {
                                _this.player && _this.player.load();
                                console.log('重试拉流');
                            }, 5000);
                            setInterval(() => {
                                clearTimeout(timer);
                            }, 25000);
                        }
                    } else if (msg.type == 'play'){
                        // TODO
                        console.log(msg, '拉流成功');
                        // 清楚拉流的定时器
                        clearTimeout(timer);
                        _this.$emit('update-stream-state', 1);
                    }
                    
                }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值