Log in

View Full Version : How to determine the required bitrate for a videoconferencing?


Redhat_doom
11th May 2009, 03:26
Hi,

As you know in x264 three rate control methods are used:1- constant quantizer (cq) which uses a constant quantizer index for each frame, 2-constant rate factor (crf) which tries to adaptively adjust the quantizer index for each frame based on its content to achieve constant quality over the entire video, and 3-average bitrate which produces an encoded video with an average bitrate close to the given bitrate parameter.

But if we want to encode each frame on the fly in a real-time application such as videoconferencing, then which rate control method is the most suitable one? I think the third scheme (average bit rate) is the best for this purpose, but how can we estimate the best average bitrate for each frame? One way is to divide the available bandwidth (say 100 kbit/s) to the required fps (say 25) and set the bitrate parameter to a little smaller value than the resultant bitrate. But do you know any better way? However, I don't have any idea about the quality of the obtained video using this method because it is possible that many low-complexity frames get more bits than required and so it is possible that the quality of the video will be changed from one frame to another. But what do you think?
Thanks!

Comatose
11th May 2009, 14:37
Well, you should be aiming for optimal quality, and since video conferencing is already very bitrate restricted, that quality won't be too good.

So just figure out how much bandwidth everybody's line can sustain, and, while leaving some breathing space, use that. It would probably be best to use CBR in situations where you have a limited, but constant amount of bandwidth, since you cannot burst higher than that, and using less bitrate sometimes will not really be beneficial, especially with the lackluster quality of one-pass bitrate mode.

But some business networks can't guarantee the bandwidth. A good example for this is TV broadcasting. I never managed to figure out why they don't just use CBR.