summaryrefslogtreecommitdiffstats
path: root/libmpdemux/demux_lavf.c
diff options
context:
space:
mode:
authoreugeni <eugeni@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-03-30 16:55:46 +0000
committereugeni <eugeni@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-03-30 16:55:46 +0000
commit7cc46c2e87348423b7d97cf55fdb992404e3a7e8 (patch)
tree23df08556ce4a5ecd03efd357ca82630adc2e661 /libmpdemux/demux_lavf.c
parent37d20cbc938f4e09bbbd9141d7456c3949aea312 (diff)
downloadmpv-7cc46c2e87348423b7d97cf55fdb992404e3a7e8.tar.bz2
mpv-7cc46c2e87348423b7d97cf55fdb992404e3a7e8.tar.xz
Support 'default' attribute for audio and subtitle tracks.
The first default track is chosen for playback if language-based selection failes. Additionally, for audio tracks, the first one is chosen if there are no default tracks at all. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26301 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/demux_lavf.c')
-rw-r--r--libmpdemux/demux_lavf.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libmpdemux/demux_lavf.c b/libmpdemux/demux_lavf.c
index 061fd76e82..dfa39bfb18 100644
--- a/libmpdemux/demux_lavf.c
+++ b/libmpdemux/demux_lavf.c
@@ -337,6 +337,8 @@ static void handle_stream(demuxer_t *demuxer, AVFormatContext *avfc, int i) {
}
if (st->language)
sh_audio->lang = strdup(st->language);
+ if (st->disposition & AV_DISPOSITION_DEFAULT)
+ sh_audio->default_track = 1;
if(mp_msg_test(MSGT_HEADER,MSGL_V) ) print_wave_header(sh_audio->wf, MSGL_V);
// select the first audio stream
if (!demuxer->audio->sh) {
@@ -433,6 +435,8 @@ static void handle_stream(demuxer_t *demuxer, AVFormatContext *avfc, int i) {
}
if (st->language)
sh_sub->lang = strdup(st->language);
+ if (st->disposition & AV_DISPOSITION_DEFAULT)
+ sh_sub->default_track = 1;
priv->sub_streams++;
break;
}