I think that better to an index per track is to have a global index, but if it has each track index multiplexed, the main difference is that we don't have n key-points wee have n key-points per track, then the number of key-points are also related to the number of tracks and each key points is marked, this add a little more of overhead. In this approach each track can have a different number of key-points for example the key-points for a subtitle marks the lines but in a video it marks each 500ms. The only modification to the original idea is to ad a track identifier in the key-points, the results is that key-point have this information:<br>
<br>the page offset as an 8 byte unsigned integer, followed by<br>the checksum of the page found at the offset, as a 4 byte field,followed by<br>the ther refered bitstream serial number of the track, as a 4 byte field,followed by<br>
the presentation times in milliseconds of the key point, as an 8 byte unsigned integer.
<br><br>To make a search in this approach is litle more complex as we have to check that the refereed key-point if from a active track, but that complexity is negligible. Also to make the index in this approach is more complex but not much.<br>