UNPKG

infobip-rtc

Version:

Infobip RTC JavaScript SDK - Infobip WebRTC API Implementation

32 lines 1.19 kB
import VideoType from "../../../util/VideoType"; export const BitrateConfig = { [VideoType.CAMERA]: 2000000, [VideoType.SCREENSHARE]: 2500000, }; export function configureForSending(peerConnection, streamKind, bitrateBps, logger) { if (!peerConnection) { return; } const senders = peerConnection.getSenders(); senders.forEach((sender) => { if (sender.track && sender.track.kind !== streamKind) { return; } const parameters = sender.getParameters(); parameters.encodings ??= [{}]; if (bitrateBps <= 0) { return; } logger.debug(`Configuring ${sender?.track?.id} bitrate for video streaming to ${bitrateBps / 1000} [Kbps]`); if (parameters.encodings[0]) { parameters.encodings[0].priority = "high"; parameters.encodings[0].networkPriority = "high"; } parameters.encodings.forEach(encoding => { encoding.maxBitrate = bitrateBps; }); sender.setParameters(parameters) .catch(err => logger.error(`Changing sender parameters failed: ${err?.message}`)); }); } //# sourceMappingURL=BitrateUtil.js.map