msdkvpp: don't update pads' info if nothing have changed
authorHaihao Xiang <haihao.xiang@intel.com>
Wed, 19 Dec 2018 02:44:50 +0000 (10:44 +0800)
committerHaihao Xiang <haihao.xiang@intel.com>
Tue, 8 Jan 2019 02:08:43 +0000 (10:08 +0800)
sys/msdk/gstmsdkvpp.c

index d6fe056..f529565 100644 (file)
@@ -1031,6 +1031,9 @@ gst_msdkvpp_set_caps (GstBaseTransform * trans, GstCaps * caps,
   if (!gst_video_info_is_equal (&out_info, &thiz->srcpad_info))
     srcpad_info_changed = TRUE;
 
+  if (!sinkpad_info_changed && !srcpad_info_changed && thiz->initialized)
+    return TRUE;
+
   thiz->sinkpad_info = in_info;
   thiz->srcpad_info = out_info;
 #ifndef _WIN32
@@ -1039,9 +1042,6 @@ gst_msdkvpp_set_caps (GstBaseTransform * trans, GstCaps * caps,
   thiz->use_video_memory = FALSE;
 #endif
 
-  if (!sinkpad_info_changed && !srcpad_info_changed && thiz->initialized)
-    return TRUE;
-
   /* check for deinterlace requirement */
   deinterlace = gst_msdkvpp_is_deinterlace_enabled (thiz, &in_info);
   if (deinterlace)