例子一比例子二更加容易被理解。另外 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 做直播( 俩个例子,都可以用。替换直播地址即可,后端推流,前端观看。 )的更多相关文章

  1. vue引用公用的头部和尾部文件。

    我创建了一个header.vue和fotter.vue,用来做于网站的头部和尾部,每个页面都需要引用这两个,我以组件的方式,来引用这样只需要添加注册的组件就可以了. 第一步.在components文件 ...

  2. vue学习【一】vue引用封装echarts并展示多个echarts图表

    大家好,我是一叶,经过一段时间对vue的学习,我打算把vue做一个系列,把踩过的坑和大家分享一下. 现在开始第一章:vue引用并封装echarts 在文章开始前,我先舔波echarts(真香).阿里的 ...

  3. perl 为什么要用引用来做对象呢?

    perl 为什么要用引用来做对象呢? 因为一个重要的原因是 my 引用 脱离作用域,外部仍旧生效

  4. 如何利用vue和php做前后端分离开发?

    新手上路,前端工程师,刚毕业参加工作两个月,上面让我用vue搭建环境和php工程师一起开发,做前后端分离,然而我只用过简单的vue做一些小组件的经验,完全不知道怎样和php工程师配合,ps: php那 ...

  5. vue spn如何做seo优化

    vue spn如何做seo优化 突然来了一个需求,对已有的项目做SEO优化,WHAT? 总所周知,spn对seo不够优化,因而官方考虑到直接使用ssr 一个不算解决办法的办法prerender-spa ...

  6. vue 引用高德地图

    vue 引用地图之傻瓜式教程(复制粘贴即可用) npm 下载 npm install vue-amap --save main.js 代码 import AMap from 'vue-amap'; V ...

  7. Android实现录屏直播(三)MediaProjection + VirtualDisplay + librtmp + MediaCodec实现视频编码并推流到rtmp服务器

    请尊重分享成果,转载请注明出处,本文来自Coder包子哥,原文链接:http://blog.csdn.net/zxccxzzxz/article/details/55230272 Android实现录 ...

  8. 从后端到前端之Vue(一)写个表格试试水

    目录: 1.脚本式开发. 2.工程化开发 3.工程化和脚本的区别 4.来个table试试水 4,1.目标 4.2.思路 4.3.设计与编码 4.4.效果 5.业务分离 6.功能拓展——个性化设置    ...

  9. 调用Live555接收RTSP直播流,转换为Http Live Streaming(iOS直播)协议

    Live555接收RTSP直播流,转换Http Live Streaming(iOS直播)协议 RTSP协议也是广泛使用的直播/点播流媒体协议,之前实现过一个通过live555接收RTSP协议,然后转 ...

随机推荐

  1. Python基础之获取路径与切换路径

    一直以为我写了关于路径有关的博客,看了一圈才发现没写,那么现在就来整理下. 一.获取当前路径 os.getcwd() 二.获取当前文件路径:(__file__是当前执行文件) os.path.absp ...

  2. 创建多个Dialog时,namespace冲突问题的解决 -- 基于QT 5.2

    问题来源: 我用MainWindow作为主界面,Dialog作为设置界面,还需要一个AboutDialog作为关于界面. 设置界面的Dialog头文件dialog.h是这样的: // dialog.h ...

  3. ajax 提交序列化表单

    1.提交序列化表单+参数: var a = $.param({'address':address,'delivity':delivity,'payment':payment}) + '&' + ...

  4. 几百行代码写个Mybatis,原理搞的透透的!

    作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 Mybatis 最核心的原理也是它最便于使用的体现,为什么这说? 因为我们在使用 M ...

  5. 深度强化学习中稀疏奖励问题Sparse Reward

    Sparse Reward 推荐资料 <深度强化学习中稀疏奖励问题研究综述>1 李宏毅深度强化学习Sparse Reward4 ​ 强化学习算法在被引入深度神经网络后,对大量样本的需求更加 ...

  6. 2020国防科大综述:3D点云深度学习—综述(点云形状识别部分)

    目录 摘要 1.引言: 2.背景 2.1 数据集 2.2评价指标 3.3D形状分类 3.1基于多视图的方法 3.2基于体素的方法 3.3基于点的方法 3.3.1 点对多层感知机方法 3.3.2基于卷积 ...

  7. 解决:无法从 Windows 应用商店下载。请检查网络连接

    今天在安装wsl的时候,装了几次一直中断,一直提示正在从Windows 应用商店下载,网络无法连接... 每次都是加载到2%就断了.网上搜了一圈,找到以下2种解决办法: 修改DNS把DNS修改为微软的 ...

  8. appium自动化测试(2)-工具(monitor、uiautomatorviewer)

    获取应用信息: from appium import webdriver desired_caps ={} desired_caps['platformName']='Android'# 哪种移动平台 ...

  9. 面试必备:Android Activity启动流程源码分析

    最近大致分析了一把 Activity 启动的流程,趁着今天精神状态好,把之前记录的写成文章. 开门见山,我们直接点进去看 Activity 的 startActivity , 最终,我们都会走到 st ...

  10. Adaptive AUTOSAR 学习笔记 14 - 车辆诊断

    本系列学习笔记基于 AUTOSAR Adaptive Platform 官方文档 R20-11 版本 AUTOSAR_EXP_PlatformDesign.pdf.作者:Zijian/TENG 原文地 ...