[vlc-devel] [vlc-commits] demux:mkv: detect bogus MPEG-2 framing from MakeMKV
Steve Lhomme
robux4 at ycbcr.xyz
Mon Jan 22 12:59:38 CET 2018
Le 22/01/2018 à 11:23, Steve Lhomme a écrit :
> vlc | branch: master | Steve Lhomme <robux4 at ycbcr.xyz> | Thu Jan 18 14:02:08 2018 +0100| [c3ac6661b7cdb2432d53216379969ded65a468ed] | committer: Steve Lhomme
>
> 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
Not exactly. It's necessary but not sufficient. libavcodec crashes
trying to use reference frames it doesn't have.
>
>> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c3ac6661b7cdb2432d53216379969ded65a468ed
> ---
>
> 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 6683eec79c..f4d3900b7f 100644
> --- a/modules/demux/mkv/matroska_segment_parse.cpp
> +++ b/modules/demux/mkv/matroska_segment_parse.cpp
> @@ -1517,6 +1517,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") {
>
> _______________________________________________
> vlc-commits mailing list
> vlc-commits at videolan.org
> https://mailman.videolan.org/listinfo/vlc-commits
More information about the vlc-devel
mailing list