Commit Graph

3484 Commits

Author SHA1 Message Date
Moritz Bunkus
75b9dff7a2 Added more debugging helper functions. 2009-06-11 10:57:11 +02:00
Moritz Bunkus
3dc7695403 Added debug code; Added a new function for handling EbmlVoid elements. 2009-06-10 17:46:45 +02:00
Moritz Bunkus
0c9360d079 Update to the Chinese Traditional translation. 2009-06-10 17:26:51 +02:00
Moritz Bunkus
d279a2916b Updated the Chinese Simplified translation. 2009-06-10 16:25:37 +02:00
Moritz Bunkus
ab720af6f0 Added debug code; Added a new function for handling EbmlVoid elements. 2009-06-10 15:37:27 +02:00
Moritz Bunkus
a61e04d5a4 Update to the Japanese translation. 2009-06-10 11:30:08 +02:00
Moritz Bunkus
df025d89d3 Initialize the STDIO charset conversion handle. 2009-06-09 22:38:25 +02:00
Moritz Bunkus
100d161308 Only show the "validation succeeded" message if the user selected the "verify" menu entry. 2009-06-09 21:35:02 +02:00
Moritz Bunkus
fe67b7c0cb Show a message even if chapter validation succeeded.
Fix for bug 410.
2009-06-09 21:31:51 +02:00
Moritz Bunkus
7930c89c9d Ignore chapter recoding errors for MP4 files in identification mode.
MP4 files with chapters may contain non-UTF-8 encoded
strings. Processing those strings as UTF-8 may cause mkvmerge to abort
with a message abort invalid UTF-8 sequences.

This is bad in identification mode because here the actual chapter
names are not needed, only the number of entries.

Fix for bug 408.
2009-06-09 17:01:40 +02:00
Moritz Bunkus
dd1261afd5 Only check whether or not the local chapter entries have already been read. 2009-06-09 10:33:16 +02:00
Moritz Bunkus
a61237f991 Bumped the version number, added the release message, set the release code name. 2009-06-07 11:04:28 +02:00
Moritz Bunkus
869988a6b4 Added a test for VC-1, TrueHD, EAC3 in EVO (MPEG program streams). 2009-06-06 22:10:25 +02:00
Moritz Bunkus
f0dd3ca0ed The start of a script for generating graphs from mkvinfo output 2009-06-06 22:06:55 +02:00
Moritz Bunkus
4f49930ea5 More precise counting of samples in TrueHD/MLP packets 2009-06-06 22:06:17 +02:00
Moritz Bunkus
aba3a585e4 TrueHD/MLP audio in MPEG program streams only has four instead of six bytes header data
Fix for bug 394.
2009-06-06 21:48:44 +02:00
Moritz Bunkus
4398dc1c69 Corrected the "operator <" logic for file_id_t structures.
The device number has precendence over the inode number. Therefore the
inode numbers must only be compared if the device numbers are equal.

This resulted in some strange cases in which the std::map<> object for
which file_id_t structures were used as keys was removing/inserting
the wrong elements. This caused crashes in rare cases, e.g. for access
to files on VFAT formatted file systems because the device numbers
were higher than ones for ext3 or devfs (think "/dev/urandom").
2009-06-06 17:25:06 +02:00
Moritz Bunkus
a23e4d309c Moved debug messages to separate files. Added debug messages for memory consumption. 2009-06-04 20:06:44 +02:00
Moritz Bunkus
9146088dab Wrong field used for arguments to debugging options 2009-06-04 17:50:56 +02:00
Moritz Bunkus
2db19178ef Allow parameters for debugging options. 2009-06-04 17:42:02 +02:00
Moritz Bunkus
15a90cf56c Added debug code for improved key frame detection in AVC/h.264 tracks.
Some AVC/h.264 tracks do not seem to contain NALUs marked as being IDR
NALUs. Therefore mkvmerge wasn not considering I slices contained in
those NALUs for key frames. This code adds a --debug option for a
workaround for such files.
2009-06-03 20:05:48 +02:00
Moritz Bunkus
17124aa9f9 Debugcode for AVC slice types. 2009-06-02 23:22:36 +02:00
Moritz Bunkus
ded03f67a9 Updated the Chinese Traditional translation. 2009-06-02 23:20:58 +02:00
Moritz Bunkus
4c9cf78666 Updated the Chinese Simplified translation. 2009-06-02 10:17:45 +02:00
Moritz Bunkus
e06dd83815 Updated the Japanese translation. 2009-06-01 11:38:48 +02:00
Moritz Bunkus
8139108c0f Improved the control over which tags get copied from a source file to the output file
The old option --no-tags" was replaced with the new options
"--no-global-tags" which causes global tags not to be copied and
"--no-track-tags" which causes track specific tags to not be
copied. The new option "--track-tags" can be used to select tracks for
which tags will be copied. The default is still to copy all existing
tags.
2009-05-31 21:08:12 +02:00
Moritz Bunkus
1c5f7427e8 Updates. 2009-05-31 20:44:20 +02:00
Moritz Bunkus
06612ddb40 Bad update to the new option name. 2009-05-31 20:29:03 +02:00
Moritz Bunkus
d13b70479e Updates to the previous commit. 2009-05-31 20:28:45 +02:00
Moritz Bunkus
feb085d055 Renamed a couple of command line options to have a more consistent command line interface.
The old versions are still supported but not mentioned in the
documentation anymore.
2009-05-31 18:21:40 +02:00
Moritz Bunkus
b129c3fcfa A function for dumping EBML elements for debugging purposes. 2009-05-31 16:37:57 +02:00
Moritz Bunkus
7d31271f59 Include global and track specific tags in the identification output. 2009-05-31 14:24:22 +02:00
Moritz Bunkus
816ff6f8ac Added test cases for MPEG-2 video handling, sequence header extraction etc. 2009-05-31 13:29:15 +02:00
Moritz Bunkus
fd7ce07549 Put the first sequence header found in MPEG-1/2 tracks into the CodecPrivate element again.
This was removed in a3edc83512 in a fix
to not remove the sequence headers from the bitstream. However,
putting the first sequence header into CodecPrivate while still not
removing the sequence headers from the bitstream improves
compatibility with some existing parsers (MediaPlayer Classic
HomeCinema).
2009-05-31 01:06:59 +02:00
Moritz Bunkus
2c585e5917 Removed the check if the user has added files/tracks before starting to mux.
This way creating chapter-only files will be possible with mmg,
too. It has already been possible with mkvmerge itself.

