webrtc 视频直播

webrtc 是一种开源的音视频通信技术,可以不借助中间媒介建立浏览器点对点(peer-to-peer)连接,实现音视频以及其他数据的传输。webrtc具有平台兼容性,低延迟与高实时的优点。今天主要记录一下webrtc的使用记录:

播放HTTP视频链接

视频链接例:http://**/rtc/v1/whep/?app=live&stream=

复制代码
<video id="rtcPlayerId" controls autoplay style="width:100%;height:100%;" />

引入sdk,sdk在资源中可以下载,根据链接使用SrsRtcWhipWhepAsync这个方法来进行播放

复制代码
import { SrsRtcWhipWhepAsync } from './sdk'

接下来就是对初始化播放器了,方法简单,不过多叙述,直接上代码:

复制代码
async initPlayer() {
      //播放地址不存在,直接返回
      if(!this.playUrl) return
      let rtcMediaPlayer = document.getElementById('rtcPlayerId')
      //是否已存在,存在则关闭销毁
      if (this.sdk) {
        this.sdk.close()
        this.sdk = null
      }
      this.sdk = new SrsRtcWhipWhepAsync()
      rtcMediaPlayer.srcObject = this.sdk.stream
      const url = this.playUrl
      try {
        //videoOnly:只播放视频流;audioOnly:只播放音频流
        await this.sdk.play(url,{videoOnly:false,audioOnly:false})
      } catch (err) {
        this.sdk.close()
        console.log(err, 'rtcplayer-error')
      }
    },

注意:在页面关闭时销毁播放器

相关推荐
Mapmost几秒前
【数据融合实战手册·应用篇】“数字孪生+视频融合”让智慧城市拥有空间感知
信息可视化·音视频·无人机·智慧城市
huohuopro23 分钟前
Vue3快速入门/Vue3基础速通
前端·javascript·vue.js·前端框架
草巾冒小子25 分钟前
vue3中解决 return‘ inside ‘finally‘ block报错的问题
前端·javascript·vue.js
互联网搬砖老肖40 分钟前
Web 架构之高可用基础
前端·架构
zfyljx1 小时前
五子棋html
前端·css·html
Oliverro1 小时前
EasyRTC嵌入式音视频通话SDK驱动智能硬件音视频应用新发展
人工智能·音视频
蓑笠翁0012 小时前
Python异步编程入门:从同步到异步的思维转变
linux·前端·python
程序员小杰@3 小时前
✨WordToCard使用分享✨
前端·人工智能·开源·云计算
larntin20024 小时前
vue2开发者sass预处理注意
前端·css·sass
Enti7c4 小时前
利用jQuery 实现多选标签下拉框,提升表单交互体验
前端·交互·jquery