koliva
18th December 2012, 15:18
Hi all,
I am using x264 encoder to encode my captured frames at about 30fps with:
x264_param_default_preset(¶m, "ultrafast", "zerolatency");
The encoded bitstream is sent over wireless network and will be decoded at the other side, then shown on the screen. My code runs perfect over network but sucks a bit when it comes to wireless. I have a test video (res: 1600x900) and when I am testing my setup with this video, naturally the bitrate jumps sometimes to 13 Mbps which is beyond the limit of my wireless network bandwidth which is abput 7 Mbps in my case. I have tried to use vbv parameters to limit it,
param.rc.i_vbv_max_bitrate = 4500;
param.rc.i_vbv_buffer_size = 4500;
and also I set
param.i_keyint_min = 9999;
param.i_keyint_max = 9999;
but the problem now is that quality is dropped reasonably. When I encode the stream with
x264_param_default_preset(¶m, "superfast", "zerolatency");
a small delay occurs which is not much of a problem for now. The peak point drops from 13 Mbps to 3 Mbps, which is perfect. However the bitrate also drops to about 13 fps from 30 fps which I don't want. Could you please tell me what settings should I set for this? Apparently I have a little bit room in bit-rate if I choose superfast. How can I say that increase the frame rate and compromise from the bitrate?
I am using x264 encoder to encode my captured frames at about 30fps with:
x264_param_default_preset(¶m, "ultrafast", "zerolatency");
The encoded bitstream is sent over wireless network and will be decoded at the other side, then shown on the screen. My code runs perfect over network but sucks a bit when it comes to wireless. I have a test video (res: 1600x900) and when I am testing my setup with this video, naturally the bitrate jumps sometimes to 13 Mbps which is beyond the limit of my wireless network bandwidth which is abput 7 Mbps in my case. I have tried to use vbv parameters to limit it,
param.rc.i_vbv_max_bitrate = 4500;
param.rc.i_vbv_buffer_size = 4500;
and also I set
param.i_keyint_min = 9999;
param.i_keyint_max = 9999;
but the problem now is that quality is dropped reasonably. When I encode the stream with
x264_param_default_preset(¶m, "superfast", "zerolatency");
a small delay occurs which is not much of a problem for now. The peak point drops from 13 Mbps to 3 Mbps, which is perfect. However the bitrate also drops to about 13 fps from 30 fps which I don't want. Could you please tell me what settings should I set for this? Apparently I have a little bit room in bit-rate if I choose superfast. How can I say that increase the frame rate and compromise from the bitrate?