Fix for gap_following in v3 timecode files. Fix for the width & height for VobButton tracks. Patch by Steve Lhomme (steve ! lhomme () free ! fr)

This commit is contained in:
Moritz Bunkus 2005-01-12 13:51:56 +00:00
parent d086bf4325
commit b992010b32
2 changed files with 14 additions and 4 deletions

View File

@ -737,6 +737,16 @@ generic_packetizer_c::set_headers() {
*(static_cast<EbmlUInteger *>(&GetChild<KaxAudioBitDepth>(audio))) =
haudio_bit_depth;
} else if (htrack_type == track_buttons) {
if ((hvideo_pixel_height != -1) && (hvideo_pixel_width != -1)) {
KaxTrackVideo &video = GetChild<KaxTrackVideo>(*track_entry);
*(static_cast<EbmlUInteger *>
(&GetChild<KaxVideoPixelWidth>(video))) = hvideo_pixel_width;
*(static_cast<EbmlUInteger *>
(&GetChild<KaxVideoPixelHeight>(video))) = hvideo_pixel_height;
}
}
if (ti->compression != COMPRESSION_UNSPECIFIED)

View File

@ -186,7 +186,7 @@ timecode_factory_v1_c::get_next(int64_t &timecode,
mxverb(4, "ext_timecodes v1: tc %lld dur %lld for %lld\n", timecode,
duration, frameno - 1);
return true;
return false;
}
int64_t
@ -260,14 +260,14 @@ timecode_factory_v2_c::get_next(int64_t &timecode,
"the way you intended them to be. mkvmerge might even crash.\n",
source_name.c_str(), tid, timecodes.size());
warning_printed = true;
return true;
return false;
}
timecode = timecodes[frameno];
duration = durations[frameno];
if (!peek_only)
frameno++;
return true;
return false;
}
void
@ -366,7 +366,7 @@ bool
timecode_factory_v3_c::get_next(int64_t &timecode,
int64_t &duration,
bool peek_only) {
bool result = (current_timecode == 0);
bool result = false;
if (durations[current_duration].is_gap) {
size_t duration_index = current_duration;