3 Delay not shown in the GUI
remuxer32 edited this page 2017-02-18 15:59:11 +01:00

A delay set in the GUI will not show up correctly in the GUI or MediaInfo

The problem

You merge a track with a certain offset/delay. When you add that muxed file to the GUI again, the delay input field is left empty. Similarly MediaInfo may show delay values that are actually different than the ones you've specified.

Reason

This is simply how the Matroska file format works. A delay you enter is not stored in some header field. Instead, all the timestamps are modified by that value. So, if that leads to whole packets being dropped, you might even see totally confusing values reported from tools like MediaInfo (which isn't a bug in those tools either, see below).

Let's take an AC-3 track for example. Those often have packets with a duration of 32ms. Now, if you offset that by -40ms, mkvmerge subtracts those 40ms from all timestamps. The very first two timestamps would then be at -40ms and -8ms; however, Matroska doesn't allow negative timestamps. Therefore the first two packets will be dropped. The new first packet is the old third packet at the new timestamp 24ms (old timestamp 64ms, subtract delay 40ms = 24ms). MediaInfo would then report a positive offset of 24ms.

As mkvmerge already keeps those timestamps intact when remuxing, there's no need to set those 24ms offset when you add that muxed file to the GUI again. In fact, it would be wrong and detrimental as then an additional offset of 24ms would be applied.

Categories: merging, metadata