@tencentcloud/trtc-component-uniapp
Version:
TRTC Uni-app Components for WeChat Mini Program
2 lines (1 loc) • 9.84 kB
JavaScript
(function(o,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("@tencentcloud/trtc-cloud-wx"),require("vue")):typeof define=="function"&&define.amd?define(["exports","@tencentcloud/trtc-cloud-wx","vue"],s):(o=typeof globalThis<"u"?globalThis:o||self,s(o.TRTCComponentUni={},o.TRTCCloud,o.Vue))})(this,function(o,s,a){"use strict";const A="",g=(e,n)=>{const r=e.__vccOpts||e;for(const[u,t]of n)r[u]=t;return r},h=s.getTRTCShareInstance(),l=h.trtc,d=h.InterfaceEventEmitter,b={name:"TRTCPusher",props:{pictureInPictureMode:{type:[String,Array],default:void 0}},data(){return{pusher:{},soundMode:""}},mounted(){h.logger.info("trtc-pusher attached"),this.bindTRTCCloudEvent(),d.emit("pusherDomReady",!0)},beforeUnmount(){this.executeCleanup()},beforeDestroy(){this.executeCleanup()},methods:{executeCleanup(){h.logger.info("trtc-pusher detached"),d.emit("pusherDomReady",!1),this.unbindTRTCCloudEvent(),h.exitRoom()},pusherAttributesChange(e){const{pusher:n,callback:r}=e;this.pusher={...this.pusher,...n},r&&this.$nextTick(r)},playerAudioRouteChange(e){const{soundMode:n,callback:r}=e;this.soundMode=n,r&&r()},bindTRTCCloudEvent(){d.on("pusherAttributesChange",this.pusherAttributesChange),d.on("playerAudioRouteChange",this.playerAudioRouteChange)},unbindTRTCCloudEvent(){d.off("pusherAttributesChange",this.pusherAttributesChange),d.off("playerAudioRouteChange",this.playerAudioRouteChange)},emitDocEvent(e,n){this.$emit(e,n)},handleStateChange(e){l.pusherEventHandler(e),this.emitDocEvent("statechange",e)},handleNetStatus(e){l.pusherNetStatusHandler(e),this.emitDocEvent("netstatus",e)},handleError(e){l.pusherErrorHandler(e),this.emitDocEvent("error",e)},handleBGMStart(e){l.pusherBGMStartHandler(e),this.emitDocEvent("bgmstart",e)},handleBGMProgress(e){l.pusherBGMProgressHandler(e),this.emitDocEvent("bgmprogress",e)},handleBGMComplete(e){l.pusherBGMCompleteHandler(e),this.emitDocEvent("bgmcomplete",e)},handleAudioVolumeNotify(e){h.isEnterRoom&&l.pusherAudioVolumeNotify(e),this.emitDocEvent("audiovolumenotify",e)},handleEnterPictureInPicture(e){this.emitDocEvent("enterpictureinpicture",e)},handleLeavePictureInPicture(e){this.emitDocEvent("leavepictureinpicture",e)}}},v={class:"trtc-pusher-container"};function _(e,n,r,u,t,i){const y=a.resolveComponent("live-pusher"),S=a.resolveComponent("live-player");return a.openBlock(),a.createElementBlock("div",v,[a.createVNode(y,{class:"trtc-pusher",url:t.pusher.url,mode:"HD",autopush:t.pusher.autopush,"enable-camera":t.pusher.enableCamera,"enable-mic":t.pusher.enableMic,muted:t.pusher.muted,"enable-agc":t.pusher.enableAgc,"enable-ans":t.pusher.enableAns,"enable-ear-monitor":t.pusher.enableEarMonitor,"auto-focus":t.pusher.enableAutoFocus,zoom:t.pusher.enableZoom,"min-bitrate":t.pusher.minBitrate,"max-bitrate":t.pusher.maxBitrate,"video-width":t.pusher.videoWidth,"video-height":t.pusher.videoHeight,beauty:t.pusher.beautyLevel,whiteness:t.pusher.whitenessLevel,orientation:t.pusher.videoOrientation,aspect:t.pusher.videoAspect,"device-position":t.pusher.frontCamera,"remote-mirror":t.pusher.enableRemoteMirror,"local-mirror":t.pusher.localMirror,"background-mute":t.pusher.enableBackgroundMute,"audio-quality":t.pusher.audioQuality,"audio-volume-type":t.pusher.audioVolumeType,"audio-reverb-type":t.pusher.audioReverbType,"waiting-image":t.pusher.waitingImage,"picture-in-picture-mode":r.pictureInPictureMode,"beauty-style":t.pusher.beautyStyle,fps:t.pusher.fps,filter:t.pusher.filter,onStatechange:i.handleStateChange,onNetstatus:i.handleNetStatus,onError:i.handleError,onBgmstart:i.handleBGMStart,onBgmprogress:i.handleBGMProgress,onBgmcomplete:i.handleBGMComplete,onAudiovolumenotify:i.handleAudioVolumeNotify,onEnterpictureinpicture:i.handleEnterPictureInPicture,onLeavepictureinpicture:i.handleLeavePictureInPicture},null,8,["url","autopush","enable-camera","enable-mic","muted","enable-agc","enable-ans","enable-ear-monitor","auto-focus","zoom","min-bitrate","max-bitrate","video-width","video-height","beauty","whiteness","orientation","aspect","device-position","remote-mirror","local-mirror","background-mute","audio-quality","audio-volume-type","audio-reverb-type","waiting-image","picture-in-picture-mode","beauty-style","fps","filter","onStatechange","onNetstatus","onError","onBgmstart","onBgmprogress","onBgmcomplete","onAudiovolumenotify","onEnterpictureinpicture","onLeavepictureinpicture"]),a.createVNode(S,{class:"trtc-player","sound-mode":t.soundMode},null,8,["sound-mode"])])}const C=g(b,[["render",_],["__scopeId","data-v-3e2e5059"]]),D="",c=s.getTRTCShareInstance(),m=c.trtc,p=c.InterfaceEventEmitter,T={name:"TRTCPlayer",props:{streamId:{type:String,default:""},pictureInPictureMode:{type:[String,Array],default:void 0},pictureInPictureInitPosition:{type:String,default:void 0},enableSystemPip:{type:Boolean,default:void 0},enableCasting:{type:Boolean,default:void 0}},data(){return{player:{},TRTCStreamId:"",soundMode:""}},watch:{streamId(e){this.setTRTCStreamId(e)}},mounted(){c.logger.info("trtc-player attached",this.streamId),this.streamId&&p.emit("playerDomReady",{isReady:!0,view:this.streamId}),this.TRTCStreamId=this.getTRTCStreamId(this.streamId),this.bindTRTCCloudEvent()},beforeUnmount(){this.executeCleanup()},beforeDestroy(){this.executeCleanup()},methods:{executeCleanup(){c.logger.info("trtc-player detached",this.streamId),p.emit("playerDomReady",{isReady:!1,streamId:this.streamId}),this.unbindTRTCCloudEvent()},setTRTCStreamId(e){return c.logger.info("trtc-player setTRTCStreamId",e),new Promise((n,r)=>{try{this.$emit("update:streamId",e),this.TRTCStreamId=this.getTRTCStreamId(e),this.$nextTick(()=>{c.logger.info("trtc-player setTRTCStreamId success",e),n(),p.emit("playerDomReady",{isReady:!0,view:e})})}catch(u){c.logger.info("trtc-player setTRTCStreamId fail",e,u),r(u)}})},getTRTCStreamId(e){const n=e.split("_"),r=n.slice(0,-1).join("_"),u=Number(n[n.length-1]);return s.translateTRTCStreamId(r,u)},bindTRTCCloudEvent(){p.on("playerAttributesChange",this.playerAttributesChange),p.on("playerAudioRouteChange",this.playerAudioRouteChange)},unbindTRTCCloudEvent(){p.off("playerAttributesChange",this.playerAttributesChange),p.off("playerAudioRouteChange",this.playerAudioRouteChange)},playerAttributesChange(e){const{view:n,playerAttributes:r,callback:u}=e;n===this.streamId&&(this.player={...this.player,...r},u&&u())},playerAudioRouteChange(e){const{soundMode:n,callback:r}=e;this.soundMode=n,r&&r()},emitDocEvent(e,n){this.$emit(e,n)},_playerStateChange(e){m.playerEventHandler(e),this.emitDocEvent("statechange",e)},_playerFullscreenChange(e){m.playerFullscreenChange(e),this.emitDocEvent("fullscreenchange",e)},_playerNetStatus(e){m.playerNetStatus(e),this.emitDocEvent("netstatus",e)},_playerAudioVolumeNotify(e){try{e.currentTarget.dataset.streamid=this.player.streamID,m.playerAudioVolumeNotify(e)}catch(n){c.logger.warn(n)}finally{this.emitDocEvent("audiovolumenotify",e)}},_playerEnterPictureInPicture(e){this.emitDocEvent("enterpictureinpicture",e)},_playerLeavePictureInPicture(e){this.emitDocEvent("leavepictureinpicture",e)},_playerCastingUserSelect(e){this.emitDocEvent("castinguserselect",e)},_playerCastingStateChange(e){this.emitDocEvent("castingstatechange",e)},_playerCastingInterrupt(e){this.emitDocEvent("castinginterrupt",e)}}},I={class:"trtc-player-container"},E={key:1,class:"trtc-dark-mask"};function R(e,n,r,u,t,i){const y=a.resolveComponent("live-player");return a.openBlock(),a.createElementBlock("div",I,[r.streamId?(a.openBlock(),a.createBlock(y,{key:0,class:"trtc-player",id:t.player.streamID,"data-userid":t.player.userID,"data-streamid":t.player.streamID,"data-streamtype":t.player.streamType,src:t.player.src,mode:"RTC",autoplay:t.player.autoplay,"mute-audio":t.player.muteAudio,"mute-video":t.player.muteVideo,orientation:t.player.orientation,"object-fit":t.player.objectFit,"background-mute":t.player.enableBackgroundMute,"min-cache":t.player.minCache,"max-cache":t.player.maxCache,"sound-mode":t.soundMode,"enable-recv-message":t.player.enableRecvMessage,"auto-pause-if-navigate":t.player.autoPauseIfNavigate,"auto-pause-if-open-native":t.player.autoPauseIfOpenNative,"picture-in-picture-mode":r.pictureInPictureMode,"picture-in-picture-init-position":r.pictureInPictureInitPosition,"enable-system-pip":r.enableSystemPip,"enable-casting":r.enableCasting,debug:t.player.debug,onStatechange:i._playerStateChange,onFullscreenchange:i._playerFullscreenChange,onNetstatus:i._playerNetStatus,onAudiovolumenotify:i._playerAudioVolumeNotify,onEnterpictureinpicture:i._playerEnterPictureInPicture,onLeavepictureinpicture:i._playerLeavePictureInPicture,onCastinguserselect:i._playerCastingUserSelect,onCastingstatechange:i._playerCastingStateChange,onCastinginterrupt:i._playerCastingInterrupt},null,8,["id","data-userid","data-streamid","data-streamtype","src","autoplay","mute-audio","mute-video","orientation","object-fit","background-mute","min-cache","max-cache","sound-mode","enable-recv-message","auto-pause-if-navigate","auto-pause-if-open-native","picture-in-picture-mode","picture-in-picture-init-position","enable-system-pip","enable-casting","debug","onStatechange","onFullscreenchange","onNetstatus","onAudiovolumenotify","onEnterpictureinpicture","onLeavepictureinpicture","onCastinguserselect","onCastingstatechange","onCastinginterrupt"])):a.createCommentVNode("",!0),t.player.stopVideo?(a.openBlock(),a.createElementBlock("div",E)):a.createCommentVNode("",!0)])}const f=g(T,[["render",R],["__scopeId","data-v-51905de0"]]),P=e=>{e.component("TRTCPusher",C),e.component("TRTCPlayer",f)};o.default=s,o.TRTCPlayer=f,o.TRTCPusher=C,o.install=P,Object.keys(s).forEach(e=>{e!=="default"&&!Object.prototype.hasOwnProperty.call(o,e)&&Object.defineProperty(o,e,{enumerable:!0,get:()=>s[e]})}),Object.defineProperties(o,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});