2分钟实现一个Vue实时直播系统
前言
我们在不敲代码的时候可能会去看游戏直播,那么是前台怎么实现的呢?下面我们来讲一下。
第一步,购买云直播服务
首先,你必须去阿里云或者腾讯云注册一个直播服务。也花不了几个钱,练手的话,几十块钱就够了。
这里我拿阿里云举例,购买完了,配置好推流域名跟播流域名,下面我们将进行地址生成。记住下面生成的地址,下面会用到。
第二步,下载本地推流工具
https://obsproject.com/
第三步,设置OBS
在第一步中图片底部有推流地址,需要注意,分为两部分填入下方图所示。
在AppName字段 为分界线分为两部分。输入完毕,点击确定,就好了。
第四步,开启推流
在OBS右方有个开启推流工具,第一次点开你会觉得黑屏,那是你没有
选择直播画面,在来源选项中,点击加号,选择对应来源,我这里选择的是显示器捕获。
第五步,写代码
安装hls.js
npm i hls.js -S
安装dplayer,你可以进入官网,配置更加丰富的api。
npm i dplayer -S
<!-- 现场课堂 -->
<template>
<div class="center">
<div class="live">
<div id="dplayer"></div>
</div>
</div>
</template>
<script>
/*
我这里使用的是m3u8流,你们也可以选择其他方式,dplayer官网都有详细介绍。
*/
let Hls = require('hls.js');
import DPlayer from 'dplayer';
export default {
name: "Live",
methods: {
// 直播
live(){
const dp = new DPlayer({
live:true,
container: document.getElementById('dplayer'),
video: {
url: 'https://live.carvedu.com/a/b.m3u8?auth_key=1589281526-0-0-02d0913b6a725efdb53f0deed823e418', // 示例地址
type: 'customHls',
customType: {
customHls: function (video, player) {
const hls = new Hls();
hls.loadSource(video.src);
hls.attachMedia(video);
},
},
},
});
}
},
mounted() {
this.live();
},
};
</script>
<style scoped>
#dplayer{
width: 100%;
height: 500px;
}
</style>
结语
以下为效果图:
作者:Vam的金豆之路
主要领域:前端开发
我的微信:maomin9761
微信公众号:前端历劫之路