popper小P

微信小程序如何播放腾讯视频?

1.背景

因为当时需要做视频播放,后台存放视频文件又不现实。所以,做了一个能解析腾讯视频地址的并播放视频的小程序。

2.介绍

小程序里的解析腾讯视频地址的代码是参考了一个开源项目you-get写的,把里面的腾讯视频下载的python代码写成了JS代码。

3.腾讯视频ID从哪获取

1.一般播放一个腾讯视频的时候播放地址为https://v.qq.com/x/page/w0647n5294g.html
.html到最后一个/之间的字符串即为腾讯视频id。如https://v.qq.com/x/page/w0647n5294g.html的id为w0647n5294g

4.获取腾讯视频真实播放地址

分为以下两步

  • 1 获取视频信息
    把腾讯视频ID传入以下函数
getVideoInfo: function (vid) {var that = this;var urlString = 'https://vv.video.qq.com/getinfo?otype=json&appver=3.2.19.333&platform=11&defnpayver=1&vid=' + vid;wx.request({url: urlString, success: function (res) {var dataJson = res.data.replace(/QZOutputJson=/, '') + "qwe";var dataJson1 = dataJson.replace(/;qwe/, '');var data = JSON.parse(dataJson1);var fn_pre = data.vl.vi[0].lnkhost = data['vl']['vi'][0]['ul']['ui'][0]['url']var streams = data['fl']['fi']var seg_cnt = data['vl']['vi'][0]['cl']['fc']if (parseInt(seg_cnt) == 0) {seg_cnt = 1}var best_quality = streams[streams.length - 1]['name']var part_format_id = streams[streams.length - 1]['id']for (var i = 1; i < (seg_cnt + 1); i++) {var filename = fn_pre + '.p' + (part_format_id % 10000) + '.' + i + '.mp4';console.log(filename);pageArr.push(i);that.requestVideoUrls(part_format_id, vid, filename, 'index' + i);}}})},

  • 2 根据视频信息解析视频真正的播放地址
requestVideoUrls: function (part_format_id, vid, fileName, index) {var keyApi = "https://vv.video.qq.com/getkey?otype=json&platform=11&format=" + part_format_id + "&vid=" + vid + "&filename=" + fileName + "&appver=3.2.19.333"var that = this;wx.request({url: keyApi,success: function (res) {var dataJson = res.data.replace(/QZOutputJson=/, '') + "qwe";var dataJson1 = dataJson.replace(/;qwe/, '');var data = JSON.parse(dataJson1);if (data.key != undefined) {var vkey = data['key']var url = host + fileName + '?vkey=' + vkey;part_urls[index] = String(url)that.setData({videoUrl: part_urls.index1});}}})},

该函数里面的part_urls.index1,即为腾讯视频的真实地址。把这个地址放到小程序的video组件的src中,即可播放腾讯上的视频。
最后放上demo:weChatVideoPlay

