Commit Graph

3484 Commits

Author SHA1 Message Date
Moritz Bunkus
e0898852b4 Updated the Chinese Simplified translation. 2009-07-18 14:56:34 +02:00
Moritz Bunkus
b73e3467b8 ChangeLog update. 2009-07-16 21:12:23 +02:00
Moritz Bunkus
c8d18c6674 Do not try to access beyound the end of the buffer. 2009-07-16 21:05:24 +02:00
Moritz Bunkus
b98128234d Select the correct entry in the 'default track' drop down box if the file identification output contains the previous 'default track' flags. 2009-07-16 20:44:38 +02:00
Moritz Bunkus
2ca1afa943 Honour the 'default track' set as it it set in the source containers -- even if it is off for all tracks of a kind. 2009-07-16 20:24:14 +02:00
Moritz Bunkus
99646bc303 Extend the MP3/AAC/AC3 header search to the first 1 MB of a file (up from 256 KB). 2009-07-16 19:56:25 +02:00
Moritz Bunkus
14a85edb20 Always quote the mkvmerge executable path and name.
Windows' execute function works OK if the path to an .exe is unquoted
and contains a single space, probably to account for "C:\Program
Files\...". However, if the path contains two spaces then the
application to execute will not be found crashing mmg which did not
anticipate that mkvmerge cannot be spawned.

Fix for bug 419.
2009-07-15 17:25:18 +02:00
Moritz Bunkus
72beb0df85 Always add source files to mkvmerge's command line even if no track is copied from it. 2009-07-13 20:55:23 +02:00
Moritz Bunkus
9ffddf5f4b Removed the warning about files from which no tracks are copied. 2009-07-13 20:50:24 +02:00
Moritz Bunkus
ed60a04c08 Do not re-render the track headers for tracks that are appended to other tracks.
Fix for bug 427.
2009-07-13 20:04:43 +02:00
Moritz Bunkus
d179c80a8e Compilation fixes due to the changes in revision 4b89e3956c. 2009-07-12 17:24:06 +02:00
Moritz Bunkus
73160eb7c2 Updated the Chinese Traditional translation. 2009-07-07 20:54:55 +02:00
Moritz Bunkus
d4510cabcf Update to the Japanese translation. 2009-07-07 20:30:25 +02:00
Moritz Bunkus
93b28b41be Added a test case for the interface language and the available translations. 2009-07-07 00:18:54 +02:00
Moritz Bunkus
470477d55e Use another method for calculating the AVI audio sync for garbaged tracks.
Fix for bug 421.
2009-07-06 23:44:35 +02:00
Moritz Bunkus
360af9d970 Updates to the translations. 2009-07-06 21:50:21 +02:00
Moritz Bunkus
bb72b68865 Display an error if the user tries to save chapters that contain editions without a single chapter entry. Allow saving empty chapters to a Matroska file by removing all chapters contained in the file.
Fixes for bug 422.
2009-07-06 21:49:08 +02:00
Moritz Bunkus
bdcda42e70 Do not create strings to output char by char; instead write as big chunks as possible. 2009-07-06 21:04:55 +02:00
Moritz Bunkus
54b379a6a0 Use pre-parsed boost::format objects for common formats.
This speeds up processing of middle to large files by up to 50%.
2009-07-05 23:42:20 +02:00
Moritz Bunkus
0f37039512 Removed all occurences of the old markup code for Emacs' folding mode. 2009-07-05 22:10:05 +02:00
Moritz Bunkus
61e0adcc83 Update to the Chinese Traditional translation. 2009-07-04 20:02:30 +02:00
Moritz Bunkus
c018978212 Compilation fixes. 2009-07-04 16:44:39 +02:00
Moritz Bunkus
4b89e3956c Code refactoring in the APIs of counted_ptr and memory_c.
1. memory_c::get() has been renamed to
memory_c::get_buffer(). counted_ptr<>::get() has been renamed to
counted_ptr<>::get_object(). This has been done in order to make their
use a lot less ambiguous.

2. Added functions memory_c::is_allocated() and
counted_ptr<>::is_set() which replace constructs like "NULL ==
memory_c::get()".

3. Renamed counted_ptr<>::unique() to counted_ptr<>::is_unique() and
memory_c::unique() to memory_c::is_unique() for consistency with the
functions renamed in 1.

4. Refactored several files to comply with my coding rules.
2009-07-04 16:38:47 +02:00
Moritz Bunkus
9e6f88a530 If the AVC packetizer must not create timecodes then the demuxer must provide them.
The AVC OGM demuxer is now derived from the general MS compatibility
video OGM demuxer because that one already calculates the timecodes
for each packet and passes them on to the packetizer. The AVC
packetizer needs either timecodes provided by the demuxer or it must
be allowed to generate its own.

