From b796f2bb7693676056d0de98a9a95258909d799b Mon Sep 17 00:00:00 2001 From: wm4 Date: Mon, 23 Dec 2013 20:14:54 +0100 Subject: player: redo demuxer stream selection Use struct track to decide what stream to select. Add a "selected" field and use that in some places instead of checking mpctx->current_track. --- player/audio.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'player/audio.c') diff --git a/player/audio.c b/player/audio.c index 64160e0cd7..69fcb1d38e 100644 --- a/player/audio.c +++ b/player/audio.c @@ -104,7 +104,8 @@ int reinit_audio_filters(struct MPContext *mpctx) void reinit_audio_chain(struct MPContext *mpctx) { struct MPOpts *opts = mpctx->opts; - struct sh_stream *sh = init_demux_stream(mpctx, STREAM_AUDIO); + struct track *track = mpctx->current_track[STREAM_AUDIO]; + struct sh_stream *sh = init_demux_stream(mpctx, track); if (!sh) { uninit_player(mpctx, INITIALIZED_AO); goto no_audio; @@ -186,9 +187,8 @@ void reinit_audio_chain(struct MPContext *mpctx) init_error: uninit_player(mpctx, INITIALIZED_ACODEC | INITIALIZED_AO); - cleanup_demux_stream(mpctx, STREAM_AUDIO); no_audio: - mpctx->current_track[STREAM_AUDIO] = NULL; + mp_deselect_track(mpctx, track); MP_INFO(mpctx, "Audio: no audio\n"); } -- cgit v1.2.3