[vlc-devel] commit: MKV: fix support of MLP tracks in MKV. (Jean-Baptiste Kempf )

git version control git at videolan.org
Tue Apr 14 20:33:50 CEST 2009


vlc | branch: master | Jean-Baptiste Kempf <jb at videolan.org> | Tue Apr 14 19:31:17 2009 +0200| [f7a5c96acdcb1b6adb1126f7533b480ca4265540] | committer: Jean-Baptiste Kempf 

MKV: fix support of MLP tracks in MKV.

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.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f7a5c96acdcb1b6adb1126f7533b480ca4265540
---

 modules/demux/mkv/matroska_segment.cpp |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/modules/demux/mkv/matroska_segment.cpp b/modules/demux/mkv/matroska_segment.cpp
index 2c8c924..26d43b4 100644
--- a/modules/demux/mkv/matroska_segment.cpp
+++ b/modules/demux/mkv/matroska_segment.cpp
@@ -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' );




More information about the vlc-devel mailing list