博客
关于我
腾讯TcPlayer listener函数监听
阅读量:126 次
发布时间:2019-02-26

本文共 1305 字,大约阅读时间需要 4 分钟。

一、触发条件

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);                    }                                    }

转载地址:http://izof.baihongyu.com/

你可能感兴趣的文章
Mysql数据库B-Tree索引
查看>>
mysql数据库io空闲_mysql数据库磁盘io高的排查
查看>>
MYSQL数据库下载安装(Windows版本)
查看>>
MySQL数据库与Informix:能否创建同名表?
查看>>
MySQL数据库操作
查看>>
MYSQL数据库简单的状态检查(show processlist)
查看>>
MySQL数据库高并发优化配置
查看>>
mysql数据恢复
查看>>
MySQL数据的主从复制、半同步复制和主主复制详解
查看>>
mysql数据碎片整理
查看>>
MySQL数据类型
查看>>
MySQL数据读写分离(MaxScale)上干货!!!
查看>>
mysql整库导入、导出
查看>>
Mysql新建用户和数据库并授权
查看>>
mysql日志文件
查看>>
MySQL日期时间函数大全
查看>>
mysql更新一个表里的字段等于另一个表某字段的值
查看>>
Mysql更新时间列只改日期为指定日期不更改时间
查看>>
MySQL更新锁(for update)摘要
查看>>
mysql替换表的字段里面内容
查看>>