diff libmpdemux/demuxer.c @ 36682:68794f2fbf1e

Add support for default of multiple video tracks. Some container formats like matroska support multiple video tracks, one of which may be flagged the 'default' one which thus should be played by default. Works with the lavf demuxer.
author ib
date Sun, 02 Feb 2014 19:18:31 +0000
parents dba1b5aa72c1
children aadf2020f6f0
line wrap: on
line diff
--- a/libmpdemux/demuxer.c	Sun Feb 02 10:54:37 2014 +0000
+++ b/libmpdemux/demuxer.c	Sun Feb 02 19:18:31 2014 +0000
@@ -1916,6 +1916,22 @@
     return -1;
 }
 
+int demuxer_default_video_track(demuxer_t *d)
+{
+    int i;
+    for (i = 0; i < MAX_V_STREAMS; ++i) {
+        sh_video_t *sh = d->v_streams[i];
+        if (sh && sh->default_track)
+            return sh->vid;
+    }
+    for (i = 0; i < MAX_V_STREAMS; ++i) {
+        sh_video_t *sh = d->v_streams[i];
+        if (sh)
+            return sh->vid;
+    }
+    return -1;
+}
+
 int demuxer_default_sub_track(demuxer_t *d)
 {
     int i;