? ? ? ? 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) returnlet rtcMediaPlayer = document.getElementById('rtcPlayerId')//是否已存在,存在則關閉銷毀if (this.sdk) {this.sdk.close()this.sdk = null}this.sdk = new SrsRtcWhipWhepAsync()rtcMediaPlayer.srcObject = this.sdk.streamconst url = this.playUrltry {//videoOnly:只播放視頻流;audioOnly:只播放音頻流await this.sdk.play(url,{videoOnly:false,audioOnly:false})} catch (err) {this.sdk.close()console.log(err, 'rtcplayer-error')}},
注意:在頁面關閉時銷毀播放器