概述

最近腾讯云播放器进行了更新,增加了TCplayer,支持点播播放。由于工作需要,了解了一下TCplayer,把心得记录下来,供以后开发时参考,相信对其他人也有用。

参考文档:

TCPlayer开发文档

TCPlayer使用文档

TCplayer

TCplayer可以播放发布在腾讯云点播中的视频。所以要先上传视频到腾讯云点播,然后它会给你一个fileID和appID。前端就利用这个fileID和appID来播放视频。

由于 MP4 和 HLS(m3u8)是目前在 PC 浏览器和手机浏览器上支持程度最广泛的格式,所以腾讯云的视频点播平台最终会把上传的视频发布为 MP4HLS(m3u8) 格式。

引入播放器

首先在页面合适的地方引入文件:

<link href="//imgcache.qq.com/open/qcloud/video/tcplayer/tcplayer.css" rel="stylesheet">

<!-- 在 Chrome Firefox 等现代浏览器中通过 HTML5 播放 hls -->
<script src="//imgcache.qq.com/open/qcloud/video/tcplayer/lib/hls.min.0.8.8.js"></script>
<script src="//imgcache.qq.com/open/qcloud/video/tcplayer/tcplayer.min.js"></script>

然后放置播放器容器,注意必须为video标签

<video id="player-container-id" preload="auto" playsinline webkit-playinline x5-playinline>
</video>

最后在页面初始化的代码中加入以下初始化脚本,传入获取到的fileID和appID。

var player = TCPlayer('player-container-id', {
// player-container-id 为播放器容器ID,必须与html中一致
fileID: '4564972818956091133', // 请传入需要播放的视频filID 必须
appID: '1253668508' // 请传入点播账号的appID 必须
});

自定义宽高

像这种第三方视频组件,难点就是自定义它的宽高。我们有2种方法,一种方法是在脚本中用js去取它的宽高,代码如下所示:

var player = TCPlayer('player-container-id', {
// player-container-id 为播放器容器ID,必须与html中一致
fileID: '4564972818956091133', // 请传入需要播放的视频filID 必须
appID: '1253668508', // 请传入点播账号的appID 必须
width: $('player-container-id').width(),
height: $('player-container-id').height()
});

上面这种方法有一个缺点就是视频容易被拉伸。所以我们更推荐用第二种方法:设置视频的宽高自适应。我们在css里面设置视频的宽高自适应,代码如下:

/* 通过 css 设置播放器尺寸 这时<video>中的宽高属性将被覆盖*/
#player-container-id {
width: 100%;
max-width: 100%;
height: 0;
padding-top: 56.25%; /* 计算方式:播放器以16:9的比率显示,这里的值为 9/16 * 100 = 56.25 */
} /* 外部容器也需要是自适应的*/
#wrap {
width: 80%;
margin: 0 auto;
}

切换fileID播放

我们常常有这种需求,就是需要更换视屏播放内容。TCPlayer有一个API, loadVideoByID(args) 方法,可以更换视屏内容,代码如下:

//其中player就是实例化的TCPlayer
player.loadVideoByID({
fileID: '', // 请传入需要播放的视频 filID 必须
appID: '' // 请传入点播账号的 appID 必须
});

暂停与继续

对于视频,我们常常有这种需求,就是在暂停视频后,点击任何地方,都能够继续播放视频。这个可以利用TCPlayer的图片贴片功能实现。

TCPlayer支持配置片头、片中暂停、片尾显示图片贴片,并且可以绑定事件,也可以添加超链接。也就是说,不仅可以实现上述需求,还可以添加超链接跳转等。

方法是在【控制台】>【Web 播放器管理】选定某个播放器配置,单击贴片栏目进行设置贴片信息

示例请看:图片贴片

