ges: Disable video hw decoder 87/274087/7
authorHaesu Gwon <haesu.gwon@samsung.com>
Thu, 21 Apr 2022 06:24:01 +0000 (15:24 +0900)
committerHaesu Gwon <haesu.gwon@samsung.com>
Thu, 21 Apr 2022 09:40:09 +0000 (09:40 +0000)
[Version] 1.20.0-18
[Issue Type] Bug fix

Change-Id: Icec0a3da207b8644a9f54c3ecdb2f8c03f9d051e

packaging/gstreamer.spec
subprojects/gst-editing-services/ges/ges-uri-source.c
subprojects/gst-editing-services/meson.build

index e38ce939d7f6beb4db52c9fbdf85e99ee002030a..f2c938433462249982931613c29483dbef8143dc 100644 (file)
@@ -60,7 +60,7 @@
 
 Name:           %{_name}
 Version:        1.20.0
-Release:        17
+Release:        18
 Summary:        Streaming-Media Framework Runtime
 License:        LGPL-2.0+
 Group:          Multimedia/Framework
index e98ce10fee68c29064539c112eeb269a5065ce1f..b3ddff243409d7fa6ed31136dd25c0a04e644ef7 100644 (file)
@@ -71,6 +71,24 @@ autoplug_select_cb (GstElement * bin, GstPad * pad, GstCaps * caps,
           (ges_extractable_get_asset (GES_EXTRACTABLE (self->element)))));
   gboolean wanted = !g_strcmp0 (stream_id, wanted_id);
 
+#ifdef TIZEN_FEATURE_GES_DISABLE_HW_CODEC
+  if (factory) {
+    gchar *factory_name = NULL;
+    const gchar *klass = NULL;
+
+    factory_name = GST_OBJECT_NAME (factory);
+    klass =
+        gst_element_factory_get_metadata (factory, GST_ELEMENT_METADATA_KLASS);
+
+    if (g_strrstr (klass, "Decoder/Video/Hardware")) {
+      GST_INFO_OBJECT (self->element,
+          "video hw decoder element[%s] is not supported, skip it",
+          factory_name);
+      return GST_AUTOPLUG_SELECT_SKIP;
+    }
+  }
+#endif
+
   if (!ges_source_get_rendering_smartly (GES_SOURCE (self->element))) {
     if (!are_raw_caps (caps))
       goto done;
index 8e6244222846d4c59ac7dbf62a5d5e9894a3bc4b..b41da36a555f29307f873d6b6bb69231adebfa1b 100644 (file)
@@ -217,6 +217,10 @@ elif build_gir
   endif
 endif
 
+# TIZEN BUILD OPTION
+cdata.set('TIZEN_FEATURE_GES_DISABLE_HW_CODEC', true)
+# TIZEN BUILD OPTION end
+
 ges_c_args = ['-DHAVE_CONFIG_H', '-DG_LOG_DOMAIN="GES"']
 plugins_install_dir = '@0@/gstreamer-1.0'.format(get_option('libdir'))