From: <wt...@fr...> - 2005-08-22 19:49:04
|
CVS Root: /cvs/gstreamer Module: gstreamer Changes by: wtay Date: Mon Aug 22 2005 12:48:58 PDT Log message: * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps), (gst_base_transform_handle_buffer): Also call the transform function if we have ANY caps. * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time): Fix debug info. Modified files: . : ChangeLog gst : gstpipeline.c gst/base : gstbasetransform.c Links: http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gstreamer/ChangeLog.diff?r1=1.1380&r2=1.1381 http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gstreamer/gst/gstpipeline.c.diff?r1=1.103&r2=1.104 http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gstreamer/gst/base/gstbasetransform.c.diff?r1=1.24&r2=1.25 ====Begin Diffs==== Index: ChangeLog =================================================================== RCS file: /cvs/gstreamer/gstreamer/ChangeLog,v retrieving revision 1.1380 retrieving revision 1.1381 diff -u -d -r1.1380 -r1.1381 --- ChangeLog 22 Aug 2005 19:22:34 -0000 1.1380 +++ ChangeLog 22 Aug 2005 19:48:46 -0000 1.1381 @@ -1,3 +1,12 @@ +2005-08-22 Wim Taymans <wi...@fl...> + + * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps), + (gst_base_transform_handle_buffer): + Also call the transform function if we have ANY caps. + * gst/gstpipeline.c: (gst_pipeline_set_new_stream_time): + Fix debug info. 2005-08-22 Jan Schmidt <th...@ma...> * gst/base/gstbasesrc.c: (gst_base_src_event_handler) Index: gstbasetransform.c RCS file: /cvs/gstreamer/gstreamer/gst/base/gstbasetransform.c,v retrieving revision 1.24 retrieving revision 1.25 diff -u -d -r1.24 -r1.25 --- gstbasetransform.c 17 Aug 2005 16:33:27 -0000 1.24 +++ gstbasetransform.c 22 Aug 2005 19:48:46 -0000 1.25 @@ -222,18 +222,27 @@ ret = gst_caps_new_empty (); - /* we send caps with just one structure to the transform - * function as this is easier for the element */ - for (i = 0; i < gst_caps_get_size (caps); i++) { - GstCaps *nth; - - nth = gst_caps_copy_nth (caps, i); - GST_DEBUG_OBJECT (trans, "from[%d]: %" GST_PTR_FORMAT, i, nth); - temp = klass->transform_caps (trans, pad, nth); - gst_caps_unref (nth); - GST_DEBUG_OBJECT (trans, " to[%d]: %" GST_PTR_FORMAT, i, temp); + if (gst_caps_is_any (caps)) { + /* for any caps we still have to call the transform function */ + GST_DEBUG_OBJECT (trans, "from ANY:"); + temp = klass->transform_caps (trans, pad, caps); + GST_DEBUG_OBJECT (trans, " to: %" GST_PTR_FORMAT, temp); gst_caps_append (ret, temp); + } else { + /* we send caps with just one structure to the transform + * function as this is easier for the element */ + for (i = 0; i < gst_caps_get_size (caps); i++) { + GstCaps *nth; + nth = gst_caps_copy_nth (caps, i); + GST_DEBUG_OBJECT (trans, "from[%d]: %" GST_PTR_FORMAT, i, nth); + temp = klass->transform_caps (trans, pad, nth); + gst_caps_unref (nth); + GST_DEBUG_OBJECT (trans, " to[%d]: %" GST_PTR_FORMAT, i, temp); + gst_caps_append (ret, temp); + } } gst_caps_do_simplify (ret); } else { @@ -620,6 +629,7 @@ if (trans->in_place) { if (bclass->transform_ip) { + /* we do not call make writable here */ gst_buffer_ref (inbuf); /* in place transform and subclass supports method */ Index: gstpipeline.c RCS file: /cvs/gstreamer/gstreamer/gst/gstpipeline.c,v retrieving revision 1.103 retrieving revision 1.104 diff -u -d -r1.103 -r1.104 --- gstpipeline.c 22 Aug 2005 18:48:48 -0000 1.103 +++ gstpipeline.c 22 Aug 2005 19:48:46 -0000 1.104 @@ -410,7 +410,7 @@ GST_LOCK (pipeline); pipeline->stream_time = time; GST_DEBUG ("%s: set new stream_time to %" GST_TIME_FORMAT, - GST_ELEMENT_NAME (pipeline), time); + GST_ELEMENT_NAME (pipeline), GST_TIME_ARGS (time)); GST_UNLOCK (pipeline); } |