2003-10-08 07:49:11 +00:00
|
|
|
#include <gst/gst.h>
|
|
|
|
|
2004-03-13 15:27:01 +00:00
|
|
|
GstStaticCaps rawcaps1 = GST_STATIC_CAPS ("video/x-raw-yuv, "
|
2003-12-22 01:39:35 +00:00
|
|
|
"fourcc:fourcc=\"YUYV\", "
|
|
|
|
"height:int=640, "
|
|
|
|
"width:int=480, "
|
|
|
|
"framerate:float=30.0; "
|
2004-03-13 15:27:01 +00:00
|
|
|
"video/x-raw-yuv, "
|
2003-12-22 01:39:35 +00:00
|
|
|
"fourcc:fourcc=\"I420\", "
|
2004-03-13 15:27:01 +00:00
|
|
|
"height:int=640, " "width:int=480, " "framerate:float=30.0");
|
2003-10-08 07:49:11 +00:00
|
|
|
|
2004-03-13 15:27:01 +00:00
|
|
|
GstStaticCaps rawcaps2 = GST_STATIC_CAPS ("video/x-raw-yuv");
|
2003-12-22 01:39:35 +00:00
|
|
|
|
2004-03-13 15:27:01 +00:00
|
|
|
GstStaticCaps rawcaps3 =
|
|
|
|
GST_STATIC_CAPS ("video/x-raw-yuv, height=(int) [ 0, MAX ]");
|
2003-12-22 01:39:35 +00:00
|
|
|
|
2004-03-13 15:27:01 +00:00
|
|
|
GstStaticCaps rawcaps4 =
|
|
|
|
GST_STATIC_CAPS
|
|
|
|
("video/x-raw-yuv, format=(fourcc)YUY2; video/x-raw-yuv, format=(fourcc)UYVY");
|
2003-12-22 01:39:35 +00:00
|
|
|
|
2004-03-13 15:27:01 +00:00
|
|
|
GstStaticCaps rawcaps5 =
|
|
|
|
GST_STATIC_CAPS
|
|
|
|
("video/x-raw-yuv, format=(fourcc)YUY2, framerate=(double)[0,1.79769e+308], width=(int)[0,2147483647], height=(int)[0,2147483647]; video/x-raw-yuv, format=(fourcc)UYVY, framerate=(double)[0,1.79769e+308], width=(int)[0,2147483647], height=(int)[0,2147483647]");
|
2003-12-22 01:39:35 +00:00
|
|
|
|
2004-03-13 15:27:01 +00:00
|
|
|
GstStaticCaps rawcaps6 =
|
2004-03-15 19:27:17 +00:00
|
|
|
GST_STATIC_CAPS
|
2004-03-13 15:27:01 +00:00
|
|
|
("video/x-raw-yuv, format=(fourcc)YUY2, width=(int)320, height=(int)240");
|
2003-12-22 01:39:35 +00:00
|
|
|
|
2004-03-13 15:27:01 +00:00
|
|
|
GstStaticCaps rawcaps7 =
|
2004-03-15 19:27:17 +00:00
|
|
|
GST_STATIC_CAPS
|
2004-03-13 15:27:01 +00:00
|
|
|
("video/x-raw-yuv, format=(fourcc)YUY2, width=(int)[0,2147483647], height=(int)[0,2147483647], framerate=(double)[0,1.79769e+308]");
|
2003-12-22 01:39:35 +00:00
|
|
|
|
2004-03-13 15:27:01 +00:00
|
|
|
GstStaticCaps rawcaps8 =
|
2004-03-15 19:27:17 +00:00
|
|
|
GST_STATIC_CAPS
|
2004-03-13 15:27:01 +00:00
|
|
|
("video/x-raw-yuv, format=(fourcc)YUY2, width=(int)320, height=(int)240");
|
2003-12-22 01:39:35 +00:00
|
|
|
|
|
|
|
|
2004-03-13 15:27:01 +00:00
|
|
|
int
|
|
|
|
main (int argc, char *argv[])
|
2003-10-08 07:49:11 +00:00
|
|
|
{
|
|
|
|
GstCaps *caps1;
|
|
|
|
GstCaps *caps2;
|
2003-12-22 01:39:35 +00:00
|
|
|
GstCaps *caps3;
|
|
|
|
GstCaps *caps4;
|
2003-10-08 07:49:11 +00:00
|
|
|
GstCaps *caps;
|
|
|
|
|
|
|
|
gst_init (&argc, &argv);
|
|
|
|
|
2004-03-13 15:27:01 +00:00
|
|
|
caps1 = gst_caps_copy (gst_static_caps_get (&rawcaps1));
|
|
|
|
caps2 =
|
|
|
|
gst_caps_new_full (gst_structure_copy (gst_caps_get_structure
|
2004-03-15 19:27:17 +00:00
|
|
|
(gst_static_caps_get (&rawcaps1), 0)), NULL);
|
2003-10-08 07:49:11 +00:00
|
|
|
|
2003-12-22 01:39:35 +00:00
|
|
|
#if 0
|
2004-03-13 15:27:01 +00:00
|
|
|
gst_caps_set (caps1, "height", GST_PROPS_INT (640));
|
|
|
|
gst_caps_set (caps1, "width", GST_PROPS_INT (480));
|
|
|
|
gst_caps_set (caps1, "framerate", GST_PROPS_FLOAT (30.0));
|
2003-12-22 01:39:35 +00:00
|
|
|
#endif
|
2003-10-08 07:49:11 +00:00
|
|
|
|
2004-03-13 15:27:01 +00:00
|
|
|
caps = gst_caps_intersect (caps1, caps2);
|
|
|
|
g_print ("caps %s\n", gst_caps_to_string (caps));
|
|
|
|
if (gst_caps_is_empty (caps))
|
|
|
|
return 1;
|
|
|
|
gst_caps_free (caps1);
|
|
|
|
gst_caps_free (caps2);
|
|
|
|
|
|
|
|
caps1 = gst_caps_copy (gst_static_caps_get (&rawcaps2));
|
|
|
|
caps2 = gst_caps_copy (gst_static_caps_get (&rawcaps3));
|
|
|
|
caps = gst_caps_intersect (caps1, caps2);
|
|
|
|
g_print ("caps %s\n", gst_caps_to_string (caps));
|
|
|
|
if (gst_caps_is_empty (caps))
|
|
|
|
return 1;
|
|
|
|
gst_caps_free (caps1);
|
|
|
|
gst_caps_free (caps2);
|
|
|
|
|
|
|
|
caps1 = gst_caps_copy (gst_static_caps_get (&rawcaps4));
|
|
|
|
caps2 = gst_caps_copy (gst_static_caps_get (&rawcaps5));
|
|
|
|
caps3 = gst_caps_copy (gst_static_caps_get (&rawcaps6));
|
|
|
|
caps4 = gst_caps_intersect (caps1, caps2);
|
|
|
|
caps = gst_caps_intersect (caps3, caps4);
|
|
|
|
g_print ("caps4 %s\n", gst_caps_to_string (caps4));
|
|
|
|
g_print ("caps %s\n", gst_caps_to_string (caps));
|
|
|
|
gst_caps_free (caps1);
|
|
|
|
gst_caps_free (caps2);
|
|
|
|
gst_caps_free (caps3);
|
|
|
|
gst_caps_free (caps4);
|
|
|
|
|
|
|
|
caps1 = gst_caps_copy (gst_static_caps_get (&rawcaps7));
|
|
|
|
caps2 = gst_caps_copy (gst_static_caps_get (&rawcaps8));
|
|
|
|
caps = gst_caps_intersect (caps1, caps2);
|
|
|
|
g_print ("caps %s\n", gst_caps_to_string (caps));
|
|
|
|
if (gst_caps_is_empty (caps))
|
|
|
|
return 1;
|
|
|
|
gst_caps_free (caps1);
|
|
|
|
gst_caps_free (caps2);
|
2003-10-08 07:49:11 +00:00
|
|
|
|
|
|
|
return 0;
|
|
|
|
}
|