30 #include <sys/types.h>
34 #if defined(__cplusplus)
35 #define BURN_BEGIN_DECLS \
38 #define BURN_END_DECLS \
42 #define BURN_BEGIN_DECLS
43 #define BURN_END_DECLS
64 struct burn_write_opts;
71 #define BURN_CDXA 0x20
73 #define BURN_POS_END 100
76 #define BURN_MODE_BITS 127
81 #define BURN_MODE0 (1 << 0)
85 #define BURN_MODE_RAW (1 << 1)
89 #define BURN_MODE1 (1 << 2)
94 #define BURN_MODE2 (1 << 3)
98 #define BURN_FORM1 (1 << 4)
102 #define BURN_FORM2 (1 << 5)
110 #define BURN_AUDIO (1 << 6)
112 #define BURN_4CH (1 << 7)
114 #define BURN_COPY (1 << 8)
116 #define BURN_PREEMPHASIS (1 << 9)
118 #define BURN_SUBCODE_P16 (1 << 10)
120 #define BURN_SUBCODE_P96 (1 << 11)
122 #define BURN_SUBCODE_R96 (1 << 12)
130 #define BURN_SCMS (1 << 13)
803 int (*pacifier_func)(
void *handle,
int patience,
int elapsed),
964 char* adr,
int load);
970 #define BURN_DRIVE_WHITELIST_LEN 255
1007 unsigned int *n_drives);
1037 #define BURN_DRIVE_ADR_LEN 1024
1101 int target_no,
int lun_no,
char adr[]);
1134 char *dir_adr,
char **templ,
int num_templ,
int flag);
1145 int *channel_no,
int *target_no,
int *lun_no);
1283 int *start_lba,
int *
end_lba,
int flag);
1308 int m_lo,
int s_lo,
int f_lo,
int flag);
1337 unsigned int *disc_id,
char bar_code[9],
int *app_code,
1361 unsigned char **text_packs,
int *num_packs,
1379 int *alloc_blocks,
int *free_blocks,
int flag);
1399 char **book_name,
int *part_version,
int *num_layers,
1400 int *num_blocks,
int flag);
1421 int trackno,
int *lba,
int *nwa);
1492 struct burn_write_opts *o);
1558 char **product_id,
char **media_code1,
char **media_code2,
1559 char **book_type,
int flag);
1578 char *manuf_code,
char *media_code,
int flag);
1692 #define BURN_FORMAT_IS_UNFORMATTED 1
1693 #define BURN_FORMAT_IS_FORMATTED 2
1694 #define BURN_FORMAT_IS_UNKNOWN 3
1718 unsigned *bl_sas,
int *num_formats);
1736 int *type, off_t *size,
unsigned *tdp);
1747 void burn_disc_read(
struct burn_drive *drive,
const struct burn_read_opts *o);
1756 #define BURN_REASONS_LEN 4096
1791 void burn_disc_write(
struct burn_write_opts *o,
struct burn_disc *disc);
1813 int start,
int flag);
1963 char *path,
int fifo_size,
struct burn_source **fifo,
1964 unsigned char **text_packs,
int *num_packs,
int flag);
2053 int char_codes[8],
int copyrights[8],
2054 int languages[8],
int flag);
2063 #define BURN_CDTEXT_LANGUAGES_0X00 \
2064 "Unknown", "Albanian", "Breton", "Catalan", \
2065 "Croatian", "Welsh", "Czech", "Danish", \
2066 "German", "English", "Spanish", "Esperanto", \
2067 "Estonian", "Basque", "Faroese", "French", \
2068 "Frisian", "Irish", "Gaelic", "Galician", \
2069 "Icelandic", "Italian", "Lappish", "Latin", \
2070 "Latvian", "Luxembourgian", "Lithuanian", "Hungarian", \
2071 "Maltese", "Dutch", "Norwegian", "Occitan", \
2072 "Polish", "Portuguese", "Romanian", "Romansh", \
2073 "Serbian", "Slovak", "Slovenian", "Finnish", \
2074 "Swedish", "Turkish", "Flemish", "Wallon"
2084 #define BURN_CDTEXT_LANGUAGES_0X45 \
2085 "Zulu", "Vietnamese", "Uzbek", \
2086 "Urdu", "Ukrainian", "Thai", "Telugu", \
2087 "Tatar", "Tamil", "Tadzhik", "Swahili", \
2088 "Sranan Tongo", "Somali", "Sinhalese", "Shona", \
2089 "Serbo-croat", "Ruthenian", "Russian", "Quechua", \
2090 "Pushtu", "Punjabi", "Persian", "Papamiento", \
2091 "Oriya", "Nepali", "Ndebele", "Marathi", \
2092 "Moldavian", "Malaysian", "Malagasay", "Macedonian", \
2093 "Laotian", "Korean", "Khmer", "Kazakh", \
2094 "Kannada", "Japanese", "Indonesian", "Hindi", \
2095 "Hebrew", "Hausa", "Gurani", "Gujurati", \
2096 "Greek", "Georgian", "Fulani", "Dari", \
2097 "Churash", "Chinese", "Burmese", "Bulgarian", \
2098 "Bengali", "Bielorussian", "Bambora", "Azerbaijani", \
2099 "Assamese", "Armenian", "Arabic", "Amharic"
2109 #define BURN_CDTEXT_FILLER \
2130 int char_codes[8],
int copyrights[8],
2131 int block_languages[8],
int flag);
2182 int pack_type,
char *pack_type_name,
2183 unsigned char *payload,
int length,
int flag);
2192 #define BURN_CDTEXT_GENRE_LIST \
2193 "Not Used", "Not Defined", "Adult Contemporary", "Alternative Rock", \
2194 "Childrens Music", "Classical", "Contemporary Christian", "Country", \
2195 "Dance", "Easy Listening", "Erotic", "Folk", \
2196 "Gospel", "Hip Hop", "Jazz", "Latin", \
2197 "Musical", "New Age", "Opera", "Operetta", \
2198 "Pop Music", "Rap", "Reggae", "Rock Music", \
2199 "Rhythm & Blues", "Sound Effects", "Spoken Word", "World Music"
2203 #define BURN_CDTEXT_NUM_GENRES 28
2229 int pack_type,
char *pack_type_name,
2230 unsigned char **payload,
int *length,
int flag);
2264 char *path,
int block,
int flag);
2291 unsigned char **text_packs,
int *num_packs,
2334 int start_tno,
int track_count,
2335 char **result,
int *char_code,
int flag);
2368 int *num_packs,
int flag);
2417 int pack_type,
char *pack_type_name,
2418 unsigned char *payload,
int length,
int flag);
2440 int pack_type,
char *pack_type_name,
2441 unsigned char **payload,
int *length,
int flag);
2483 unsigned char year,
unsigned int serial);
2521 unsigned int relative_lba,
int flag);
2635 const char *subpath);
2743 off_t start, off_t size,
int flag);
2790 int chunksize,
int chunks,
int flag);
2812 int *free_bytes,
char **status_text);
2830 int *total_min_fill,
int *interval_min_fill,
2831 int *put_counter,
int *get_counter,
2832 int *empty_counter,
int *full_counter);
2912 off_t *read_bytes, off_t *written_bytes);
2958 int min_usec,
int max_usec,
int timeout_sec,
2959 int min_percent,
int max_percent);
3000 struct burn_write_opts *opts,
struct burn_disc *disc,
3046 int underrun_proof);
3064 unsigned char mediacatalog[13]);
3073 int has_mediacatalog);
3134 unsigned char *text_packs,
3135 int num_packs,
int flag);
3254 int subcodes_audio);
3268 int hardware_error_recovery);
3275 int report_recovered_errors);
3282 int transfer_damaged_blocks);
3289 unsigned char hardware_error_retries);
3306 int profiles[64],
char is_current[64]);
3594 #define burn_header_version_major 1
3595 #define burn_header_version_minor 3
3596 #define burn_header_version_micro 6
3670 char *print_severity,
char *print_id);
3674 #define BURN_MSGS_MESSAGE_LEN 4096
3694 int *error_code,
char msg_text[],
int *os_errno,
3717 char severity[],
struct burn_drive *d);
3882 char *data, off_t data_count,
int flag);
3938 char data[], off_t data_size, off_t *data_count,
int flag);
3982 char data[], off_t data_size, off_t *data_count,
int flag);
4004 int start_sector,
int sector_count,
4005 char *target_path,
int flag);
4024 struct burn_track *track,
4025 char *target_path,
int flag);
4112 #define LIBDAX_AUDIOXTR_STRLEN 4096
4120 struct libdax_audioxtr;
4151 char **fmt,
char **fmt_info,
4152 int *num_channels,
int *sample_rate,
4153 int *bits_per_sample,
int *msb_first,
int flag);
4181 char buffer[],
int buffer_size,
int flag);
4239 #define Libburn_dummy_probe_write_modeS 1
4245 #define Libburn_disc_with_incomplete_sessioN 1
4253 #ifdef Libburn_develop_quality_scaN
4257 int burn_nec_optiarc_rep_err_rate(
struct burn_drive *d,
4258 int start_lba,
int rate_period,
int flag);