vah264enc: Add device-path property.
authorVíctor Manuel Jáquez Leal <vjaquez@igalia.com>
Wed, 13 Apr 2022 03:52:31 +0000 (05:52 +0200)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Sat, 16 Apr 2022 11:11:51 +0000 (11:11 +0000)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2169>

subprojects/gst-plugins-bad/sys/va/gstvah264enc.c

index 4f53eed..653c26c 100644 (file)
@@ -103,6 +103,7 @@ enum
   PROP_RATE_CONTROL,
   PROP_CPB_SIZE,
   PROP_AUD,
+  PROP_DEVICE_PATH,
   N_PROPERTIES
 };
 
@@ -4144,6 +4145,14 @@ gst_va_h264_enc_get_property (GObject * object, guint prop_id,
     case PROP_CPB_SIZE:
       g_value_set_uint (value, self->prop.cpb_size);
       break;
+    case PROP_DEVICE_PATH:{
+      if (!(self->display && GST_IS_VA_DISPLAY_DRM (self->display))) {
+        g_value_set_string (value, NULL);
+        return;
+      }
+      g_object_get_property (G_OBJECT (self->display), "path", value);
+      break;
+    }
     default:
       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
   }
@@ -4458,6 +4467,10 @@ gst_va_h264_enc_class_init (gpointer g_klass, gpointer class_data)
       gst_va_h264_enc_rate_control_get_type (), VA_RC_CBR,
       G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_CONSTRUCT);
 
+  properties[PROP_DEVICE_PATH] = g_param_spec_string ("device-path",
+      "Device Path", "DRM device path", NULL,
+      G_PARAM_READABLE | G_PARAM_STATIC_STRINGS);
+
   g_object_class_install_properties (object_class, N_PROPERTIES, properties);
 
   gst_type_mark_as_plugin_api (gst_va_h264_enc_rate_control_get_type (), 0);