From: <tho...@fr...> - 2005-09-11 11:57:22
|
CVS Root: /cvs/gstreamer Module: gstreamer Changes by: thomasvs Date: Sun Sep 11 2005 04:57:20 PDT Log message: debug fixes Modified files: gst/base : gstbasesink.c Links: http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gstreamer/gst/base/gstbasesink.c.diff?r1=1.53&r2=1.54 ====Begin Diffs==== Index: gstbasesink.c =================================================================== RCS file: /cvs/gstreamer/gstreamer/gst/base/gstbasesink.c,v retrieving revision 1.53 retrieving revision 1.54 diff -u -d -r1.53 -r1.54 --- gstbasesink.c 9 Sep 2005 18:05:40 -0000 1.53 +++ gstbasesink.c 11 Sep 2005 11:57:08 -0000 1.54 @@ -787,6 +787,7 @@ GST_PREROLL_LOCK (pad); /* we need preroll after the flush */ + GST_DEBUG_OBJECT (basesink, "flushing, need preroll after flush"); basesink->need_preroll = TRUE; /* unlock from a possible state change/preroll */ gst_base_sink_preroll_queue_flush (basesink, pad); @@ -1143,6 +1144,8 @@ bclass->unlock (basesink); /* flush out the data thread if it's locked in finish_preroll */ + GST_DEBUG_OBJECT (basesink, + "flushing out data thread, need preroll to FALSE"); basesink->need_preroll = FALSE; gst_base_sink_preroll_queue_flush (basesink, pad); GST_PREROLL_SIGNAL (pad); @@ -1295,6 +1298,7 @@ basesink->offset = 0; GST_PREROLL_LOCK (basesink->sinkpad); basesink->have_preroll = FALSE; + GST_DEBUG_OBJECT (basesink, "READY to PAUSED, need preroll to FALSE"); GST_PREROLL_UNLOCK (basesink->sinkpad); basesink->have_newsegment = FALSE; @@ -1315,6 +1319,8 @@ gst_base_sink_preroll_queue_empty (basesink, basesink->sinkpad); } else if (!basesink->have_preroll) { /* don't need preroll, but do queue a commit_state */ + GST_DEBUG_OBJECT (basesink, + "PAUSED to PLAYING, !eos, !have_preroll, need preroll to FALSE"); basesink->need_preroll = FALSE; basesink->playing_async = TRUE; ret = GST_STATE_CHANGE_ASYNC; @@ -1322,6 +1328,8 @@ } else { /* don't need the preroll anymore */ + "PAUSED to PLAYING, !eos, have_preroll, need preroll to FALSE"); /* now let it play */ GST_PREROLL_SIGNAL (basesink->sinkpad); } @@ -1367,6 +1375,7 @@ GST_DEBUG_OBJECT (basesink, "have_preroll: %d, EOS: %d", basesink->have_preroll, basesink->eos); if (!basesink->have_preroll && !basesink->eos) { + GST_DEBUG_OBJECT (basesink, "PLAYING to PAUSED, need preroll to TRUE"); basesink->need_preroll = TRUE; |