|
|
8c2c77 |
diff --cc libcheese/cheese-camera-device.c
|
|
|
8c2c77 |
index e994c5f5,8f1e13af..00000000
|
|
|
8c2c77 |
--- a/libcheese/cheese-camera-device.c
|
|
|
8c2c77 |
+++ b/libcheese/cheese-camera-device.c
|
|
|
8c2c77 |
@@@ -181,18 -219,8 +181,19 @@@ cheese_camera_device_filter_caps (Chees
|
|
|
8c2c77 |
{
|
|
|
8c2c77 |
GstCaps *filter;
|
|
|
8c2c77 |
GstCaps *allowed;
|
|
|
8c2c77 |
+ gsize i;
|
|
|
8c2c77 |
+
|
|
|
8c2c77 |
+ filter = gst_caps_new_empty ();
|
|
|
8c2c77 |
|
|
|
8c2c77 |
- filter = format_caps (formats);
|
|
|
8c2c77 |
+ for (i = 0; formats[i] != NULL; i++)
|
|
|
8c2c77 |
+ {
|
|
|
8c2c77 |
+ gst_caps_append (filter,
|
|
|
8c2c77 |
+ gst_caps_new_simple (formats[i],
|
|
|
8c2c77 |
+ "framerate", GST_TYPE_FRACTION_RANGE,
|
|
|
8c2c77 |
+ 0, 1, CHEESE_MAXIMUM_RATE, 1,
|
|
|
8c2c77 |
++ "format", G_TYPE_STRING, "YUY2",
|
|
|
8c2c77 |
+ NULL));
|
|
|
8c2c77 |
+ }
|
|
|
8c2c77 |
|
|
|
8c2c77 |
allowed = gst_caps_intersect (caps, filter);
|
|
|
8c2c77 |
|
|
|
8c2c77 |
diff --git a/libcheese/cheese-camera-device-monitor.c b/libcheese/cheese-camera-device-monitor.c
|
|
|
8c2c77 |
index 5b4b43b5..a15733bd 100644
|
|
|
8c2c77 |
--- a/libcheese/cheese-camera-device-monitor.c
|
|
|
8c2c77 |
+++ b/libcheese/cheese-camera-device-monitor.c
|
|
|
8c2c77 |
@@ -294,7 +294,7 @@ initable_init (GInitable *initable,
|
|
|
8c2c77 |
gst_bus_add_watch (bus, cheese_camera_device_monitor_bus_func, monitor);
|
|
|
8c2c77 |
gst_object_unref (bus);
|
|
|
8c2c77 |
|
|
|
8c2c77 |
- caps = gst_caps_new_empty_simple ("video/x-raw");
|
|
|
8c2c77 |
+ caps = gst_caps_new_simple ("video/x-raw", "format", G_TYPE_STRING, "YUY2", NULL);
|
|
|
8c2c77 |
gst_device_monitor_add_filter (priv->monitor, "Video/Source", caps);
|
|
|
8c2c77 |
gst_caps_unref (caps);
|
|
|
8c2c77 |
|