New cdrskin option cd_start_tno=
This commit is contained in:
parent
4d70043e78
commit
a2493b97e4
@ -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 06, 2012"
|
||||
.TH CDRSKIN 1 "Jan 08, 2012"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
@ -516,6 +516,8 @@ Non-CDRWIN commands ARRANGER, COMPOSER, MESSAGE are supported.
|
||||
Cue sheet file commands CATALOG and ISRC may be overridden by option mcn=
|
||||
and by input_sheet_v07t= purpose specifiers "UPC / EAN" and "ISRC".
|
||||
This does not affect their appearance in CD-TEXT, but only on Q sub-channel.
|
||||
.br
|
||||
The track numbers may be overridden by option cd_start_tno=.
|
||||
.TP
|
||||
.BI \-dao
|
||||
Alias for option -sao. Write CD in Session at Once mode
|
||||
@ -982,6 +984,16 @@ taken as plain block number with block size 2048 byte.
|
||||
(E.g ...=1000 or ...=1000s means block 1000, ...=1m means block
|
||||
512, ...=4096b means block number 2)
|
||||
.TP
|
||||
.BI cd_start_tno= number
|
||||
Set the number which shall be written as CD track number with the first
|
||||
track of the session. The following tracks will then get written with
|
||||
consequtive CD track numbers. The resulting number of the last track
|
||||
must not exceed 99. The lowest possible start number is 1, which is also
|
||||
the default.
|
||||
.br
|
||||
This setting applies only to CD SAO writing. It overrides the track number
|
||||
settings caused by options cuefile= or input_sheet_v07t=.
|
||||
.TP
|
||||
.BI \--demand_a_drive
|
||||
Exit with a nonzero value if no drive can be found during a bus scan.
|
||||
.TP
|
||||
@ -1212,6 +1224,8 @@ used as CD-TEXT language blocks 1 to 7.
|
||||
.br
|
||||
This option will get into effect only if no option textfile= is given.
|
||||
The write mode must be SAO on CD. All tracks must be -audio tracks.
|
||||
.br
|
||||
The track numbers may be overridden by option cd_start_tno=.
|
||||
.TP
|
||||
.BI \--list_formats
|
||||
List the available format descriptors as reported by the drive for the
|
||||
|
@ -2783,6 +2783,8 @@ set_dev:;
|
||||
" --any_track allow source_addresses to match '^-.' or '='\n");
|
||||
printf(
|
||||
" assert_write_lba=<lba> abort if not next write address == lba\n");
|
||||
fprintf(stderr,
|
||||
" cd_start_tno=<number> set number of first track in CD SAO session\n");
|
||||
fprintf(stderr,
|
||||
" --cdtext_dummy show CD-TEXT pack array instead of writing CD\n");
|
||||
fprintf(stderr,
|
||||
@ -3426,6 +3428,9 @@ struct CdrskiN {
|
||||
/** a guess about what track might be processing right now */
|
||||
int supposed_track_idx;
|
||||
|
||||
/** The number of the first track in a CD SAO session */
|
||||
int cd_start_tno;
|
||||
|
||||
int fifo_enabled;
|
||||
/** Optional fifo between input fd and libburn. It uses a pipe(2) to transfer
|
||||
data to libburn. This fifo may be actually the start of a chain of fifos
|
||||
@ -3588,6 +3593,7 @@ int Cdrskin_new(struct CdrskiN **skin, struct CdrpreskiN *preskin, int flag)
|
||||
o->tracklist[i]= NULL;
|
||||
o->track_counter= 0;
|
||||
o->supposed_track_idx= -1;
|
||||
o->cd_start_tno= 0;
|
||||
o->fifo_enabled= 1;
|
||||
o->fifo= NULL;
|
||||
o->fifo_outlet_fd= -1;
|
||||
@ -6902,6 +6908,11 @@ burn_failed:;
|
||||
burn_write_opts_set_mediacatalog(o, (unsigned char *) skin->mcn);
|
||||
burn_write_opts_set_has_mediacatalog(o, 1);
|
||||
}
|
||||
if(skin->cd_start_tno >= 1 && skin->cd_start_tno <= 99) {
|
||||
ret= burn_session_set_start_tno(session, skin->cd_start_tno, 0);
|
||||
if(ret <= 0)
|
||||
goto burn_failed;
|
||||
}
|
||||
ret= Cdrskin_activate_write_mode(skin,o,disc,0);
|
||||
if(ret<=0)
|
||||
goto burn_failed;
|
||||
@ -7381,7 +7392,7 @@ sorry_failed_to_eject:;
|
||||
*/
|
||||
int Cdrskin_setup(struct CdrskiN *skin, int argc, char **argv, int flag)
|
||||
{
|
||||
int i,k,l,ret, idx= -1;
|
||||
int i,k,l,ret, idx= -1, cd_start_tno;
|
||||
double value,grab_and_wait_value= -1.0, num;
|
||||
char *cpt,*value_pt,adr[Cdrskin_adrleN],*blank_mode= "";
|
||||
struct stat stbuf;
|
||||
@ -7631,6 +7642,21 @@ unsupported_blank_option:;
|
||||
} else if(strcmp(argv[i],"--bragg_with_audio")==0) {
|
||||
/* OBSOLETE 0.2.3 : was handled in Cdrpreskin_setup() */;
|
||||
|
||||
} else if(strncmp(argv[i], "-cd_start_tno", 14)==0) {
|
||||
value_pt= argv[i] + 14;
|
||||
goto set_cd_start_tno;
|
||||
} else if(strncmp(argv[i], "cd_start_tno=", 13) ==0 ) {
|
||||
value_pt= argv[i] + 13;
|
||||
set_cd_start_tno:;
|
||||
cd_start_tno= -1;
|
||||
sscanf(value_pt, "%d", &cd_start_tno);
|
||||
if(cd_start_tno < 1 || cd_start_tno > 99) {
|
||||
fprintf(stderr,
|
||||
"cdrskin: FATAL : cd_start_tno= gives a number outside [1 ... 99]\n");
|
||||
return(0);
|
||||
}
|
||||
skin->cd_start_tno= cd_start_tno;
|
||||
|
||||
} else if(strcmp(argv[i],"--cdtext_dummy")==0) {
|
||||
skin->cdtext_test= 2;
|
||||
|
||||
|
@ -1 +1 @@
|
||||
#define Cdrskin_timestamP "2012.01.08.154822"
|
||||
#define Cdrskin_timestamP "2012.01.08.191443"
|
||||
|
Loading…
Reference in New Issue
Block a user