summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2014-10-01 17:12:59 +0300
committerSebastian Dröge <sebastian@centricular.com>2014-10-01 17:12:59 +0300
commitaf7916ca4a906c09187e1e9f3aa7359ab8910ae3 (patch)
treebcf3da52118298cd7ea3ac5bd60383a8ee3f9d65
parent23a3377b1efcd634b6ca531ba29445905df0ceda (diff)
videomixer: GstVideoConverter currently can't rescale and will assert
Leads to ugly assertions instead of properly erroring out: CRITICAL **: gst_video_converter_new: assertion 'in_info->width == out_info->width' failed
-rw-r--r--gst/videomixer/videomixer2.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/gst/videomixer/videomixer2.c b/gst/videomixer/videomixer2.c
index a0c8744db..a96637812 100644
--- a/gst/videomixer/videomixer2.c
+++ b/gst/videomixer/videomixer2.c
@@ -447,7 +447,12 @@ gst_videomixer2_update_converters (GstVideoMixer2 * mix)
GST_DEBUG_OBJECT (pad, "This pad will be converted from %d to %d",
GST_VIDEO_INFO_FORMAT (&pad->info),
GST_VIDEO_INFO_FORMAT (&best_info));
- pad->convert = gst_video_converter_new (&pad->info, &best_info, NULL);
+ /* TODO: GstVideoConverter currently can't rescale! */
+ if (pad->info.width == best_info.width &&
+ pad->info.height == best_info.height &&
+ pad->info.par_n == best_info.par_n &&
+ pad->info.par_d == best_info.par_d)
+ pad->convert = gst_video_converter_new (&pad->info, &best_info, NULL);
pad->need_conversion_update = TRUE;
if (!pad->convert) {
g_free (colorimetry);