mkvtoolnix/AUTHORS
Moritz Bunkus 2b1b065840 Try to detect invalid padding packet lengths in MPEG program streams.
Patch by Todd Schmuland (see AUTHORS).

His explanation:

I was muxing a DVD and mkvmerge complained about losing sync while
parsing the vob.  I checked to see what was happening and discovered
the length of a 00 00 01 BE padding packet was way too long.  This
resulted in several packets being skipped over and therefore caused a
gap in the resulting mkv.  I've seen this before where the packet
length specified in a 00 00 01 BE padding packet is incorrect.

I've made adjustments to the r_mpeg_ps.cpp code to detect when 00 00
01 BE padding packets have the wrong length specified.  Padding
packets should always fill the gap to the next 2048 (800 hex) page in
the file.  Now the code will detect lengths that are way too long, or
lengths that are just under or just over what they should be, and
correct it.

I also changed it so that with one -v switch, you won't get 100s of
mpeg_ps: parse_packet failed messages anymore.  Adjusted padding
packet lengths will be indicated with one -v switch, but now good 00
00 01 BE padding stream packets and 00 00 01 BF private 2 stream
packets won't be output as failing anymore.

I was finally able to get a good mkv mux of the DVD with the attached
r_mpeg_ps.cpp file.

I just did another DVD and it had a similar bad padding stream packet.
Packet length in vob was 44036 but should only be 1918.  The new
r_mpeg_ps detected and corrected it, whereas the old code would have
skipped (44036-1918)/2048 = ~21 good packets of video/audio.
2009-05-14 09:20:39 +02:00

100 lines
3.1 KiB
Plaintext

The authors for the main code in alphabetical order:
Bunkus, Moritz (Mosu) <moritz@bunkus.org>
* Almost everything
Cannon, John (spyder482) <spyder@matroska.org>
* MPEG ES parser code
Coalson, Josh <j_coalson@yahoo.com>
* support for libFLAC 1.1.3
Galassi, Damiano <damiog@gmail.com>
* Bugfix for timecodes in MP4 files with edit lists and B frames
Hakobyan, Sergey <sergey.hakobyan@viragelogic.com>
* Support for creating missing output directories
* Using the attachment names in Matroska files for extraction
Taniura, Hiroki <zuntakapokoten@gmail.com>
* Japanese translation
Jacobs, Aurelien <aurel@gnuage.org>
* Support for RealAudio v3 in RealMedia files
* Bugfixes (e.g. BZIP2 compression)
* Support for float PCM tracks
Le Guen, Nicolas (Goldenear) <nleguen@pepper-prod.com>
* Enhancements and updates to the "CUE sheet to tags & chapter
conversion" process
* Small updates to mmg and the MIME type list
Lee, Dean <xslidian@gmail.com>
* Chinese (simplified) translation
Lhomme, Steve (robux4) <steve.lhomee@free.fr>
* Fixes for compilation with MSVC
* Enhancements and fixes to the XML chapter parser
* The complete VobButton handling
* The complete WAVPACK handling
* Support for SimpleBlock usage
* The CorePicture XML reader
Matsnev, Mike (Haali) <mike@po.cs.msu.su>
* CreateFileUtf8() function
* Windows implementation for vsscanf
* The MPEG header generation for VobSub extraction
Mierzejewski, Dominik (Rathann) <dominik@greysector.net>
* Patch for proper Boost detection for cross compilation builds
Millan, Robert <rmh@aybabtu.com>
* MIME type recognition via libmagic
* Fix for a malloc bomb in the PCM handling
Mistry, Shailesh L <shailesh.mistry@milan.eclipse.co.uk>
* Fixes for compilation of avilib with cygwin
Niemayer, Peter <niemayer@isg.de>
* The DTS code (reader, packetizers, dts_common)
* The use of posix_fadvise in the mm_io_c class
Pettenò, Diego <flameeyes@gentoo.org>
* Support for liblzo2
Pettersen, Vegard <vegard_p@broadpark.no>
* Extended support for converting CUE sheets to tags & chapters
Rice, Matt <topquark@sluggy.net>
* Extraction of h.264 into proper h.264 ES streams
Schmuland, Todd <tschmula@gmail.com>
* Bugfix for VobSub extraction
* Bugfix for VobSub muxing
* Enhancements for MPEG program stream parsing (invalid padding
packet lengths)
Stone, Jory (jcsston) <jcsston@toughguy.net>
* Fixes to mkvinfo's GUI
Zenkov, Mihail <mihail.zenkov@gmail.com>
* Support for reading MP2 audio tracks from OGM files
?, ? (Lefungus)
* Avoid several compiler warnings
?, ? <ogg.k.ogg.k@googlemail.com>
* Support for Ogg Kate in mkvmerge and mkvextract
-------------------------------------------------------
Stuff that was developped externally and only included/patched in mkvtoolnix:
avilib:
* Johanni, Rainer <Rainer@Johanni.de> (original source code)
* Östreich, Thomas <ostreich@theorie.physik.uni-goettingen.de>
(lots of modifications in transcode)
* Bunkus, Moritz <moritz@bunkus.org> (lots of modifications in
ogmtools and mkvtoolnix)
* probably others