[vlc-commits] commit: Support for webm/mkv and VP8 inside it (Jean-Baptiste Kempf )

git at videolan.org git at videolan.org
Thu May 20 18:29:16 CEST 2010


vlc/vlc-1.1 | branch: master | Jean-Baptiste Kempf <jb at videolan.org> | Wed May 19 18:28:25 2010 +0200| [1ec491ed77dd52a9e7129c70a85cf1dbfb5800c9] | committer: Jean-Baptiste Kempf 

Support for webm/mkv and VP8 inside it

We now should wait for libvpx integration
(cherry picked from commit 57fee78fbf80e640695053d016450f92eff152ee)

Signed-off-by: Jean-Baptiste Kempf <jb at videolan.org>

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

 modules/demux/mkv/demux.cpp            |    2 +-
 modules/demux/mkv/matroska_segment.cpp |    4 ++++
 2 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/modules/demux/mkv/demux.cpp b/modules/demux/mkv/demux.cpp
index fc2253e..dfa1ca6 100644
--- a/modules/demux/mkv/demux.cpp
+++ b/modules/demux/mkv/demux.cpp
@@ -67,7 +67,7 @@ matroska_stream_c *demux_sys_t::AnalyseAllSegmentsFound( demux_t *p_demux, EbmlS
     p_l0->Read(*p_estream, EbmlHead::ClassInfos.Context, i_upper_lvl, p_l0, true);
 
     EDocType doc_type = GetChild<EDocType>(*static_cast<EbmlHead*>(p_l0));
-    if (std::string(doc_type) != "matroska")
+    if (std::string(doc_type) != "matroska" && std::string(doc_type) != "webm" )
     {
         msg_Err( p_demux, "Not a Matroska file : DocType = %s ", std::string(doc_type).c_str());
         return NULL;
diff --git a/modules/demux/mkv/matroska_segment.cpp b/modules/demux/mkv/matroska_segment.cpp
index 0267696..2f51b40 100644
--- a/modules/demux/mkv/matroska_segment.cpp
+++ b/modules/demux/mkv/matroska_segment.cpp
@@ -856,6 +856,10 @@ bool matroska_segment_c::Select( mtime_t i_start_time )
         {
             tracks[i_track]->fmt.i_codec = VLC_CODEC_DIRAC;
         }
+        else if( !strncmp( tracks[i_track]->psz_codec, "V_VP8", 5 ) )
+        {
+            tracks[i_track]->fmt.i_codec = VLC_CODEC_VP8;
+        }
         else if( !strncmp( tracks[i_track]->psz_codec, "V_MPEG4", 7 ) )
         {
             if( !strcmp( tracks[i_track]->psz_codec, "V_MPEG4/MS/V3" ) )



More information about the vlc-commits mailing list