3 #define IFF_ID_FORM 0x464f524d /* "FORM" */
4 #define IFF_ID_AIFF 0x41494646 /* "AIFF" */
5 #define IFF_ID_COMM 0x434f4d4d /* "COMM" */
6 #define IFF_ID_SSND 0x53534e44 /* "SSND" */
7 #define IFF_ID_MPEG 0x4d504547 /* "MPEG" */
9 #define AIFF_FORM_HEADER_SIZE 12
10 #define AIFF_SSND_HEADER_SIZE 16
13 typedef struct blockAlign_struct
16 unsigned long blockSize
;
20 typedef struct IFF_AIFF_struct
23 unsigned long numSampleFrames
;
26 unsigned long sampleType
;
31 void parse_input_file (FILE *musicin
, char *, frame_header
*header
, unsigned long *num_samples
);
32 void aiff_check (char *file_name
, IFF_AIFF
* pcm_aiff_data
, int *version
);
34 int aiff_read_headers (FILE *, IFF_AIFF
*);
35 int aiff_seek_to_sound_data (FILE *);
36 enum byte_order
DetermineByteOrder (void);
37 void SwapBytesInWords (short *loc
, int words
);
38 unsigned long read_samples (FILE *, short[2304], unsigned long,
40 unsigned long get_audio (FILE *, short[2][1152], unsigned long,
41 int, frame_header
*header
);