]> git.sesse.net Git - vlc/commitdiff
MKV: fix support of MLP tracks in MKV.
authorJean-Baptiste Kempf <jb@videolan.org>
Tue, 14 Apr 2009 17:31:17 +0000 (19:31 +0200)
committerJean-Baptiste Kempf <jb@videolan.org>
Tue, 14 Apr 2009 17:45:18 +0000 (19:45 +0200)
Sample can be found at ftp://streams.videolan.org/streams-videolan/matroska/MLP_5.1.mka
It seems to work, but I have difficulties to find a reference output.
Support for TrueHD is not yet tested because of lack of correct sample.

modules/demux/mkv/matroska_segment.cpp

index 2c8c924e0801561ab72fb7eb86756ae5e066a231..26d43b4bdc91bc2d0ec2060b17cca5e87981e4b3 100644 (file)
@@ -854,6 +854,16 @@ bool matroska_segment_c::Select( mtime_t i_start_time )
         {
             tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'd', 't', 's', ' ' );
         }
+        else if( !strcmp( tracks[i_track]->psz_codec, "A_MLP" ) )
+        {
+            tracks[i_track]->fmt.i_codec = VLC_FOURCC('m', 'l', 'p', ' ' );
+        }
+        else if( !strcmp( tracks[i_track]->psz_codec, "A_TRUEHD" ) )
+        {
+            /* FIXME when more samples arrive */
+            tracks[i_track]->fmt.i_codec = VLC_FOURCC('t', 'r', 'h', 'd' );
+            p_fmt->b_packetized = false;
+        }
         else if( !strcmp( tracks[i_track]->psz_codec, "A_FLAC" ) )
         {
             tracks[i_track]->fmt.i_codec = VLC_FOURCC( 'f', 'l', 'a', 'c' );