2

I want to know why I normally transmit a 320240 resolution video and default my uplink traffic is at 1.5MBï¼› when I modify the SDP bandwidth limit, for example at 500kbps/s my video width and height are still 320240 and the frame rate is not reduced; So what exactly is this reduced upside traffic?

= =

O. Jones
  • 103,626
  • 17
  • 118
  • 172
GiantKs
  • 23
  • 5
  • It's hard to answer without knowing what sort of app you use for your client. Is it a browser app? A native app? At any rate the camera resolution and frame rate are set at the camera. 500kbps should be more than enough bandwidth for a talking-heads 320x240x15fps. video / audio signal. – O. Jones Mar 23 '21 at 13:53
  • Excuse me, please allow me to describe my question again: – GiantKs Mar 29 '21 at 07:13
  • In the Web end, webRtc is used to connect two peers. In the normal process, CreateOffer, CreateAnswer, SetSDP... Later, for a 320*240 video I observed in WebTC-internals, the outbound bytesSent_in_bits/s should reach 1.5M by default, but after I use bandwidth constraint and other means, the video is still 320*240 and the frame rate is not changed after the bandwidth is limited to 500KB. I want to know what is the cost of this reduced bandwidth? – GiantKs Mar 29 '21 at 07:20

1 Answers1

1

WebRTC uses so-called "lossy perceptual video compression." That is, the video is capable of being compressed into bit streams of various bandwidths... in your case 1.5mbps and 0.5mbps. It's like JPEG's quality parameter: in JPEG, adjusting that parameter changes the size of the image file. In video compression, instead of a quality parameter you request a bitrate.

When a lower-bitrate video stream is decompressed, it's a less faithful representation of the original. If you know what to look for you can see various compression artifacts in the decompressed imagery" blockiness, "mosquitoes" around objects, and so forth.

Streaming video and DVD video programs (cinema) use high bandwidth to minimize these effects below the threshold of perception at 1080p or 4K resolution.

In your SIF (320x240) resolution case, your decoded 0.5mbps video has more artifacts in it than your 1.5mbps video. But, because the resolution is relatively low, it will take some looking to find those artifacts. If they don't annoy you or your users, you can conclude that 0.5mbps is fine for your application. Long experience suggests that you should succeed just fine with that bitrate and resolution. You can even try 250kbps.

Reducing the frame rate doesn't proportionally save bandwidth; most compressed video frames represent differences from the previous frame.

Lower bitrates are better for mobile devices; they save power and your users' data plans.

If you want to see exaggerated compression artifacts and what they look like, set the bitrate down to 125kbps or lower.

O. Jones
  • 103,626
  • 17
  • 118
  • 172