libav: viddec: provide details if meta has the wrong resolution
authorGuillaume Desmottes <guillaume.desmottes@onestream.live>
Fri, 15 Nov 2024 10:34:07 +0000 (11:34 +0100)
committerBackport Bot <gitlab-backport-bot@gstreamer-foundation.org>
Tue, 19 Nov 2024 20:04:13 +0000 (20:04 +0000)
Will produce a more useful assert error message.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7925>

subprojects/gst-libav/ext/libav/gstavviddec.c

index fe51832d2350a18fe875596184c23bd7547a00c7..133dd200a82cbf0e84c16819e883bc1597c130a9 100644 (file)
@@ -1972,8 +1972,12 @@ gst_ffmpegviddec_video_frame (GstFFMpegVidDec * ffmpegdec,
         gst_buffer_get_video_meta (output_frame->output_buffer);
     if (vmeta) {
       GstVideoInfo *info = &ffmpegdec->output_state->info;
-      g_assert ((gint) vmeta->width == GST_VIDEO_INFO_WIDTH (info));
-      g_assert ((gint) vmeta->height == GST_VIDEO_INFO_HEIGHT (info));
+      if (vmeta->width != GST_VIDEO_INFO_WIDTH (info) ||
+          vmeta->height != GST_VIDEO_INFO_HEIGHT (info)) {
+        g_error ("video meta uses %dx%d instead of %dx%d",
+            vmeta->width, vmeta->height, GST_VIDEO_INFO_WIDTH (info),
+            GST_VIDEO_INFO_HEIGHT (info));
+      }
     }
   }
 #endif