Fix for bug 402.
2009-05-31 00:16:50 +02:00
Moritz Bunkus
97a06c45f7 Fix the usage of URL macros in the man pages. 2009-05-30 20:22:56 +02:00
Moritz Bunkus
dd0ef833b3 groff is not used during the mkvtoolnix build process. 2009-05-30 19:00:00 +02:00
Moritz Bunkus
260f876ab2 Intentional change due to 9de93e4c32 and 25817e32c0. 2009-05-30 18:40:24 +02:00
Moritz Bunkus
25817e32c0 Don't increment the packet number twice. 2009-05-30 18:37:01 +02:00
Moritz Bunkus
2331169ef4 Cosmetics. 2009-05-30 18:20:42 +02:00
Moritz Bunkus
9de93e4c32 Improved the timecode calculation for AC3 tracks
If the source file contains the same timecode for consecutive packets
then mkvmerge will extrapolate timecodes for all but the first packets
in the sequence.

Fix for bug 403.
2009-05-30 18:19:38 +02:00
Moritz Bunkus
be31e7925e Include the number of chapters in a file in the identification output. 2009-05-29 11:31:12 +02:00
Moritz Bunkus
2d416e39f5 Added a function for counting the number of chapter atoms in a chapter element. 2009-05-29 10:53:40 +02:00
Moritz Bunkus
dc33018a67 Fix for an endless loop: "resync()" returns 0 on error which let the search continue at the start of the buffer 2009-05-27 15:26:01 +02:00
Moritz Bunkus
3e50df1f17 Fixed MPEG program stream detection for packet sizes other than 188 bytes.
The problem was that the search position was not reset for each potential
packet size. Therefore other packet sizes always only found one hit for
the TS start code.
2009-05-26 22:34:48 +02:00
Moritz Bunkus
b5d91f276d Removed debug code. 2009-05-26 22:33:53 +02:00
Moritz Bunkus
683d5fccaa Swapped parameters of memset, and forgot the offset.
Patch by Todd Schmuland.
2009-05-24 20:22:53 +02:00
Moritz Bunkus
649de6dfb4 Improved detection of wrong padding packet lengths in MPEG program streams.
Fix for bug 393.

Explanation by Todd Schmuland:

I looked at his mpeg file and my assumption of packets always being on
a page boundary was incorrect.  His mpeg isn't perfect (each specified
audio packet length is 16 bytes short of what it really is, hence all
the lost sync messages), but the parser is capable of dealing with it.
So I have to remove the erroneous page boundary limitation.

Attached is the fixed r_mpeg_ps.cpp.  The new behavior now is thus.
Whenever a pad packet is encountered, the code now skips forward the
packet length specified and checks to see if the next header is there.
If it is then great, if not then it searches for the next header and
calculates the correct pad packet length.  This removes the page
boundary limitation.  I tested it on Transformers and it works well.
I also tested it against his mpeg and it works as well.
2009-05-24 16:45:18 +02:00
Moritz Bunkus
bafff5b541 Added support for the FourCC "XVID" in QuickTime files. 2009-05-23 22:57:29 +02:00
Moritz Bunkus
d7e8b2cb52 Added support for the FourCC ".mp3" in QuickTime files. 2009-05-23 22:17:55 +02:00