...
Параметры переключения настраиваются при вызове функции initRemoteDisplay()
:
Code Block | ||||
---|---|---|---|---|
| ||||
// Create remote display item to show remote streams state.setDisplay(initRemoteDisplay(const displayOptions = { div: document.getElementById("remoteVideo")quality:true, room: state.room,autoAbr: true }; const abrOptions = { peerConnectionthresholds: state.pc,[ displayOptions {parameter: "nackCount", maxLeap: {10}, {parameter: "freezeCount", publishermaxLeap: false10}, quality{parameter: true, "packetsLost", maxLeap: 10} ], type abrKeepOnGoodQuality: falseABR_KEEP_ON_QUALITY, abrTryForUpperQuality: ABR_TRY_UPPER_QUALITY, abr: true interval: ABR_QUALITY_CHECK_PERIOD }; const display = initRemoteDisplay( state.room, document.getElementById("remoteVideo"), displayOptions, abrOptions, abrKeepOnGoodQuality: 20000, createDefaultMeetingController, createDefaultMeetingModel, abrTryForUpperQuality: 30000createDefaultMeetingView, }oneToOneParticipantFactory(remoteTrackProvider(state.room)) })); state.setDisplay(display); // Start WebRTC negotiation await state.room.join(state.pc, null, null, 1); |
Здесь:
- abr - включает или отключает автоматическое переключение качества видео
- abrKeepOnGoodQuality - интервал в миллисекундах, в течение которого будет проигрываться текущее качество видео без резких скачков параметров WebRTC статистики
- abrTryForUpperQuality - интервал в миллисекундах, по истечении которого будет предпринята попытка переключиться на более высокое доступное качество видео, если не были резких скачков параметров WebRTC статистики
- interval - интервал сбора WebRTC статистики в миллисекундах
Если какое-то качество выбрано вручную, оно будет проигрываться даже при ухудшении параметров WebRTC статистики.
...