From: suresh guttula <[email protected]>

This patch will add support for frame_cropping when the input size is not
matched with aligned size. Currently vaapi driver ignores frame cropping
values provided by client. This change will update SPS nalu with proper
cropping values.

Signed-off-by: Satyajit Sahu <[email protected]>
---
 src/gallium/state_trackers/va/picture_h264_enc.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/src/gallium/state_trackers/va/picture_h264_enc.c 
b/src/gallium/state_trackers/va/picture_h264_enc.c
index abfd39633de..f46b3425566 100644
--- a/src/gallium/state_trackers/va/picture_h264_enc.c
+++ b/src/gallium/state_trackers/va/picture_h264_enc.c
@@ -127,6 +127,14 @@ vlVaHandleVAEncSequenceParameterBufferTypeH264(vlVaDriver 
*drv, vlVaContext *con
    context->desc.h264enc.rate_ctrl.frame_rate_num = h264->time_scale / 2;
    context->desc.h264enc.rate_ctrl.frame_rate_den = h264->num_units_in_tick;
    context->desc.h264enc.pic_order_cnt_type = 
h264->seq_fields.bits.pic_order_cnt_type;
+
+   if (h264->frame_cropping_flag) {
+      context->desc.h264enc.pic_ctrl.enc_frame_cropping_flag = 
h264->frame_cropping_flag;
+      context->desc.h264enc.pic_ctrl.enc_frame_crop_left_offset = 
h264->frame_crop_left_offset;
+      context->desc.h264enc.pic_ctrl.enc_frame_crop_right_offset = 
h264->frame_crop_right_offset;
+      context->desc.h264enc.pic_ctrl.enc_frame_crop_top_offset = 
h264->frame_crop_top_offset;
+      context->desc.h264enc.pic_ctrl.enc_frame_crop_bottom_offset = 
h264->frame_crop_bottom_offset;
+   }
    return VA_STATUS_SUCCESS;
 }
 
-- 
2.19.1

_______________________________________________
mesa-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to