+2005-10-24 Julien MOUTTE <julien@moutte.net>
+
+ * gst-libs/gst/video/video.h:
+ * gst/ffmpegcolorspace/gstffmpegcodecmap.c:
+ * sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get):
+ * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support): And
+ here comes my change on caps for framerate and geometry range.
+ We are now accepting 1 to MAXINT for width and height, and from
+ 0.0 to MAXDOUBLE for framerate. That allows duration less png frames
+ to be blended correctly in videomixer.
+
2005-10-24 Thomas Vander Stichele <thomas at apestaart dot org>
* configure.ac:
#define GST_VIDEO_GREEN_MASK_15_INT 0x03e0
#define GST_VIDEO_BLUE_MASK_15_INT 0x001f
-#define GST_VIDEO_SIZE_RANGE "(int) [ 16, 4096 ]"
-#define GST_VIDEO_FPS_RANGE "(double) [ 0, max ]"
+#define GST_VIDEO_SIZE_RANGE "(int) [ 1, max ]"
+#define GST_VIDEO_FPS_RANGE "(double) [ 0.0, max ]"
/* consider the next 2 protected */
#define __GST_VIDEO_CAPS_MAKE_32A(R, G, B, A) \
__VA_ARGS__, NULL) \
: \
gst_caps_new_simple (mimetype, \
- "width", GST_TYPE_INT_RANGE, 16, 4096, \
- "height", GST_TYPE_INT_RANGE, 16, 4096, \
- "framerate", GST_TYPE_DOUBLE_RANGE, 0., G_MAXDOUBLE, \
+ "width", GST_TYPE_INT_RANGE, 1, G_MAXINT, \
+ "height", GST_TYPE_INT_RANGE, 1, G_MAXINT, \
+ "framerate", GST_TYPE_DOUBLE_RANGE, 0.0, G_MAXDOUBLE, \
__VA_ARGS__, NULL)
/* same for audio - now with channels/sample rate
GST_PAD_SINK,
GST_PAD_ALWAYS,
GST_STATIC_CAPS ("video/x-raw-rgb, "
- "framerate = (double) [ 1.0, 100.0 ], "
+ "framerate = (double) [ 0.0, MAX ], "
"width = (int) [ 1, MAX ], " "height = (int) [ 1, MAX ]")
);
"blue_mask", G_TYPE_INT, xcontext->visual->blue_mask,
"width", GST_TYPE_INT_RANGE, 1, G_MAXINT,
"height", GST_TYPE_INT_RANGE, 1, G_MAXINT,
- "framerate", GST_TYPE_DOUBLE_RANGE, 1.0, 100.0, NULL);
+ "framerate", GST_TYPE_DOUBLE_RANGE, 0.0, G_MAXDOUBLE, NULL);
if (ximagesink->par) {
int nom, den;
GST_PAD_SINK,
GST_PAD_ALWAYS,
GST_STATIC_CAPS ("video/x-raw-rgb, "
- "framerate = (double) [ 1.0, 100.0 ], "
+ "framerate = (double) [ 0.0, MAX ], "
"width = (int) [ 1, MAX ], "
"height = (int) [ 1, MAX ]; "
"video/x-raw-yuv, "
- "framerate = (double) [ 1.0, 100.0 ], "
+ "framerate = (double) [ 0.0, MAX ], "
"width = (int) [ 1, MAX ], " "height = (int) [ 1, MAX ]")
);
"red_mask", G_TYPE_INT, formats[i].blue_mask,
"width", GST_TYPE_INT_RANGE, 1, G_MAXINT,
"height", GST_TYPE_INT_RANGE, 1, G_MAXINT,
- "framerate", GST_TYPE_DOUBLE_RANGE, 1.0, 100.0, NULL);
+ "framerate", GST_TYPE_DOUBLE_RANGE, 0.0, G_MAXDOUBLE, NULL);
/* For RGB caps we store them and the image
format so that we can get back the format
"format", GST_TYPE_FOURCC, formats[i].id,
"width", GST_TYPE_INT_RANGE, 1, G_MAXINT,
"height", GST_TYPE_INT_RANGE, 1, G_MAXINT,
- "framerate", GST_TYPE_DOUBLE_RANGE, 1.0, 100.0, NULL);
+ "framerate", GST_TYPE_DOUBLE_RANGE, 0.0, G_MAXDOUBLE, NULL);
break;
default:
g_assert_not_reached ();