From: Sreerenj Balachandran Date: Mon, 18 Feb 2013 14:28:27 +0000 (+0200) Subject: mpeg2: add support for video cropping. X-Git-Tag: 0.5.5~36 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0b1faa62d0ce64bddbfd9abb5a9ce666943027d3;p=platform%2Fupstream%2Fgstreamer-vaapi.git mpeg2: add support for video cropping. If the stream has a sequence_display_extenion, then attach the display_horizontal/display_vertical dimension as the cropping rectangle width/height to the GstVaapiPicture. Signed-off-by: Gwenole Beauchesne --- diff --git a/gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c b/gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c index bb67bd5..fdc6596 100644 --- a/gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c +++ b/gst-libs/gst/vaapi/gstvaapidecoder_mpeg2.c @@ -1471,6 +1471,17 @@ gst_vaapi_decoder_mpeg2_start_frame(GstVaapiDecoder *base_decoder, gst_vaapi_picture_replace(&priv->current_picture, picture); gst_vaapi_picture_unref(picture); + /* Update cropping rectangle */ + if (seq_display_ext) { + GstVaapiRectangle crop_rect; + crop_rect.x = 0; + crop_rect.y = 0; + crop_rect.width = seq_display_ext->display_horizontal_size; + crop_rect.height = seq_display_ext->display_vertical_size; + if (crop_rect.width <= priv->width && crop_rect.height <= priv->height) + gst_vaapi_picture_set_crop_rect(picture, &crop_rect); + } + status = ensure_quant_matrix(decoder, picture); if (status != GST_VAAPI_DECODER_STATUS_SUCCESS) { GST_ERROR("failed to reset quantizer matrix");