ext/jpeg/gstjpegenc.c: fix DURATION on outgoing buffers
authorThomas Vander Stichele <thomas@apestaart.org>
Wed, 5 May 2004 11:29:49 +0000 (11:29 +0000)
committerThomas Vander Stichele <thomas@apestaart.org>
Wed, 5 May 2004 11:29:49 +0000 (11:29 +0000)
Original commit message from CVS:
* ext/jpeg/gstjpegenc.c: (gst_jpegenc_get_type),
(gst_jpegenc_chain):
fix DURATION on outgoing buffers
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_handle_sink_event):
debug using time formats
* sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support),
(gst_xvimagesink_sink_link):
windows with width/height 0 generate X errors, so don't allow them

ChangeLog
sys/ximage/ximagesink.c
sys/xvimage/xvimagesink.c

index e523202..5c26048 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2004-05-05  Thomas Vander Stichele  <thomas at apestaart dot org>
+
+       * ext/jpeg/gstjpegenc.c: (gst_jpegenc_get_type),
+       (gst_jpegenc_chain):
+        fix DURATION on outgoing buffers
+       * gst/asfdemux/gstasfdemux.c: (gst_asf_demux_handle_sink_event):
+        debug using time formats
+       * sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get):
+       * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support),
+       (gst_xvimagesink_sink_link):
+        windows with width/height 0 generate X errors, so don't allow them
+
 2004-05-05  Wim Taymans  <wim@fluendo.com>
 
        * ext/mpeg2dec/gstmpeg2dec.c: (src_templ),
index 7dabbb4..8aa6a98 100644 (file)
@@ -50,7 +50,7 @@ GST_STATIC_PAD_TEMPLATE ("sink",
     GST_PAD_ALWAYS,
     GST_STATIC_CAPS ("video/x-raw-rgb, "
         "framerate = (double) [ 1.0, 100.0 ], "
-        "width = (int) [ 0, MAX ], " "height = (int) [ 0, MAX ]")
+        "width = (int) [ 1, MAX ], " "height = (int) [ 1, MAX ]")
     );
 
 enum
@@ -655,8 +655,8 @@ gst_ximagesink_xcontext_get (GstXImageSink * ximagesink)
       "red_mask", G_TYPE_INT, xcontext->visual->red_mask,
       "green_mask", G_TYPE_INT, xcontext->visual->green_mask,
       "blue_mask", G_TYPE_INT, xcontext->visual->blue_mask,
-      "width", GST_TYPE_INT_RANGE, 0, G_MAXINT,
-      "height", GST_TYPE_INT_RANGE, 0, G_MAXINT,
+      "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);
 
   g_mutex_unlock (ximagesink->x_lock);
index 67a1cfb..d0d6d79 100644 (file)
@@ -51,11 +51,11 @@ static GstStaticPadTemplate gst_xvimagesink_sink_template_factory =
     GST_PAD_ALWAYS,
     GST_STATIC_CAPS ("video/x-raw-rgb, "
         "framerate = (double) [ 1.0, 100.0 ], "
-        "width = (int) [ 0, MAX ], "
-        "height = (int) [ 0, MAX ]; "
+        "width = (int) [ 1, MAX ], "
+        "height = (int) [ 1, MAX ]; "
         "video/x-raw-yuv, "
         "framerate = (double) [ 1.0, 100.0 ], "
-        "width = (int) [ 0, MAX ], " "height = (int) [ 0, MAX ]")
+        "width = (int) [ 1, MAX ], " "height = (int) [ 1, MAX ]")
     );
 
 enum
@@ -653,8 +653,8 @@ gst_xvimagesink_get_xv_support (GstXvImageSink * xvimagesink,
             "blue_mask", G_TYPE_INT, formats[i].red_mask,
             "green_mask", G_TYPE_INT, formats[i].green_mask,
             "red_mask", G_TYPE_INT, formats[i].blue_mask,
-            "width", GST_TYPE_INT_RANGE, 0, G_MAXINT,
-            "height", GST_TYPE_INT_RANGE, 0, G_MAXINT,
+            "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);
 
         /* For RGB caps we store them and the image 
@@ -677,8 +677,8 @@ gst_xvimagesink_get_xv_support (GstXvImageSink * xvimagesink,
       case XvYUV:
         format_caps = gst_caps_new_simple ("video/x-raw-yuv",
             "format", GST_TYPE_FOURCC, formats[i].id,
-            "width", GST_TYPE_INT_RANGE, 0, G_MAXINT,
-            "height", GST_TYPE_INT_RANGE, 0, G_MAXINT,
+            "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);
         break;
       default:
@@ -1041,6 +1041,8 @@ gst_xvimagesink_sink_link (GstPad * pad, const GstCaps * caps)
   gst_structure_get_int (structure, "pixel_height", &xvimagesink->pixel_height);
 
   /* Creating our window and our image */
+  g_assert (GST_VIDEOSINK_WIDTH (xvimagesink) > 0);
+  g_assert (GST_VIDEOSINK_HEIGHT (xvimagesink) > 0);
   if (!xvimagesink->xwindow)
     xvimagesink->xwindow = gst_xvimagesink_xwindow_new (xvimagesink,
         GST_VIDEOSINK_WIDTH (xvimagesink), GST_VIDEOSINK_HEIGHT (xvimagesink));