腾讯云播放器更新——TCplayer的更多相关文章

  1. MongoDB数组修改器更新数据(转)

    MongoDB数组修改器更新数据    这里,我们将了解一下数组修改器.数组,是我们经常看到和使用到的且非常有用的数据结构:它不仅可以通过索进行引用,还可以作为集合来使用.数组修改器,顾名思义,它是用 ...

  2. charles工具过滤腾讯视频播放器广告

    Charles是一个HTTP代理服务器,HTTP监视器,反转代理服务器,当程序连接Charles的代理访问互联网时,Charles可以监控这个程序发送和接收的所有数据.它允许一个开发者查看所有连接互联 ...

  3. Mongodb嵌套文档的改动-利用数组改动器更新数据

    初学mongodb的可能和我一样有个疑问.mongodb是文档型的,那么假设一个文档嵌套另外一个文档,假设对这个嵌套文档进行增删改查呢. 就像例如以下这样:.怎样对auther里面的name进行增删改 ...

  4. javaSE高级篇4 — 反射机制( 含类加载器 ) — 更新完毕

    反射机制 1.反射机制是什么?----英文单词是:reflect.在java.lang包下---这才是java最牛逼的技术 首先提前知道一句话----在java中,有了对象,于是有了类,那么有了类之后 ...

  5. Web播放器

    web视频播放器的使用及遇到的问题记录 TcPlayer播放器(腾讯Web超级播放器) https://cloud.tencent.com/document/product/881/20207 Ste ...

  6. 基于vue2.0的网易云音乐 (实时更新)

    本人在自学vue,之后想在学习过程中加以实践.由于之前有做过jquery的播放器效果,ui仿照网易云,地址 www.daiwei.org/music 于是就想做vue 的网易云播放器,网上也有类似的项 ...

  7. 阿里云web播放器

    原文地址:https://help.aliyun.com/document_detail/51991.html?spm=5176.doc61109.6.703.ZTCYoi 一.概念说明 1. pla ...

  8. 腾讯TencentOS 十年云原生的迭代演进之路

    导语 TencentOS Server (又名 Tencent Linux 简称 Tlinux) 是腾讯针对云的场景研发的 Linux 操作系统,提供了专门的功能特性和性能优化,为云服务器实例中的应用 ...

  9. yarn资源管理器高可用性的实现

    资源管理器高可用性 . The ResourceManager (RM) is responsible for tracking the resources in a cluster, and sch ...

随机推荐

  1. 获取cxgrid footer内容

    cxGridDBTableView1.DataController.Summary.FooterSummaryValues[4];

  2. java学习--面向对象

    对象及类的概念 对象是java程序的核心,在java程序中“万事万物皆对象” 对象可以看成是属性和方法的封装体 类是用来创建同一类型的对象的模板,在一个类中定义了该类对象所应具有的属性和方法 J2SD ...

  3. route命令详解

    1.   使用背景:需要接入两个网络,一个是部署环境所在内网环境,这个环境是上不了外网, 外网环境很可能是一个无线网络.如果两者都连接上,很可能导致有一方不能起作用,即外网或内网上不了,常常需要使用繁 ...

  4. html语义化练习易牛课堂代码

    html <body>     <header>         <!-- 导航 -->         <nav> <a href=" ...

  5. clone data

    .clone( ) <div class="demo"></div> <script src = "./jquery.js"> ...

  6. 坑之mysql 字符串与数字操作

    select "123"+1 = 124; select "1a23"+1 = 2; select "aa23"+1 = 1; select ...

  7. JavaScript资源网址

    JavaScript 全栈工程师培训教程 http://www.ruanyifeng.com/blog/2016/11/javascript.html

  8. 【python深入】单例模式

    单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在.当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场. 比如,某 ...

  9. face_recognition 模块安装

    https://blog.csdn.net/qq_15192373/article/details/78623741 https://blog.csdn.net/roguesir/article/de ...

  10. c#NPOI读取excel 比interop和Microsoft.Jet.OLEDB.4.0 之类 的好的多

    今天下午开始整理excel这块, 微软弄的那些库简直是个坑, 什么com注册之类的净是些报错. 在网上搜资料偶然碰见npoi ,好东西,值得使用 NPOI是指构建在POI 3.x版本之上的一个程序,N ...