New API calls for composing CD-TEXT

This commit is contained in:
2011-12-12 09:26:41 +00:00
parent 2063dc2ca7
commit 620871c91d
11 changed files with 1109 additions and 52 deletions

View File

@ -16,6 +16,22 @@ struct isrc
unsigned int serial; /* must be 0-99999 */
};
/* ts B11206 */
#define Libburn_pack_type_basE 0x80
#define Libburn_pack_num_typeS 0x10
#define Libburn_pack_type_nameS \
"TITLE", "PERFORMER", "SONGWRITER", "COMPOSER", \
"ARRANGER", "MESSAGE", "DISCID", "GENRE", \
"TOC", "TOC2", "", "", \
"", "CLOSED", "UPC_ISRC", "BLOCKSIZE"
struct burn_cdtext
{
unsigned char *(payload[Libburn_pack_num_typeS]);
int length[Libburn_pack_num_typeS];
int flags; /* bit0 - bit15= double byte characters */
};
struct burn_track
{
int refcnt;
@ -82,6 +98,9 @@ struct burn_track
/* ts A90910 : conversions from CD XA prepared input */
int cdxa_conversion; /* 0=none, 1=remove -xa1 headers (first 8 bytes)*/
/* ts B11206 */
struct burn_cdtext *cdtext[8];
};
struct burn_session
@ -97,6 +116,13 @@ struct burn_session
int tracks;
struct burn_track **track;
int refcnt;
/* ts B11206 */
struct burn_cdtext *cdtext[8];
unsigned char cdtext_char_code[8];
unsigned char cdtext_copyright[8];
unsigned char cdtext_language[8];
};
struct burn_disc
@ -131,4 +157,9 @@ off_t burn_track_get_default_size(struct burn_track *t);
int burn_disc_cd_toc_extensions(struct burn_disc *d, int flag);
/* ts B11206 */
struct burn_cdtext *burn_cdtext_create(void);
void burn_cdtext_free(struct burn_cdtext **cdtext);
#endif /* BURN__STRUCTURE_H */