一:腾讯视频截取

H5视频播放除了video标签以外,还有iframe嵌套视频

项目需求是用户输入腾讯视频的html链接,如

https://v.qq.com/x/page/y0116k2vspw.html

需要把这个html转化为视频,在这里最最关键的一点就是视频videoId的获取,正常情况下videoId就是.html前面字段

用JS把视频ID拿出来

var startIndex=data.info.video.link.lastIndexOf('/') //data.info.video.lonk是后台返回的用户输入的视频链接
var video=data.info.video.link.substr(startIndex+)
var endIndex=video.split('.')[] //最后得到视频的videoid(endindex=y0116k2vspw)

接下来及就是JS调用腾讯统一播放器(参考地址 https://www.jianshu.com/p/081a4b1cdfc8)

一:Version1.0

1、

首先引入<script language="javascript" src="http://qzs.qq.com/tencentvideo_v1/js/tvp/tvp.player.js" charset="utf-8"></script>

2、参数配置

<script>
var video = new tvp.VideoInfo(); //初始化视频对象
video.setVid(vid); //向视频对象传入视频vid ,这个是点播的时候使用,vid就是视频的videoid
//video.setChannelId(cnlid); //向视频对象传入直播频道cnlid ,这个是直播的时候使用 /*点播跟直播的区别主要是:
点播是通过video.setVid(vid);
而直播是通过video.setChannelId(cnlid); 设置直播id
点播需要player.addParam('type','2');或者省略,因为默认播放器为点播状态;
直播必须通过player.addParam('type','1');设置播放器为直播状态,。
*/ var player = new tvp.Player(width, height); //初始化播放器对象并设置宽、高,可以直接写具体数字,页可以通过JS动态改变
player.setCurVideo(video); //设置播放器初始化时加载的视频
player.addParam('type',''); //设置播放器为直播状态,1表示直播,2表示点播,默认为2
player.addParam("wmode","transparent"); //设置透明化,不设置时,视频为最高级,总是处于页面的最上面,此时设置z-index无效
player.addParam('autoplay',false); //是否自动播放
player.addParam('pic',''); //播放器默认图,当autoplay=0时有效;不传入则使用视频截图
player.addParam('showend',) //结束时是否有广告

player.addParam("adplay","0");       //去除广告 ,默认 1 是显示广告,0是屏蔽广告

player.addParam("player","html5");   //播放器类型为html5,还可以设置为控件播放,flash播放,以及auto 自动选择等

    player.addParam("flashskin", "http://imgcache.qq.com/minivideo_v1/vd/res/skins/TencentPlayerMiniSkin.swf"); //flash播放器精简皮肤;不传入则使用默认皮肤
player.addParam("loadingswf", "http://imgcache.qq.com/minivideo_v1/vd/res/skins/web_small_loading.swf"); //加载视频时的swf动画; 不传入则使用默认样式
player.write(DOMid); //输出播放器,DOMid为播放器的容器
//events
player.onplaying = function(vid) {
console.log(vid);
}
player.onended = function(vid) {
console.log(vid);
} </script>

二:Version2.0

1、

首先引入<script language="javascript" src="http://imgcache.qq.com/tencentvideo_v1/tvp/js/tvp.player_v2.js" charset="utf-8"></script>

2、参数配置

<script>
var video = new tvp.VideoInfo();
video.setVid(vid);
var player =new tvp.Player();
player.create({
width: width, //播放器的宽度
height: height, //播放器的高度
video: video, //默认的视频对象
modId: DOMid, //默认的 DOM 元素 ID
autoplay: false,
pic: imgURL
});
player.onplaying = function (vid){
console.log(vid)
}
player.onallended = function (vid){
console.log(vid)
};
</script>

完美去除腾讯视频广告

JS截取腾讯视频和去除视频广告的更多相关文章

  1. 【转】Android 破解视频App去除广告功能详解及解决办法总结

    Android 破解视频App去除广告功能 作为一个屌丝程序猿也有追剧的时候,但是当打开视频app的时候,那些超长的广告已经让我这个屌丝无法忍受了,作为一个程序猿看视频还要出现广告那就是打我脸,但是我 ...

  2. PHP生成类似类似优酷、腾讯视频等其他视频链的ID

    不知道你注意了没有,类似优酷.腾讯视频等其他视频链接似乎类似这样的 http://v.youku.com/v_show/id_XNjA5MjE5OTM2.html 注意id_xxx那段,是不是看不懂了 ...

  3. 云-腾讯云-实时音视频:实时音视频(TRTC)

    ylbtech-云-腾讯云-实时音视频:实时音视频(TRTC) 支持跨终端.全平台之间互通,从零开始快速搭建实时音视频通信平台 1.返回顶部 1. 腾讯实时音视频(Tencent Real-Time ...

  4. 【全网免费VIP观看】哔哩哔哩番剧解锁大会员-集合了优酷-爱奇艺-腾讯-芒果-乐视-ab站等全网vip视频免费破解去广告-高清普清电视观看-持续更新

    哔哩哔哩番剧解锁大会员-集合了优酷-爱奇艺-腾讯-芒果-乐视-ab站等全网vip视频免费破解去广告-高清普清电视观看-持续更新 前言 突然想看电视,结果 没有VIP 又不想花钱,这免费的不久来啦. 示 ...

  5. 如何使用 iMovie 去除视频里面的声音

    如何使用 iMovie 去除视频里面的声音 视频去除背景音 iMovie https://www.apple.com/imovie/ https://books.apple.com/book/id14 ...

  6. android平台短视频技术之 视频编辑的经验分享.

    android平台短视频技术之 视频编辑的经验分享. 提示一: 各位看官,这里分享的是视频编辑,即剪切/拼接/分离/合并/涂鸦/标记/叠加/滤镜等对视频的编辑操作.不是流媒体网络播放等功能,请注意. ...

  7. 头条小视频和西瓜视频signature签名算法

    点击上方↑↑↑蓝字[协议分析与还原]关注我们 "分析今日头条内小视频和西瓜视频分享后浏览器打开所用的signature签名算法." 上月写的一篇关于使用微信的wxid加好友的文章, ...

  8. js使用工具将表单封装成json字符串传到后台,js截取字符串(学生笔记)

    <script src="js/jquery.min.js"></script> <script src="https://cdn.boot ...

  9. iOS - 直播流程,视频推流,视频拉流,简介,SMTP、RTMP、HLS、 PLPlayerKit

    收藏笔记 1 . 音视频处理的一般流程: 数据采集→数据编码→数据传输(流媒体服务器) →解码数据→播放显示1.数据采集:摄像机及拾音器收集视频及音频数据,此时得到的为原始数据涉及技术或协议:摄像机: ...

随机推荐

  1. SQL语句优化分析

    分析比较执行时间计划读取情况 select * from dbo.Product 执行上面语句一般情况下只给你返回结果和执行行数,那么你怎么分析呢,怎么知道优化之后跟没有优化的区别呢. 下面几种方法: ...

  2. 模仿.NET框架ArrayList写一个自己的动态数组类MyArrayList,揭示foreach实现原理

    通过.NET反编译工具可以查看到ArrayList内部的代码,发现ArrayList并非由链表实现,而是由一个不断扩容的数组对象组成. 下面模仿ArrayList写一个自己的MyArrayList. ...

  3. Promise解决回调地狱(多层调用问题)

    Promise # Promise 是异步编程的一种解决方案:从语法上讲,promise是一个对象,从它可以获取异步操作的消息:从本意上讲,它是承诺,承诺它过一段时间会给你一个结果.promise有三 ...

  4. sparksql报错

    执行时报错: org.apache.spark.sql.AnalysisException: Unable to generate an encoder for inner class `cn.itc ...

  5. 洛谷 P1339 [USACO09OCT]热浪Heat Wave(最短路)

    嗯... 题目链接:https://www.luogu.org/problem/P1339 这道题是水的不能在水的裸最短路问题...这里用的dijkstra 但是自己进了一个坑—— 因为有些城市之间可 ...

  6. CSS的响应式布局

    响应式布局是什么 它是相对于固定像素大小的网页而言的,顾名思义,响应式布局就是网页能够响应各种各样不同分辨率大小的设备,能够将网页很好的呈献给用户. 如何实现响应式布局? 1.CSS3@media查询 ...

  7. 如果你是新晋的leader, 你可能需要了解这些。

    背景 在职业发展的道路上,我们总会面临这样的抉择: 是在技术的路上一条路走到黑,做技术专家 接触管理, 走上管理 年龄大了,搬砖没人要,转型 or 去公司楼下卖炒粉 我曾经有个小小的愿望: 在毕业5年 ...

  8. 【已解决】iOS11使用MJRefresh上拉加载结束tableView闪动、跳动的问题

    更新提示: [2018年11月20日更新] 经过放置在项目中运行发现,如果在快速滚动tableview的时候会在下面这行代码中崩溃(慢慢的滚动是没关系的-): CGFloat cellHeight = ...

  9. js数组去重解决方案

    js数组去重是前端面试中经常被问的题目,考察了面试者对js的掌握,解决问题的思路,以及是否具有专研精神.曾经一位前端界大神告诉我,解决问题的方式有很多种,解决问题时多问问自己还有没有其他的方法,探求最 ...

  10. JDBC笔记一

    连接池原理 数据库连接池:1.提前创建好多个连接对象,放到缓存中(集合),客户端用时直接从缓存中获取连接 ,用完连接后一定要还回来. 目的:提高数据库访问效率.  模拟代码: package com. ...