diff options
author | Sebastian Dröge <sebastian@centricular.com> | 2014-10-01 17:12:59 +0300 |
---|---|---|
committer | Sebastian Dröge <sebastian@centricular.com> | 2014-10-01 17:12:59 +0300 |
commit | af7916ca4a906c09187e1e9f3aa7359ab8910ae3 (patch) | |
tree | bcf3da52118298cd7ea3ac5bd60383a8ee3f9d65 | |
parent | 23a3377b1efcd634b6ca531ba29445905df0ceda (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.c | 7 |
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); |