Added fifo_size to struct isoburn_source_opts
This commit is contained in:
parent
3c92180cf4
commit
48a8d1e157
@ -238,7 +238,7 @@ int isoburn_prepare_disc_aux(struct burn_drive *d, struct burn_disc **disc,
|
|||||||
struct isoburn *o;
|
struct isoburn *o;
|
||||||
struct ecma119_source_opts wopts;
|
struct ecma119_source_opts wopts;
|
||||||
enum burn_disc_status state;
|
enum burn_disc_status state;
|
||||||
int ret;
|
int ret, chunks;
|
||||||
|
|
||||||
ret= isoburn_find_emulator(&o, d, 0);
|
ret= isoburn_find_emulator(&o, d, 0);
|
||||||
if(ret<0 || o==NULL)
|
if(ret<0 || o==NULL)
|
||||||
@ -295,7 +295,13 @@ int isoburn_prepare_disc_aux(struct burn_drive *d, struct burn_disc **disc,
|
|||||||
|
|
||||||
/* TODO check return values for failure. propertly clean-up on error */
|
/* TODO check return values for failure. propertly clean-up on error */
|
||||||
|
|
||||||
o->fifo = burn_fifo_source_new(wsrc, 2048, 2000, 0);
|
chunks= 32;
|
||||||
|
if(opts->fifo_size >= 64*1024 && opts->fifo_size <= 1024.0 * 1024.0 * 1024.0){
|
||||||
|
chunks= opts->fifo_size/2048;
|
||||||
|
if(chunks*2048 < opts->fifo_size)
|
||||||
|
chunks++;
|
||||||
|
}
|
||||||
|
o->fifo = burn_fifo_source_new(wsrc, 2048, chunks, 0);
|
||||||
burn_source_free(wsrc);
|
burn_source_free(wsrc);
|
||||||
if (o->fifo == NULL) {
|
if (o->fifo == NULL) {
|
||||||
fprintf(stderr, "Cannot attach fifo\n");
|
fprintf(stderr, "Cannot attach fifo\n");
|
||||||
|
@ -107,9 +107,12 @@ struct isoburn_read_opts {
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Options for image generation.
|
* Options for image generation by libisofs and image transport to libburn.
|
||||||
*/
|
*/
|
||||||
struct isoburn_source_opts {
|
struct isoburn_source_opts {
|
||||||
|
|
||||||
|
/* Options for image generation */
|
||||||
|
|
||||||
int level; /**< ISO level to write at. */
|
int level; /**< ISO level to write at. */
|
||||||
int flags; /**< Which extensions to support. */
|
int flags; /**< Which extensions to support. */
|
||||||
int relaxed_constraints; /**< see ecma119_relaxed_constraints_flag */
|
int relaxed_constraints; /**< see ecma119_relaxed_constraints_flag */
|
||||||
@ -168,6 +171,19 @@ struct isoburn_source_opts {
|
|||||||
uid_t uid; /**< uid to use when replace_uid is set. */
|
uid_t uid; /**< uid to use when replace_uid is set. */
|
||||||
char *input_charset; /**< NULL to use default charset */
|
char *input_charset; /**< NULL to use default charset */
|
||||||
char *ouput_charset; /**< NULL to use default charset */
|
char *ouput_charset; /**< NULL to use default charset */
|
||||||
|
|
||||||
|
|
||||||
|
/* Options for image transport */
|
||||||
|
|
||||||
|
/** The number of bytes to be used for the fifo which decouples libisofs
|
||||||
|
and libburn for better throughput and for reducing the risk of
|
||||||
|
interrupting signals hitting the libburn thread which operates the
|
||||||
|
MMC drive.
|
||||||
|
The size will be rounded up to the next full 2048.
|
||||||
|
Minimum is 64kiB, maximum is 1 GiB (but that is too much anyway).
|
||||||
|
*/
|
||||||
|
int fifo_size;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Load the ISO filesystem directory tree from the media in the given drive.
|
/** Load the ISO filesystem directory tree from the media in the given drive.
|
||||||
|
@ -1 +1 @@
|
|||||||
#define Xorriso_timestamP "2007.10.22.211928"
|
#define Xorriso_timestamP "2007.10.23.122349"
|
||||||
|
Loading…
Reference in New Issue
Block a user