From e26b7314cf6751a5b2aafb9c29395711758e30b5 Mon Sep 17 00:00:00 2001 From: wm4 Date: Fri, 3 Aug 2012 09:32:08 +0200 Subject: mplayer: fix output of audio/sub language in terminal output The SH_COMMON lang field seems to be blatantly unreliable and is not always set by demux_lavf (at least not with dvdnav:// ). Also fix the same for the show_tracks_osd slave command. --- mplayer.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'mplayer.c') diff --git a/mplayer.c b/mplayer.c index f221421521..59c7229c8e 100644 --- a/mplayer.c +++ b/mplayer.c @@ -401,8 +401,13 @@ static void print_stream(struct MPContext *mpctx, sh_common_t *s) } mp_msg(MSGT_CPLAYER, MSGL_INFO, "[stream] ID %d: %s", s->demuxer_id, tname); mp_msg(MSGT_CPLAYER, MSGL_INFO, " --%s=%d", selopt, s->id); - if (s->lang) - mp_msg(MSGT_CPLAYER, MSGL_INFO, " --%s=%s", langopt, s->lang); + char *lang = NULL; + if (s->stream_type == STREAM_AUDIO) + lang = demuxer_audio_lang(mpctx->demuxer, s->index); + if (s->stream_type == STREAM_SUBTITLE) + lang = demuxer_sub_lang(mpctx->demuxer, s->index); + if (lang) + mp_msg(MSGT_CPLAYER, MSGL_INFO, " --%s=%s", langopt, lang); if (s->default_track) mp_msg(MSGT_CPLAYER, MSGL_INFO, " (*)"); if (s->title) -- cgit v1.2.3