On 09/07/2016 03:02 AM, Christian König wrote:
Am 06.09.2016 um 22:39 schrieb boyuan.zh...@amd.com:
From: Boyuan Zhang <boyuan.zh...@amd.com>

This patch enables variable bit-rate for vaapi encoding. According to va.h, target bit-rate equals to maximum bit-rate multiplies by target_percentage.

Signed-off-by: Boyuan Zhang <boyuan.zh...@amd.com>

That was astonishing simple to fix :)

Patch is Reviewed-by: Christian König <christian.koe...@amd.com>.

Leo do you want to push it or should I take care of this?

I will take care of it.

Regards,
Leo


Regards,
Christian.

---
  src/gallium/state_trackers/va/config.c  | 2 +-
  src/gallium/state_trackers/va/picture.c | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/gallium/state_trackers/va/config.c b/src/gallium/state_trackers/va/config.c
index 84bf913..4052316 100644
--- a/src/gallium/state_trackers/va/config.c
+++ b/src/gallium/state_trackers/va/config.c
@@ -120,7 +120,7 @@ vlVaGetConfigAttributes(VADriverContextP ctx, VAProfile profile, VAEntrypoint en
           value = VA_RT_FORMAT_YUV420;
           break;
        case VAConfigAttribRateControl:
-         value = VA_RC_CQP | VA_RC_CBR;
+         value = VA_RC_CQP | VA_RC_CBR | VA_RC_VBR;
           break;
        default:
           value = VA_ATTRIB_NOT_SUPPORTED;
diff --git a/src/gallium/state_trackers/va/picture.c b/src/gallium/state_trackers/va/picture.c
index a283e83..7f3d96d 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; + context->desc.h264enc.rate_ctrl.target_bitrate = rc->bits_per_second * rc->target_percentage / 100;
     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);


_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to