[Contents] [Index] [Help] [Retrace] [Browse <] [Browse >]

The format for the data within a Marker Chunk is shown below.

    #define     MarkerID        'MARK'  /* ckID for Marker Chunk */

    typedef  struct {
        ID                              ckID;
        long                            ckSize;

        unsigned short          numMarkers;
        Marker                  Markers [];
    } MarkerChunk;

The ckID is always 'MARK'.  The ckSize is the size of the data portion of
the chunk in bytes.  It does not include the 8 bytes used by ckID and
ckSize.

The numMarkers field is the number of markers in the Marker Chunk.  If
numMarkers is non-zero, it is followed by the markers themselves.  Because
all fields in a marker are an even number of bytes, the length of any
marker will always be even.  Thus, markers are packed together with no
unused bytes between them.  The markers need not be ordered in any
particular manner.

The Marker Chunk is optional.  No more than one Marker Chunk can appear in
a FORM AIFF.