Skip to main content

video

Өөрийн видеоны encode-г тохируулах

roomClient.setVideoEncoderParam(encParams: QRTCVideoEncParams)
  • Өрөөнд нэвтрэхийн өмнө тохируулах

  • encParams: videoResolution, resMode, videoFps, minVideoBitrate, maxVideoBitrate зэрэг хувьсагч агуулсан QRTCVideoEncParams төрлийн объект.


type QRTCVideoEncParams = {
videoResolution: QRTCVideoResolution, // Бичлэгний нягтаршлыг илэрхийлэх 0-19 хүртэлх тоо ( 0 бол 120х120, 19 бол 1920х1080 )
resMode: QRTCVideoResolutionMode, // Бичлэгний хэлбэрийг сонгох ( Хэвтээ эсвэл босоо ) 0 бол хэвтээ, 1 бол босоо ( QRTCVideoResolutionMode )
videoFps: number,
minVideoBitrate: number,
maxVideoBitrate: number,
enableAdjustRes?: boolean
}

Видеоны мэдээлэл авах ( Өөрийн )

roomClient.getVideoLocalStats()
  • RTCStatsReport төрлийн Promise буцаана. ( Камер холбогдоогүй тохиолдолд null утга буцаана )

let stats = await roomClient.getVideoLocalStats();
if(stats){
stats.forEach(report => {
console.log(`Report: ${report.type}`);
console.log(report);
});
}

Холбогдсон камеруудын жагсаалт авах

roomClient.getCameraDeviceList()
  • QRTCMediaDeviceInfo төрлийн объектууд агуулсан жагсаалт буцна.

type QRTCMediaDeviceInfo = {
type: QRTCMediaDeviceType, // 3 ( QRTCMediaDeviceTypeVideoCamera )
deviceId: string,
deviceName: string
}

Камер асаах ( Дүрс дамжуулалт шууд эхлэнэ )

roomClient.startLocalPreview(qrtcView: HTMLVideoElement)
  • qrtcView: Камерны дүрсийг хүлээж авах элемент ( HTMLVideoElement ) ( <video controls={false}> tag-тай холбоно )

Өөрийн дамжуулж буй дүрсийг үргэлжлүүлэн дамжуулах, түр зогсоох

roomClient.muteLocalVideo(mute: boolean)
  • Өөрийн дүрсийг үргэлжлүүлэн дамжуулахдаа mute = false, түр зогсоохдоо mute = true

Камер унтраах

roomClient.stopLocalPreview()

Одоо ашиглаж буй камерыг солих

roomClient.setCurrentCameraDevice(deviceId: string)
  • deviceId: солих гэж буй камерын ID-г оруулах

Дэлгэцээ дамжуулах ( ScreenShare )

roomClient.startScreenCapture(encParams: QRTCVideoEncParams)
  • encParams: videoResolution, resMode, videoFps, minVideoBitrate, maxVideoBitrate зэрэг хувьсагч агуулсан QRTCVideoEncParams төрлийн объект.

type QRTCVideoEncParams = {
videoResolution: QRTCVideoResolution, // Бичлэгний нягтаршлыг илэрхийлэх 0-19 хүртэлх тоо ( 0 бол 120х120, 19 бол 1920х1080 )
resMode: QRTCVideoResolutionMode, // Бичлэгний хэлбэрийг сонгох ( Хэвтээ эсвэл босоо ) 0 бол хэвтээ, 1 бол босоо ( QRTCVideoResolutionMode )
videoFps: number,
minVideoBitrate: number,
maxVideoBitrate: number,
enableAdjustRes?: boolean
}

Дэлгэц дамжуулалтын ( screen share ) мэдээлэл авах ( Өөрийн )

roomClient.getLocalUserShareStats()
  • RTCStatsReport төрлийн Promise буцаана. ( Дэлгэц дамжуулаагүй тохиолдолд null утга буцаана )

let stats = await roomClient.getLocalUserShareStats();
if(stats){
stats.forEach(report => {
console.log(`Report: ${report.type}`);
console.log(report);
});
}

Дэлгэц дамжуулалтыг ( ScreenShare ) түр зогсоох

roomClient.pauseScreenCapture()

Дэлгэц дамжуулалтыг ( ScreenShare ) үргэлжлүүлэх

roomClient.resumeScreenCapture()

Дэлгэц дамжуулалтыг ( ScreenShare ) зогсоох

roomClient.stopScreenCapture()

Бусад хэрэглэгчийн дүрсийг хүлээж авах ( create consumer )

roomClient.startRemoteVideo(userId: string, qrtcView: HTMLVideoElement)
  • userVideoAvailable listener-тэй хамт ашиглана.

  • userId: Хүлээж авах хэрэглэгчийн Id ( Өрөөний Id + "_" + тухайн app дээрх хэрэглэгчийн ID roomId_userId )

  • qrtcView: Тухайн хэрэглэгчийн дүрсийг хүлээж авах элемент ( HTMLVideoElement ) ( <video controls={false}> tag-тай холбоно )

Бусад хэрэглэгчийн дүрсийг хүлээн авахаа түр зогсоох, үргэлжлүүлэх ( pause, resume consumer )

roomClient.muteRemoteVideo(userId: string, mute: boolean)
  • userId: Тухайн хэрэглэгчийн Id ( Өрөөний Id + "_" + тухайн app дээрх хэрэглэгчийн ID roomId_userId )

  • mute: true утгатай бол тухайн хэрэглэгчийн дүрсийг түр зогсооно, false утгатай бол тухайн хэрэглэгчийн дүрсийг үргэлжлүүлэн хүлээн авна.

