[telepathy-stream-engine/master] Add Xv device property

Olivier Crête olivier.crete at collabora.co.uk
Wed Dec 16 11:10:58 PST 2009


---
 src/videosink.c |   18 ++++++++++++++++--
 1 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/src/videosink.c b/src/videosink.c
index 1b3f3b4..356b7e3 100644
--- a/src/videosink.c
+++ b/src/videosink.c
@@ -37,6 +37,8 @@
 #include "videosink.h"
 #include "util.h"
 
+#define DEFAULT_XV_DEVICE "0"
+
 G_DEFINE_ABSTRACT_TYPE (TpStreamEngineVideoSink, tp_stream_engine_video_sink,
     G_TYPE_OBJECT);
 
@@ -70,7 +72,8 @@ enum
   PROP_0,
   PROP_SINK,
   PROP_WINDOW_ID,
-  PROP_IS_PREVIEW
+  PROP_IS_PREVIEW,
+  PROP_XV_DEVICE
 };
 
 
@@ -449,7 +452,6 @@ tp_stream_engine_video_sink_dispose (GObject *object)
 }
 
 
-
 static void
 tp_stream_engine_video_sink_set_property  (GObject *object,
     guint property_id,
@@ -463,6 +465,8 @@ tp_stream_engine_video_sink_set_property  (GObject *object,
     case PROP_IS_PREVIEW:
       self->priv->is_preview = g_value_get_boolean (value);
       break;
+    case PROP_XV_DEVICE:
+      break;
     default:
       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
       break;
@@ -485,6 +489,9 @@ tp_stream_engine_video_sink_get_property  (GObject *object,
     case PROP_WINDOW_ID:
       g_value_set_uint (value, self->priv->window_id);
       break;
+    case PROP_XV_DEVICE:
+      g_value_set_string (value, self->priv->xv_device);
+      break;
     default:
       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
       break;
@@ -524,6 +531,13 @@ tp_stream_engine_video_sink_class_init (TpStreamEngineVideoSinkClass *klass)
           FALSE,
           G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS));
 
+  g_object_class_install_property (object_class, PROP_XV_DEVICE,
+      g_param_spec_string ("xv-device",
+          "Xv Device",
+          "The Xv Device to use",
+          DEFAULT_XV_DEVICE,
+          G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
   signals[PLUG_DELETED] =
       g_signal_new ("plug-deleted",
           G_OBJECT_CLASS_TYPE (klass),
-- 
1.5.6.5




More information about the telepathy-commits mailing list