New option --obs_pad

This commit is contained in:
Thomas Schmitt 2012-04-08 11:27:54 +00:00
parent 47de5aa301
commit 26131dae1f
3 changed files with 22 additions and 5 deletions

View File

@ -2,7 +2,7 @@
.\" First parameter, NAME, should be all caps
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
.\" other parameters are allowed: see man(7), man(1)
.TH CDRSKIN 1 "Jan 12, 2012"
.TH CDRSKIN 1 "Version 1.2.3, Jan 12, 2012"
.\" Please adjust this date whenever revising the manpage.
.\"
.\" Some roff macros, for reference:
@ -1051,9 +1051,10 @@ overwriteable DVD-RW it is 32k.
.BI dvd_obs= default|32k|64k
Linux specific:
Set the number of bytes to be transmitted with each write operation to DVD
or BD media. Tracks get padded up to the next multiple of this write
size. A number of 64 KB may improve throughput with bus systems which
show latency problems. The default depends on media type, option
or BD media. With most write types, tracks get padded up to the next multiple
of this write size (see option obs_pad=).
A number of 64 KB may improve throughput with systems
which show latency problems. The default depends on media type, option
stream_recording=, and on compile time options.
.TP
.BI fallback_program= command
@ -1477,6 +1478,15 @@ Such opening is needed for Bus,Target,Lun addresses unless option
addresses which are not listed with cdrskin --devices but nevertheless point
to a usable drive. (Like /dev/sg0 using the same SCSI address as /dev/sr0.)
.TP
.BI \--obs_pad
Pad the data of last write operation of a DVD-R[W] DAO session or
stdio: pseudo-drive up to the full size of an output chunk.
This padding has to be applied automatically to the other DVD and BD media
types, where it causes e.g. ISO images to have trailing unclaimed blocks.
.br
There are reports that DAO sessions of a size that is not a multiple of 16
blocks abort on some Linux kernels and/or DVD drives.
.TP
.BI \--old_pseudo_scsi_adr
Linux specific:
Use and report literal Bus,Target,Lun addresses rather than real SCSI and

View File

@ -2865,6 +2865,7 @@ set_dev:;
printf(" --no_convert_fs_adr only literal translations of dev=\n");
printf(
" --no_rc as first argument: do not read startup files\n");
printf(" --obs_pad pad DVD DAO to full 16 or 32 blocks\n");
printf(" --old_pseudo_scsi_adr use and report literal Bus,Target,Lun\n");
printf(" rather than real SCSI and pseudo ATA.\n");
printf(" --prodvd_cli_compatible react on some DVD types more like\n");
@ -3320,6 +3321,7 @@ struct CdrskiN {
int force_is_set;
int stream_recording_is_set; /* see burn_write_opts_set_stream_recording() */
int dvd_obs; /* DVD write chunk size: 0, 32k or 64k */
int obs_pad; /* Whether to force obs end padding */
int stdio_sync; /* stdio fsync interval: -1, 0, >=32 */
int single_track;
int prodvd_cli_compatible;
@ -3571,6 +3573,7 @@ int Cdrskin_new(struct CdrskiN **skin, struct CdrpreskiN *preskin, int flag)
o->force_is_set= 0;
o->stream_recording_is_set= 0;
o->dvd_obs= 0;
o->obs_pad= 0;
o->stdio_sync= 0;
o->single_track= 0;
o->prodvd_cli_compatible= 0;
@ -6981,6 +6984,7 @@ burn_failed:;
else
#endif
burn_write_opts_set_dvd_obs(o, skin->dvd_obs);
burn_write_opts_set_obs_pad(o, skin->obs_pad);
burn_write_opts_set_stdio_fsync(o, skin->stdio_sync);
if(skin->dummy_mode) {
@ -8259,6 +8263,9 @@ msifile_equals:;
} else if(strcmp(argv[i],"-nopreemp")==0) {
skin->track_modemods&= ~BURN_PREEMPHASIS;
} else if(strcmp(argv[i],"--obs_pad")==0) {
skin->obs_pad= 1;
} else if(strcmp(argv[i],"--old_pseudo_scsi_adr")==0) {
/* is handled in Cdrpreskin_setup() */;

View File

@ -1 +1 @@
#define Cdrskin_timestamP "2012.04.08.112703"
#define Cdrskin_timestamP "2012.04.08.112825"