MPEG-1 Audiodaten bestehen aus einer Folge von frames, die eine feste Anzahl von Abtastwerten enthalten. Bei Level I sind dies 384, bei Level II und III 1152 Abtastwerte. Ein frame besteht aus den folgenden Teilen:
typedef struct { header h; unsigned short error_check; /* nur wenn h.protection_bit == 0 */ audio_data au; ancillary_data an; } frame;Der header gibt allgemeine Angaben über den Inhalt des frame gefolgt von einer optionalen Prüfsumme über den header und einen Teil der Audiodaten. ancillary_data kann frei verwendbare Bits enthalten.