Fix for bug 418.
2009-07-02 22:03:46 +02:00
Moritz Bunkus
940383a9c9 Cosmetics. 2009-07-02 21:49:22 +02:00
Moritz Bunkus
0163eafe86 Only change the chapter language if any language other than "und" has been selected.
The code already wanted to do exactly that, but it didn't take into
account that the track_info_t structure's language element contains
the full entry as it appears in the drop down box.

Fix for bug 420.
2009-07-02 20:57:24 +02:00
Moritz Bunkus
93c2a5279a Updates. 2009-07-02 14:32:23 +02:00
Moritz Bunkus
3c45ef3808 Do not show a warning message if the user has not selected a country code in mmg's preferences dialog. 2009-07-02 13:58:36 +02:00
Moritz Bunkus
7f640252d7 Update to the Chinese Simplified translation. 2009-07-02 09:58:06 +02:00
Moritz Bunkus
72320f6142 Preparations for release 2.9.7.
Bumped the version number. Set the release code name. Added the
release message.
2009-07-01 18:40:03 +02:00
Moritz Bunkus
d7f20fba5f Speedup for the MPEG4 p2 native mode: don't call size/aspect ratio extraction functions for all frames. 2009-06-28 23:29:52 +02:00
Moritz Bunkus
ba9674094e MPEG4 part 2: Handle forced FPS in the packetizer itself instead of using a timecode factory later.
Otherwise dropped NVOPs will not be taken into account.
2009-06-28 19:33:36 +02:00
Moritz Bunkus
18ffaf7205 Adjust timecodes for dropped NVOPs in non-packed bitstreams. 2009-06-28 15:59:00 +02:00
Moritz Bunkus
0ec193da37 Output statistics for MPEG4 part 2 frame types for debugging purposes. 2009-06-28 15:32:21 +02:00
Moritz Bunkus
526c30f9e1 Use a vector of a single structure for storing timecodes and durations instead of two vectors. 2009-06-28 15:20:50 +02:00
Moritz Bunkus
2af042e683 Intentional update due to a0ce4daad2. 2009-06-28 13:33:54 +02:00
Moritz Bunkus
a0ce4daad2 Native MPEG4 part 2: Drop NVOPs before they enter the "frames to be processed" queue.
The flush decision was based on NVOPs as well. As most NVOPs fake to
be P frames the flush decision was true, but the timecodes were not
ready to cope with it. Therefore timecodes were generated for each
NVOP, and that resulted in stuttering video playback.
2009-06-28 12:47:52 +02:00
Moritz Bunkus
16e8069d48 Moved the config extraction code into its own function. 2009-06-28 12:22:24 +02:00
Moritz Bunkus
09f3323170 Fixed a wrong comparison: FPS must be greater than 0, not smaller. 2009-06-27 21:46:25 +02:00
Moritz Bunkus
12d4a2f59f Removed an obsolete language code for Croatian. 2009-06-27 21:21:58 +02:00
Moritz Bunkus
77dc61745e Update to the translations. 2009-06-27 21:09:34 +02:00
Moritz Bunkus
9c0d1028ad Updated the translations. 2009-06-25 18:58:03 +02:00
Moritz Bunkus
445c02e04f Updates. 2009-06-25 18:57:30 +02:00
Moritz Bunkus
367dae3f1c Moved the dialog for default chapter values into a tab of the 'preferences' dialog. 2009-06-25 18:56:21 +02:00
Moritz Bunkus
4b58de68c8 Cosmetics. 2009-06-25 17:31:03 +02:00
Moritz Bunkus
c9c8a72d5d Refined the I frame detection for AVC/h.264 video tracks.
The decision whether or not to merge two NALUs into a single I frame
needed to take the "first macroblock in frame" counter into
account. Otherwise a single I frame might be detected as being two or
more separate frames if one of the other conditions for NALU
separation was met. This resulted in garbled playback for the current
group of pictures as well as in wrong timestamps being issued to
following frames.

Fix for bug 415.
2009-06-25 17:25:16 +02:00
Moritz Bunkus
e6a20baea1 Compilation fix. 2009-06-23 19:59:49 +02:00
Moritz Bunkus
86fe269a78 Updated the Japanese translation. 2009-06-23 19:50:10 +02:00
Moritz Bunkus
70abb91ff6 Removed debug code. 2009-06-23 19:47:50 +02:00
Moritz Bunkus
00a3e1f1e0 Don't adjust timecodes automatically if the previous timecode is bigger than the current one. 2009-06-23 19:47:28 +02:00