Бусад хэрэглэгчийн дүрсийг хүлээн авахаа зогсоох ( delete consumer )

roomClient.stopRemoteVideo(userId: string)
  • userId: Хүлээж авахаа зогсоох хэрэглэгчийн Id ( Өрөөний Id + "_" + тухайн app дээрх хэрэглэгчийн ID roomId_userId )

Бусад хэрэглэгчийн дэлгэцийг (screen share) хүлээж авах ( create consumer )

roomClient.startRemoteShare(userId: string, qrtcView: HTMLVideoElement)
  • userShareAvailable listener-тэй хамт ашиглана.

  • userId: Хүлээж авах хэрэглэгчийн Id ( Өрөөний Id + "_" + тухайн app дээрх хэрэглэгчийн ID roomId_userId )

  • qrtcView: Тухайн хэрэглэгчийн дэлгэцийг хүлээж авах элемент ( HTMLVideoElement ) ( <video controls={false}> tag-тай холбоно )

Бусад хэрэглэгчийн дэлгэц (screen share) дамжуулалтыг зогсоох ( delete consumer )

roomClient.stopRemoteShare(userId: string)
  • userId: Хүлээн авахаа зогсоох хэрэглэгчийн Id ( Өрөөний Id + "_" + тухайн app дээрх хэрэглэгчийн ID roomId_userId )

Бүх хэрэглэгчдийн дүрсийг нээх, хаах ( өөрөөс бусад )

roomClient.muteAllRemoteViews(mute: boolean)
  • Бүх хэрэглэгчдийн дүрсийг нээхдээ mute = false, хаахдаа mute = true

Бусад хэрэглэгчийн видеоны мэдээлэл авах

roomClient.getRemoteUserVideoStats(userId: string)
  • userId: string - Мэдээлэл авах хэрэглэгчийн ID

  • RTCStatsReport төрлийн Promise буцаана. ( Хэрэглэгч видео дамжуулаагүй тохиолдолд null утга буцаана )


let stats = await roomClient.getRemoteUserVideoStats(userId);
if(stats){
stats.forEach(report => {
console.log(`Report: ${report.type}`);
console.log(report);
});
}

Бусад хэрэглэгчийн дэлгэц дамжуулалтын ( screen share ) мэдээлэл авах

roomClient.getRemoteUserShareStats(userId: string)
  • userId: string - Мэдээлэл авах хэрэглэгчийн ID

  • RTCStatsReport төрлийн Promise буцаана. ( Хэрэглэгч дэлгэц дамжуулаагүй тохиолдолд null утга буцаана )


let stats = await roomClient.getRemoteUserShareStats(userId);
if(stats){
stats.forEach(report => {
console.log(`Report: ${report.type}`);
console.log(report);
});
}

Бусад хэрэглэгчийн дүрсний харьцааг тохируулах

mQRTCMeeting.setRemoteViewFillMode(userId: string, mode: QRTCVideoFillMode)
  • userId: String - Тухайн хэрэглэгчийн Id ( Өрөөний Id + "_" + тухайн app дээрх хэрэглэгчийн ID roomId_userId )

  • fillMode: int - 0 бол fill ( дэлгэцний хэмжээнд тааруулсан ), 1 бол fit ( бичлэгний хэмжээнд тааруулсан ) байна.


export enum QRTCVideoFillMode {
QRTCVideoFillMode_Fill, // 0
QRTCVideoFillMode_Fit // 1
}

Listener

Дэлгэц дамжуулалт ( screenShare ) амжилттай эхлэх үед

roomClient.on( "screenCaptureStarted", () => { } );

Дэлгэц дамжуулалт ( screenShare ) түр зогсох ( paused ) үед

roomClient.on( "screenCapturePaused", () => { } );

Дэлгэц дамжуулалт ( screenShare ) үргэлжлэх ( resumed ) үед

roomClient.on( "screenCaptureResumed", () => { } );

Дэлгэц дамжуулалтыг ( screenShare ) зогсоох үед

roomClient.on( "screenCaptureStopped", () => { } );

Бусад хэрэглэгч дэлгэцээ дамжуулах ( screen share ) үед

roomClient.on( "userShareAvailable", ( shareInfo ) => { } );
  • roomClient.startRemoteShare method-той хамт ашиглана.

  • shareInfo: userId, available зэрэг хувьсагч агуулсан объект

  • userId: Дэлгэцээ дамжуулж буй хэрэглэгчийн Id ( Өрөөний Id + "_" + тухайн app дээрх хэрэглэгчийн ID roomId_userId )

  • available: Тухайн хэрэглэгч дэлгэцээ дамжуулах үед true, дэлгэцээ дамжуулахаа болих үед false утга дамжуулна.

Бусад хэрэглэгч дүрс ( видео ) дамжуулах үед

roomClient.on( "userVideoAvailable", ( videoInfo ) => { } );
  • roomClient.startRemoteVideo method-той хамт ашиглана.

  • videoInfo: userId, available зэрэг хувьсагч агуулсан объект

  • userId: Дүрс дамжуулж буй хэрэглэгчийн Id ( Өрөөний Id + "_" + тухайн app дээрх хэрэглэгчийн ID roomId_userId )

  • available: Тухайн хэрэглэгч дүрс дамжуулах үед true, дүрс дамжуулахаа зогсоох үед false утга дамжуулна.