[Mesa-dev] [PATCH] v2 st/va Avoid VBR bitrate calculation overflow
Christian König
deathsimple at vodafone.de
Mon Sep 26 13:35:42 UTC 2016
Am 26.09.2016 um 11:44 schrieb Andy Furniss:
> VBR bitrate calc needs 64 bits at high rates.
> v2 use float.
>
> Signed-off-by: Andy Furniss <adf.lists at gmail.com>
Reviewed-by: Christian König <christian.koenig at amd.com>.
Since Leo is on vacation I will probably collect all remaining mesa
patches and commit them later today.
Christian.
> ---
> src/gallium/state_trackers/va/picture.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/gallium/state_trackers/va/picture.c b/src/gallium/state_trackers/va/picture.c
> index 7f3d96d..399667f 100644
> --- a/src/gallium/state_trackers/va/picture.c
> +++ b/src/gallium/state_trackers/va/picture.c
> @@ -322,7 +322,7 @@ handleVAEncMiscParameterTypeRateControl(vlVaContext *context, VAEncMiscParameter
> PIPE_H264_ENC_RATE_CONTROL_METHOD_CONSTANT)
> context->desc.h264enc.rate_ctrl.target_bitrate = rc->bits_per_second;
> else
> - context->desc.h264enc.rate_ctrl.target_bitrate = rc->bits_per_second * rc->target_percentage / 100;
> + context->desc.h264enc.rate_ctrl.target_bitrate = rc->bits_per_second * (rc->target_percentage / 100.0);
> context->desc.h264enc.rate_ctrl.peak_bitrate = rc->bits_per_second;
> if (context->desc.h264enc.rate_ctrl.target_bitrate < 2000000)
> context->desc.h264enc.rate_ctrl.vbv_buffer_size = MIN2((context->desc.h264enc.rate_ctrl.target_bitrate * 2.75), 2000000);
More information about the mesa-dev
mailing list