diff --git a/ChangeLog b/ChangeLog index 3cdf3a83ab..e306119ff5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2005-01-10 Ronald S. Bultje + + * gst/playback/gstplaybasebin.c: (setup_substreams): + Don't disable streamtype if the stream doesn't exist, since + then playing a video after audio will disable both and nothing + will happen. Fixes the testsuite. + 2005-01-10 Ronald S. Bultje * sys/v4l/gstv4lxoverlay.c: (gst_v4l_xoverlay_interface_init), diff --git a/gst/playback/gstplaybasebin.c b/gst/playback/gstplaybasebin.c index 2a7c614ef1..f296ceb5d5 100644 --- a/gst/playback/gstplaybasebin.c +++ b/gst/playback/gstplaybasebin.c @@ -1044,10 +1044,12 @@ setup_substreams (GstPlayBaseBin * play_base_bin) } } - /* now check if the requested current streams exist */ + /* now check if the requested current streams exist. If + * current >= num_streams, decrease current so at least + * we have output. Always keep it enabled. */ for (n = 0; n < NUM_TYPES; n++) { if (play_base_bin->current[n] >= group->type[n].npads) { - play_base_bin->current[n] = group->type[n].npads > 0 ? 0 : -1; + play_base_bin->current[n] = 0; } }