Современные версии браузеров могут оценивать пропускную способность канала, вычисляя максимально доступный битрейт видео при публикации потока с определенным разрешением, битрейтом и частотой кадров. Значение максимального доступного битрейта availableOutgoingBitrate
можно получить из WebRTC статистики в браузерах на основе Chromium и в Safari. Mozilla Firefox не выводит параметр оценки канала в статистику.
Параметр availableOutgoingBitrate
вместе со статистикой WebRTC можно получить при помощи метода Stream.getStat()
:
stream.getStats((stats) => { if (stats) { if (stats.outboundStream && stats.outboundStream.video) { let vBitrate = (stats.outboundStream.video.bytesSent - bytesSent) * 8; setBitrate(vBitrate); bytesSent = stats.outboundStream.video.bytesSent; } if (stats.otherStats && stats.otherStats.availableOutgoingBitrate !== undefined) { setAvailableBitrate(stats.otherStats.availableOutgoingBitrate); } } });