decoder: delegate surface size check to VA context reset.
authorGwenole Beauchesne <gwenole.beauchesne@intel.com>
Wed, 3 Apr 2013 11:14:59 +0000 (13:14 +0200)
committerGwenole Beauchesne <gwenole.beauchesne@intel.com>
Wed, 3 Apr 2013 11:34:59 +0000 (13:34 +0200)
Now that the surface pool is reference counted in the surface proxy wrapper,
we can safely ignore surface size checks in gst_vaapi_decoder_ensure_context().
Besides, this check is already performed in gst_vaapi_context_reset_full().

gst-libs/gst/vaapi/gstvaapidecoder.c

index d1cbd3a3a5b7e07f532681bb208818af0cc88a25..1801147038a07aac06b554335a0c8c10b4e20257 100644 (file)
@@ -866,19 +866,6 @@ gst_vaapi_decoder_ensure_context(
 )
 {
     GstVaapiDecoderPrivate * const priv = decoder->priv;
-    GstVideoCodecState * const codec_state = priv->codec_state;
-    gboolean size_changed;
-
-    size_changed = codec_state->info.width != cip->width ||
-        codec_state->info.height != cip->height;
-
-    /* Create a new context if the requested size for surfaces changed
-     * because we need to keep the context underlying surface pool
-     * until all surfaces are released */
-    if (size_changed) {
-        gst_vaapi_decoder_set_picture_size(decoder, cip->width, cip->height);
-        g_clear_object(&priv->context);
-    }
 
     if (priv->context) {
         if (!gst_vaapi_context_reset_full(priv->context, cip))