[vlc-commits] demux:mkv: detect bogus MPEG-2 framing from MakeMKV

Steve Lhomme git at videolan.org
Wed Jan 24 08:46:27 CET 2018


vlc/vlc-3.0 | branch: master | Steve Lhomme <robux4 at ycbcr.xyz> | Thu Jan 18 14:02:08 2018 +0100| [133dcfd57b4d0125b533aaa2c2e2505341c86c0d] | committer: Jean-Baptiste Kempf

demux:mkv: detect bogus MPEG-2 framing from MakeMKV

This software doesn't put mpeg-2 frames properly in mkv frames. Without a
packetizer we get a lot of decoding issues.

Fixes #18916

(cherry picked from commit c3ac6661b7cdb2432d53216379969ded65a468ed)
Signed-off-by: Jean-Baptiste Kempf <jb at videolan.org>

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

 modules/demux/mkv/matroska_segment_parse.cpp | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/modules/demux/mkv/matroska_segment_parse.cpp b/modules/demux/mkv/matroska_segment_parse.cpp
index c7e4193060..32aee93680 100644
--- a/modules/demux/mkv/matroska_segment_parse.cpp
+++ b/modules/demux/mkv/matroska_segment_parse.cpp
@@ -1520,6 +1520,8 @@ bool matroska_segment_c::TrackInit( mkv_track_t * p_tk )
         }
         S_CASE("V_MPEG2") {
             vars.p_fmt->i_codec = VLC_CODEC_MPGV;
+            if (strstr(vars.obj->psz_muxing_application,"libmakemkv"))
+                vars.p_fmt->b_packetized = false;
             fill_extra_data( vars.p_tk, 0 );
         }
         S_CASE("V_THEORA") {



More information about the vlc-commits mailing list