微信小程序如何播放腾讯视频?相关推荐

  1. 微信小程序video组件/腾讯视频插件,禁止拖动进度条,使用遮罩层的方式实现

    话不多说,直接上代码 wxml文件 这里是原生video组件的方式 <video enable-progress-gesture="false" ><cover- ...

  2. 小程序php调用腾讯视频,如何用微信小程序来看腾讯视频?观看视频的办法

    软件安装:腾讯视频 腾讯视频于2016年底提出了全新的品牌理念--"不负好时光",以更加年轻化.更能引起用户情感共鸣的定位全新亮相,并展现了全新品牌标识.秉承"内容为王, ...

  3. 微信小程序中播放海康萤石云HLS '.m3u8'视频 video标签

    微信小程序中播放海康萤石云HLS '.m3u8'视频 video标签 前言 萤石云开放平台 微信开发者工具 前言 因为项目需要在微信小程序上展示实时视频流信息,以下内容是我将萤石云平台官方文档和自己实 ...

  4. 微信小程序高级实战开发培训视频

    JEECG社区<微信小程序高级实战开发培训视频> 课      程:  微信小程序高级实战开发培训视频 讲      师:   周俊峰.张加强 开课时间:  2016年12月06日开课 * ...

  5. 微信小程序实现抖音切换视频效果

    微信小程序实现抖音切换视频效果 思路: 使用微信小程序的swiper组件,使其竖向滑动 分页加载,每次加载3个视频,当滑动到只剩1个视频时加载下一页 问题: 加载多个视频时,多个视频会同时播放 效果图 ...

  6. 微信小程序网悦新闻开发--视频模块开发(四)

    目录 微信小程序网悦新闻开发--功能介绍(一) 微信小程序网悦新闻开发--小程序配置(二) 微信小程序网悦新闻开发--首页模块开发(三) 微信小程序网悦新闻开发--视频模块开发(四) 微信小程序网悦新 ...

  7. 微信小程序-音频播放-wx.createInnerAudioContext() 每次都是重复播放同一条录音

    前言 在调试微信小程序音频播放时,刚开始我也是直接复制官方文档的实例: const innerAudioContext = wx.createInnerAudioContext() innerAudi ...

  8. 微信小程序:全新强大的恋爱话术微信小程序源码土味情话视频号or自媒体操作项目

    你猜的不错,这就是一款恋爱话术小程序 该款小程序相对来说还是挺强大的 而且还融合了小编前段时间发布的一款土味情话在里面 这款小程序基本分段都是和外面几千块几百块的分段是一样的 如有分段是: 开场阶段丨 ...

  9. 微信开发上传视频到服务器,微信小程序中实现上传视频的开发代码

    微信小程序中实现上传视频的开发代码,视频,接口,上传,代码,服务器 微信小程序中实现上传视频的开发代码 易采站长站,站长之家为您整理了微信小程序中实现上传视频的开发代码的相关内容. 本篇文章给大家带来 ...

最新文章

  1. linux 精简开机启动服务,打造个人专属的微型Linux--启动原理篇
  2. C与c++中-什么时候用,头文件中与“”区别
  3. 一次针对EduSrc的挖掘
  4. clientHeight,offsetHeight,scrollHeight迷一样的三个值
  5. centos7 firewall指定IP与端口访问(常用)
  6. hdu2115: I Love This Game
  7. mysql 分类_MYSQL数据类型分类
  8. MVVM架构~knockoutjs系列之扩展ajax验证~验证输入数据是否与后台数据相等
  9. 学生成绩管理系统(C语言实现)
  10. CAD计算机辅助设计——文件管理和界面设置
  11. UPS 笔记 (逆变电源 DSP)
  12. 如何应对硬盘无法识别通电异响等那些七七八八的物理故障
  13. unity迷你太空射击游戏截图
  14. 吴裕雄--天生自然 诗经:望海潮·东南形胜
  15. 在IPCam上搭建WEB服务并通过CGI交互的相关问题
  16. IDAE Keystore was tampered with报错解决
  17. 使用串口线连接调试机顶盒
  18. 计算机大赛指导老师自评怎么写,计算机*学生的简单自我评价
  19. 网络广播mms直播地址
  20. 计算机模拟实验的关系,试说明数值模拟方法的特点,它与理论研究,实验研究有什么关系...

热门文章

  1. php是脚本吗,php是脚本吗-PHP问题
  2. Linux入门-专题视频课程
  3. android 圆形图片设置蒙层,Android引导蒙层,安卓新手引导图,引导图层,支持椭圆,圆形,矩形多种形状,一行代码快速搞定-Go语言中文社区...
  4. Matlab 风电出力概率评估,风速不确定,设备故障不确定性。马尔可夫,蒙特卡洛算法。
  5. Ubuntu对时,时区不同步,校对时间
  6. 计算机死亡公式,半数致死量及其计算方法概述.pdf
  7. 程序隐藏助手下载//老板键下载//上班开小差工具
  8. 【Metashape精品教程5】影像质量评估
  9. VTK 画箭头带长度测量
  10. ESP8266 无限重启踩坑