diff --git a/src/common/jingle_rtp.py b/src/common/jingle_rtp.py
index 4e552dbb1bd6444cfb2c10f5b5e183ffc85781c9..628349665a8e69d9d5dd1490724296f24df06aca 100644
--- a/src/common/jingle_rtp.py
+++ b/src/common/jingle_rtp.py
@@ -364,9 +364,13 @@ class JingleVideo(JingleRTPContent):
         JingleRTPContent.setup_stream(self, self._on_src_pad_added)
 
         # the local parts
+        if gajim.config.get('video_input_device').startswith('ximagesrc'):
+            colorspace = 'rgb'
+        else:
+            colorspace = 'yuv'
         if gajim.config.get('video_framerate'):
-            framerate = 'videorate ! video/x-raw-yuv,framerate=%s ! ' % \
-                gajim.config.get('video_framerate')
+            framerate = 'videorate ! video/x-raw-%s,framerate=%s ! ' % \
+                (colorspace, gajim.config.get('video_framerate'))
         else:
             framerate = ''
         try:
@@ -374,7 +378,8 @@ class JingleVideo(JingleRTPContent):
         except:
             w = h = None
         if w and h:
-            video_size = 'video/x-raw-yuv,width=%s,height=%s ! ' % (w, h)
+            video_size = 'video/x-raw-%s,width=%s,height=%s ! ' % (colorspace,
+                w, h)
         else:
             video_size = ''
         self.src_bin = self.make_bin_from_config('video_input_device',
diff --git a/src/common/multimedia_helpers.py b/src/common/multimedia_helpers.py
index 6aabbfb3da7991355ba67d42e71fec1a8fdd9a17..157f0abe3a677c2fb0b1c4ffd3d4a87181746d24 100644
--- a/src/common/multimedia_helpers.py
+++ b/src/common/multimedia_helpers.py
@@ -95,7 +95,7 @@ class VideoInputManager(DeviceManager):
         self.detect_element('v4l2src', _('V4L2: %s'))
         # Funny things, just to test...
         # self.devices['GOOM'] = 'audiotestsrc ! goom'
-        # self.devices['screen'] = 'ximagesrc'
+        self.detect_element('ximagesrc', _('Screen'))
 
 
 class VideoOutputManager(DeviceManager):