tools/gst-launch.c: Don´t try to do any state management when a live pipeline posts buffering messages.

Original commit message from CVS:
* tools/gst-launch.c: (event_loop), (main):
Don´t try to do any state management when a live pipeline posts
buffering messages.
Also make the buffering string translatable.
This commit is contained in:
Wim Taymans 2007-08-17 13:48:24 +00:00
parent ebf770154f
commit da8d6598e0
2 changed files with 14 additions and 1 deletions

View file

@ -1,3 +1,10 @@
2007-08-17 Wim Taymans <wim.taymans@gmail.com>
* tools/gst-launch.c: (event_loop), (main):
Don´t try to do any state management when a live pipeline posts
buffering messages.
Also make the buffering string translatable.
2007-08-16 Wim Taymans <wim.taymans@gmail.com>
* gst/gstbin.c: (is_eos), (gst_bin_add_func),

View file

@ -60,6 +60,7 @@ static GstElement *pipeline;
static gboolean caught_error = FALSE;
static gboolean tags = FALSE;
static gboolean messages = FALSE;
static gboolean is_live = FALSE;
#ifndef GST_DISABLE_LOADSAVE
@ -499,7 +500,11 @@ event_loop (GstElement * pipeline, gboolean blocking, GstState target_state)
gint percent;
gst_message_parse_buffering (message, &percent);
fprintf (stderr, "buffering... %d \r", percent);
fprintf (stderr, _("buffering... %d \r"), percent);
/* no state management needed for live pipelines */
if (is_live)
break;
if (percent == 100) {
/* a 100% message means buffering is done */
@ -699,6 +704,7 @@ main (int argc, char *argv[])
goto end;
case GST_STATE_CHANGE_NO_PREROLL:
fprintf (stderr, _("Pipeline is live and does not need PREROLL ...\n"));
is_live = TRUE;
break;
case GST_STATE_CHANGE_ASYNC:
fprintf (stderr, _("Pipeline is PREROLLING ...\n"));