1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
/*C
(c) 2003 bl0rg crew
**/
#ifndef MP3CUE_H__
#define MP3CUE_H__
/*M
\emph{Arbitrary maximal length for strings in a CUE file.}
If you don't like it, change it.
**/
#define MP3CUE_MAX_STRING_LENGTH 64
/*M
\emph{CUE index structure.}
This is reverse engineered and by no means correct. I also don't
know what the correct name for ``centiseconds'' is.
**/
typedef struct mp3cue_index_s {
unsigned int minutes;
unsigned int seconds;
unsigned int centiseconds;
} mp3cue_index_t;
/*M
\emph{CUE track type.}
Reverse engineered.
**/
typedef enum mp3cue_track_type_e {
mp3cue_audio = 0
} mp3cue_track_type_t;
/*M
\emph{CUE track structure.}
Reverse engineered.
**/
typedef struct mp3cue_track_s {
mp3cue_track_type_t type;
int number;
char title[MP3CUE_MAX_STRING_LENGTH + 1];
char performer[MP3CUE_MAX_STRING_LENGTH + 1];
mp3cue_index_t index;
} mp3cue_track_t;
/*M
\emph{CUE file structure.}
Reverse engineered.
**/
typedef struct mp3cue_file_s {
char performer[MP3CUE_MAX_STRING_LENGTH + 1];
char title[MP3CUE_MAX_STRING_LENGTH + 1];
unsigned int track_number;
unsigned int max_track_number;
mp3cue_track_t *tracks;
} mp3cue_file_t;
#define MP3CUE_DEFAULT_TRACK_NUMBER 20
#endif /* MP3CUE_H__ */
|