首页 > 编程知识 正文

前端项目经验怎么写,腾讯云直播如何搭建

时间:2023-05-06 11:01:49 阅读:276716 作者:1322

腾讯云文档
直播拉流:https://cloud.tencent.com/document/product/454/7503
 

1. 在 index.html 中引入初始化脚本(可将其保存在本地)

<script src="//imgcache.qq.com/open/qcloud/video/vcplayer/TcPlayer-2.3.2.js" charset="utf-8"></script>;

 2. 在 vue 组件 中放置容器

<div id="id_test_video" style="width:100%; height:auto;"></div>

 3. 对接视频播放

getParams(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if (r != null) { return decodeURIComponent(r[2]); } return null;},// 直播地址getPlayUrl() { this.$api.getPlayUrl().then(res => { this.init(res.data.playUrl, res.data.img); })}// 初始化 视频播放器init(video, poster) { let width = this.getParams("width"); let height = this.getParams("height"); var player = new TcPlayer("id_test_video", { m3u8: video, //请替换成实际可用的播放地址 autoplay: false, //iOS 下 safari 浏览器,以及大部分移动端浏览器是不开放视频自动播放这个能力的 poster: { style: "cover", src: poster }, width: width || "480", height: 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.},

 video 地址格式:http://aa.com/xxxxxxx.m3u8
aa 字段为播放域名,需要 CNAME 配置,具体文档:
域名管理:https://cloud.tencent.com/document/product/267/30559
CNAME 配置: https://cloud.tencent.com/document/product/267/30560
没有配置的 m3u8 地址是播放不了的。

不知道配置对了没有可以使用 VLC media player 软件,
安装 - 菜单栏媒体 - 打开网络串流,填入你的 m3u8 地址,播放看能否成功。

而推流可以使用 OBS Studio 软件生成 m3u8 推流资源,
下载(官网要下载半小时) - 安装 - 打开
- 软件窗口下方的来源面板 - 点击+添加“显示器捕获”,
- 打开软件窗口右下方控件面板的“设置”,
- 推流选项: 服务“自定义”,服务器:和上面步骤的域名管理中的推流域名有关,具体填写:
直播码接入:https://cloud.tencent.com/document/product/267/31156  地址生成器 生成出来的前面一段,
而后面一段就是串流秘钥。   (也可以问一下度娘怎么用 obs 进行推流)
示例:
服务器:rtmp://aa.com/live/
串流秘钥:xxxxxxxx?bizid=xx&txSecret=xxxx&txTime=xxxx
- 填写完成就可以点击开始推流了。
 

官方有没有支持 npm 方式?暂时是没看到有的,但有人封装了官方的 tcplayer 的非官方 npm 方式,
可以在 https://www.npmjs.com/ 这里搜索一下 tcplayer 。
可能由于技术水平不够,我搜到的 3 个都试了,仅最后一个成功了。但最后也取消了用 npm 的方式,而是用了引入保存在本地的官方 js 文件。

 

 另外,全屏问题:

 

完。
仅记录,欢迎交流。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。