Videoroom bitrate

130 views
Skip to first unread message

barak pahima

unread,
Feb 21, 2022, 4:31:21 AM2/21/22
to meetecho-janus
Hi guys,

I'm working with videoroom plugin and have HTML file which streams a MP4 file with bitrate of 2Mbps encoded with VP8 to janus video room and another HTML file which subscribe the videoroom. When I configure the room I send the request with bitrate attribute equals to 500k.

When I check the bitrate which the subscriber receive  I see it receives 500kbps. 

I know that the videoroom acts as SFU and does not perform transcoding.

My question is, if the file which I stream encoded with 2Mbps, who transcode it to 500Kbps? My guess is that chrome perform the encoding when streaming the file over the peer connection but I want to verify it.

Thank you,
Barak.

barak pahima

unread,
Feb 21, 2022, 4:57:26 AM2/21/22
to meetecho-janus
And if the answer is yes, and the chrome perform transcoding, there is an option to disable this and send the file orginal bitrate?

ב-יום שני, 21 בפברואר 2022 בשעה 11:31:21 UTC+2, ‪barak pahima‬‏ כתב/ה:

Lorenzo Miniero

unread,
Feb 21, 2022, 12:22:04 PM2/21/22
to meetecho-janus
Stream from the server side to the Streaming plugin: if you use something like GStreamer or FFmpeg, you'll have full control on the encoding. If the file already uses codecs WebRTC understand, you can even skip encoding and just make them packetize via RTP.

L.

barak pahima

unread,
Feb 23, 2022, 3:35:06 AM2/23/22
to meetecho-janus
The point is that I dont understand who change the bitrate when I use the bitrate attribute in the configure command.
I see in Janus logs "Sending REMB" with the bitrate I set but still It's not clear who change the bitrate to 500Kbps if the file's bitrate is 2Mbps.

I use video HTML element to load the file and then getUserMedia to add it in the RTCPeerConnection.

Chrome transcode the bitrate to 500Kbps? I know that it's not Janus because it act as SFU..

 Another quesiton: is Janus videoroom plugin or Chrome has limit of 2Mbps? I ask it because when I set the REMB to 5Mbps Janus receive 2 Mbps.

Thank you alot,
Barak
ב-יום שני, 21 בפברואר 2022 בשעה 19:22:04 UTC+2, lmin...@gmail.com כתב/ה:

Sarsaparilla Sunset

unread,
Feb 23, 2022, 8:59:33 PM2/23/22
to meetecho-janus
"REMB stands for Receiver Estimated Maximum Bitrate. It is a RTCP message used to provide bandwidth estimation in order to avoid creating congestion in the network"

When Janus sends your browser an REMB message, it is telling your browser what is the maximum bandwidth it can receive. It is the browsers job to adjust the bitrate of the video stream to fit that bandwidth.

The REMB makes more sense in the traditional p2p context. Each peer uses it to tell the other peer how much bandwidth it is capable of handling. In the SFU context, the REMB purpose is a bit confusing.

When you set it to 5mbps, that's a maximum. That's why Chrome still outputs only 2mbps.
Reply all
Reply to author
Forward
0 new messages