audio
Өөрийн audio-ны чанарыг тохируулах
roomClient.setAudioProfile(profile: QRTCAudioProfile)
- profile: int - дууны чанарыг илэрхийлсэн тоон утга
enum QRTCAudioProfile {
AUDIO_PROFILE_STANDARD, // single channel 40kbps
AUDIO_PROFILE_HIGH, // single channel 128kbps
AUDIO_PROFILE_STANDARD_STEREO, // dual channel 40kbps
AUDIO_PROFILE_HIGH_STEREO // dual channel 192kbps
}
Дууны мэдээлэл авах ( Өөрийн )
roomClient.getAudioLocalStats()
- RTCStatsReport төрлийн Promise буцаана. ( Микрофон холбогдоогүй тохиолдолд null утга буцаана )
let stats = await roomClient.getAudioLocalStats();
if(stats){
stats.forEach(report => {
console.log(`Report: ${report.type}`);
console.log(report);
});
}
Холбогдсон микрофонуудын жагсаалт авах
roomClient.getMicDevicesList()
- QRTCMediaDeviceInfo төрлийн объектууд агуулсан жагсаалт буцна.
type QRTCMediaDeviceInfo = {
type: QRTCMediaDeviceType, // 1 ( QRTCMediaDeviceTypeAudioInput )
deviceId: string,
deviceName: string
}
Одоо ашиглаж буй микрофоныг солих
roomClient.setCurrentMic(deviceId: string)
- deviceId: солих гэж буй микрофоны ID-г оруулах
Микрофон асаах ( Дуу дамжуулалт шууд эхлэнэ )
roomClient.startLocalAudio(mute: boolean)
Өөрийн дамжуулж буй дууг үргэлжлүүлэн дамжуулах, түр зогсоох
roomClient.muteLocalAudio(mute: boolean)
- Өөрийн дууг үргэлжлүүлэн дамжуулахдаа mute = false, түр зогсоохдоо mute = true
Микрофон унтраах
roomClient.stopLocalAudio()
Холбогдсон спикерүүдийн жагсаалт авах
roomClient.getSpeakerDevicesList()
- QRTCMediaDeviceInfo төрлийн объектууд агуулсан жагсаалт буцна.
type QRTCMediaDeviceInfo = {
type: QRTCMediaDeviceType, // 2 ( QRTCMediaDeviceTypeAudioOutput )
deviceId: string,
deviceName: string
}
Одоо ашиглаж буй спикерийг солих
roomClient.setCurrentSpeaker(deviceId: string, elements: any = [])
deviceId: солих гэж буй микрофоны ID-г оруулах
elements: спикерт дамжуулах дууны элементийн ( htmlAudioElement ) жагсаалт
Browser-с хамаарч ашиглах боломжгүй байж болно. ( https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/setSinkId#browser_compatibility )
Бусад хэрэглэгчийн дууг хүлээж авах ( create consumer )
roomClient.startRemoteAudio(userId: string, qrtcAudio: HTMLAudioElement)
userAudioAvailable listener-тэй хамт ашиглана.
userId: Хүлээж авах хэрэглэгчийн Id ( Өрөөний Id + "_" + тухайн app дээрх хэрэглэгчийн ID roomId_userId )
qrtcAudio: Тухайн хэрэглэгчийн дууг хүлээж авах элемент ( HTMLAudioElement ) (
<audio>
tag-тай холбоно )
Бусад хэрэглэгчийн дууг хүлээн авахаа түр зогсоох, үргэлжлүүлэх ( pause, resume consumer )
roomClient.muteRemoteAudio(userId: string, mute: boolean)
userId: Тухайн хэрэглэгчийн Id ( Өрөөний Id + "_" + тухайн app дээрх хэрэглэгчийн ID roomId_userId )
mute: true утгатай бол тухайн хэрэглэгчийн дууг түр зогсооно, false утгатай бол тухайн хэрэглэгчийн дууг үргэлжлүүлэн хүлээн авна.
Бусад хэрэглэгчийн дууг хүлээн авахаа зогсоох ( delete consumer )
roomClient.stopRemoteAudio(userId: string)
- userId: Хүлээж авахаа зогсоох хэрэглэгчийн Id ( Өрөөний Id + "_" + тухайн app дээрх хэрэглэгчийн ID roomId_userId )
Бүх хэрэглэгчдийн дууг нээх, хаах ( өөрөөс бусад )
roomClient.muteAllRemoteAudios(mute: boolean)
- Бүх хэрэглэгчдийн дууг нээхдээ mute = false, хаахдаа mute = true