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')
      }
    },

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

相关推荐
京东云开发者21 分钟前
全球首个!京东全栈开源JoyAI-VL-Interaction,让大模型从“一问一答”走向“边看边说”
前端
京东云开发者21 分钟前
正式上线!京东云AI智能渗透测试服务
前端
AprChell25 分钟前
低代码设计器和低代码设计引擎架构综述
前端·vue.js·低代码
Ruihong26 分钟前
🎉 VuReact 1.9.0 发布,支持 Vue 3.4 defineModel 编译到 React
vue.js·react.js·面试
Hilaku31 分钟前
Node.js 还能再战十年?给你一个不换引擎的理由
前端·javascript·程序员
颜进强39 分钟前
AI性能参数-截断、延迟与流式输出
前端·后端·ai编程
spmcor1 小时前
React 架构师之路:Next.js 全栈革命(第八篇)
前端·react.js
英勇无比的消炎药1 小时前
TinyRobot 源码深度分析:OpenTiny 的 AI 对话组件库
前端·vue.js·github
假如让我当三天老蒯1 小时前
React基础、进阶(学习用)
前端·react.js·面试
风骏时光牛马1 小时前
HTML十大经典实战代码案例合集
前端