vue 引用 tcplayer 做直播( 俩个例子,都可以用。替换直播地址即可,后端推流,前端观看。 )
例子一比例子二更加容易被理解。另外 m3u8 也支持 webrtc 开头的直播地址。
补充JS 得下载到本地,自行引入:
https://imgcache.qq.com/open/qcloud/live/webrtc/js/TXLivePusher-1.0.0.min.js
https://web.sdk.qcloud.com/player/tcplayerlite/release/v2.4.1/TcPlayer-2.4.1.js
例子一:
<template>
<!-- 测试-->
<div id="palyback">
<div :class="{'else': onswitch}">
<div id="player-container-id"></div>
</div>
<!-- <div :class="{'else': !onswitch}">
<div id="player-container"></div>
</div> -->
<!-- <div class="box-title" @click="onchange">切换</div> -->
</div> </template> <script>
import { TcPlayer } from '@/common/TcPlayer-module-2.4.1'
import { TXLivePusher } from '@/common/TXLivePusher-1.0.0.min'
export default {
data() {
return {
player: null,
// onswitch: false
}
}, mounted() {
this.playVideo()
}, methods: {
playVideo() {
document.getElementById('player-container-id').innerHTML = ""
this.player = new TcPlayer('player-container-id', {
"m3u8": 'webrtc://pull.wiseuc.com/live/test', //请替换成实际可用的播放地址
"autoplay": true, //iOS下safari浏览器,以及大部分移动端浏览器是不开放视频自动播放这个能力的
// "coverpic": img,
"width": '100%', //视频的显示宽度,请尽量使用视频分辨率宽度
"height": '100%', //视频的显示高度,请尽量使用视频分辨率高度
"remember": 1
}); this.player = new TcPlayer('player-container', {
"m3u8": 'webrtc://pull.wiseuc.com/live/test', //请替换成实际可用的播放地址
"autoplay": true, //iOS下safari浏览器,以及大部分移动端浏览器是不开放视频自动播放这个能力的
// "coverpic": img,
"width": '100%', //视频的显示宽度,请尽量使用视频分辨率宽度
"height": '100%', //视频的显示高度,请尽量使用视频分辨率高度
"remember": 1
});
}, // // 切换
// onchange() {
// this.onswitch = !this.onswitch
// }
}
}
</script> <style scoped>
#palyback {
margin-top: 5%;
width: 70%;
height: 80%;
box-sizing: border-box;
padding-top: 2rem;
min-width: 59.375rem;
position: relative;
}
.else {
width: 400px;
position: absolute;
top: 3%;
right: 2%;
z-index: 100;
} .box-title {
width: 50px;
height: 40px;
line-height: 40px;
text-align: center;
background-color: pink;
position: absolute;
bottom: 3%;
right: 2%;
}
</style>
例子二:
<template>
<!-- 测试-->
<div id="palyback">
<div id="id_test_video" style="width:100%; height:auto;"></div>
</div>
</template> <script>
import { TcPlayer } from '@/common/TcPlayer-module-2.4.1'
import { TXLivePusher } from '@/common/TXLivePusher-1.0.0.min'
export default {
data() {
return {
player: null,
onswitch: false
}
}, mounted() {
this.getPlayUrl()
}, methods: { // 直播地址
getPlayUrl() {
this.init();
},
// 初始化 视频播放器
init(video, poster) {
// let width = this.getParams("width");
// let height = this.getParams("height");
var player = new TcPlayer("id_test_video", {
m3u8: 'webrtc://pull.wiseuc.com/live/test', //请替换成实际可用的播放地址
autoplay: false, //iOS 下 safari 浏览器,以及大部分移动端浏览器是不开放视频自动播放这个能力的
poster: { style: "cover", src: poster },
width: "480",
height: "211",
live: true,
// controls:'system', // default 显示默认控件,none 不显示控件,system 移动端显示系统控件 备注:如果需要在移动端使用系统全屏,就需要设置为system。默认全屏方案是使用 Fullscreen API + 伪全屏的方式例子
pausePosterEnabled: true,
volume: 0.5,
systemFullscreen: true,
x5_orientation: 0
});
document.getElementsByClassName("vcp-error-tips")[0].style.fontSize = "14px";// 错误码提示语字体大小,因引入了rem,默认字体大小为100px.
},
}
}
</script> <style scoped>
#palyback {
width: 100%;
height: 100%;
box-sizing: border-box;
padding-top: 2rem;
background-color: #1c302e;
display: flex;
align-items: center;
justify-content: center;
min-width: 59.375rem;
position: relative;
}
.else {
width: 400px;
position: absolute;
top: 3%;
right: 2%;
z-index: 100;
} .box-title {
width: 50px;
height: 40px;
line-height: 40px;
text-align: center;
background-color: pink;
position: absolute;
bottom: 3%;
right: 2%;
}
</style>
最后感谢俩位大神的帮助:
https://blog.csdn.net/ITLISHUANG/article/details/108167296
https://blog.csdn.net/qq_33462132/article/details/103684605
vue 引用 tcplayer 做直播( 俩个例子,都可以用。替换直播地址即可,后端推流,前端观看。 )的更多相关文章
- vue引用公用的头部和尾部文件。
我创建了一个header.vue和fotter.vue,用来做于网站的头部和尾部,每个页面都需要引用这两个,我以组件的方式,来引用这样只需要添加注册的组件就可以了. 第一步.在components文件 ...
- vue学习【一】vue引用封装echarts并展示多个echarts图表
大家好,我是一叶,经过一段时间对vue的学习,我打算把vue做一个系列,把踩过的坑和大家分享一下. 现在开始第一章:vue引用并封装echarts 在文章开始前,我先舔波echarts(真香).阿里的 ...
- perl 为什么要用引用来做对象呢?
perl 为什么要用引用来做对象呢? 因为一个重要的原因是 my 引用 脱离作用域,外部仍旧生效
- 如何利用vue和php做前后端分离开发?
新手上路,前端工程师,刚毕业参加工作两个月,上面让我用vue搭建环境和php工程师一起开发,做前后端分离,然而我只用过简单的vue做一些小组件的经验,完全不知道怎样和php工程师配合,ps: php那 ...
- vue spn如何做seo优化
vue spn如何做seo优化 突然来了一个需求,对已有的项目做SEO优化,WHAT? 总所周知,spn对seo不够优化,因而官方考虑到直接使用ssr 一个不算解决办法的办法prerender-spa ...
- vue 引用高德地图
vue 引用地图之傻瓜式教程(复制粘贴即可用) npm 下载 npm install vue-amap --save main.js 代码 import AMap from 'vue-amap'; V ...
- Android实现录屏直播(三)MediaProjection + VirtualDisplay + librtmp + MediaCodec实现视频编码并推流到rtmp服务器
请尊重分享成果,转载请注明出处,本文来自Coder包子哥,原文链接:http://blog.csdn.net/zxccxzzxz/article/details/55230272 Android实现录 ...
- 从后端到前端之Vue(一)写个表格试试水
目录: 1.脚本式开发. 2.工程化开发 3.工程化和脚本的区别 4.来个table试试水 4,1.目标 4.2.思路 4.3.设计与编码 4.4.效果 5.业务分离 6.功能拓展——个性化设置 ...
- 调用Live555接收RTSP直播流,转换为Http Live Streaming(iOS直播)协议
Live555接收RTSP直播流,转换Http Live Streaming(iOS直播)协议 RTSP协议也是广泛使用的直播/点播流媒体协议,之前实现过一个通过live555接收RTSP协议,然后转 ...
随机推荐
- bs4爬取笔趣阁小说
参考链接:https://www.cnblogs.com/wt714/p/11963497.html 模块:requests,bs4,queue,sys,time 步骤:给出URL--> 访问U ...
- JS 实现一个 LRU 算法
LRU 是 Least Recently Used 的缩写,即最近最少使用,是一种常用的页面置换算法,选择内存中最近最久未使用的页面予以淘汰. 可用的 NodeJS 库见node-lru-cache ...
- 关于zend guard loard 扩展
官网http://www.zend.com/en/products/loader/downloads#Linux 安装安装在READ.ME中 修改的php.ini是apache那边的 保存,重启下就行 ...
- 大数据开发-Go-数组,切片
new()和make的区别 二者看起来没什么区别,但是他们的行为不同,分别适用于不同的类型 new (T) 为每个新的类型 T 分配一片内存,初始化为 0 并且返回类型为 * T 的内存地址:这种方法 ...
- 服务网格Istio入门-详细记录Kubernetes安装Istio并使用
我最新最全的文章都在南瓜慢说 www.pkslow.com,文章更新也只在官网,欢迎大家来喝茶~~ 1 服务网格Istio Istio是开源的Service Mesh实现,一般用于Kubernetes ...
- promise详解 : 实现promise(附实现代码)
promise then 的特点 : then 函数的返回值是一个 promise, 可以继续调用 then 函数 回调函数 resolve 和 reject 的参数 value /reason, 可 ...
- OpenGL学习笔记(六)坐标系统
目录 一.衔接 二.概述 三.各个坐标系统 局部空间 世界空间 观察空间 裁剪空间 四.两种投影矩阵 正射投影 透视投影 五.把它们都组合到一起 六.编码实现 1. 实现卡片旋转 2. 实现正方体旋转 ...
- tomcat 配置http跳转https
web.xml增加配置 <security-constraint> <web-resource-collection > <web-resource-name >S ...
- 列出文件夹中分级目录java
package test; import java.io.File; public class exportFileName { public static void main(String[] ar ...
- 关于XSS简单介绍与waf bypass的一些思路整理
很久没写东西了,今天整理一点儿思路 简单说一下XSS XSS(cross site script)即跨站脚本,侧重于"脚本"这一层概念,是一种常见web安全漏洞.攻击者通过往web ...