The MXF Book

Bruce Devlin
An index table allows an application to convert a time offset to a byte offset within a given stream in a file. This allows applications to access any frame or sample within the file without having to parse the entire file. The general concepts for the use of index tables were first introduced in Chapter 2. The detailed construction of index tables is given here. Further information for specific stream types such as MPEG and audio is given in the respective chapters.
Simple applications where index tables are required include:
Trick mode playback
Playout servers
Editing applications
Playback of OP3x files
The individual items within an index table are shown in Figure 2.16. These items will be discussed further during this chapter. In general, index tables can be split into segments and distributed through a file, or gathered together in a single location in the file; for example, in the header or the footer. There are various advanced features in the MXF index table design, such as slicing the index table to reduce its size when variable-length and fixed-length elements are mixed. Timing features, such as synchronization error prevention, are detailed along with slices in Chapter 9, where PosTable Offsets are discussed, as well as at the end of this chapter.
Index table requirements vary according to the nature of the essence type being indexed. Simple essence...