Reporting amount of non-data with -toc media summary
This commit is contained in:
parent
41c9e5669e
commit
115f3bc5dd
@ -1 +1 @@
|
||||
#define Xorriso_timestamP "2008.04.03.204051"
|
||||
#define Xorriso_timestamP "2008.04.05.112055"
|
||||
|
@ -2193,6 +2193,7 @@ int Xorriso_toc(struct XorrisO *xorriso, int flag)
|
||||
int track_count= 0, session_no, track_no, profile_no= -1;
|
||||
int last_track_start= 0, last_track_size= -1, num_data= 0, is_data= 0;
|
||||
int is_inout_drive= 0, drive_role;
|
||||
int num_payload= 0, num_wasted= 0, num_nondata= 0;
|
||||
char profile_name[80],*respt,*devadr;
|
||||
struct burn_disc *disc= NULL;
|
||||
struct burn_session **sessions;
|
||||
@ -2286,7 +2287,7 @@ int Xorriso_toc(struct XorrisO *xorriso, int flag)
|
||||
sprintf(respt+strlen(respt), "leadout lba: %9d\n", nwa);
|
||||
if(!(flag&1))
|
||||
Xorriso_result(xorriso,0);
|
||||
num_data= last_track_size= nwa;
|
||||
num_payload= num_data= last_track_size= nwa;
|
||||
num_sessions= 1;
|
||||
} else {
|
||||
sessions= burn_disc_get_sessions(disc, &num_sessions);
|
||||
@ -2311,6 +2312,8 @@ int Xorriso_toc(struct XorrisO *xorriso, int flag)
|
||||
track_count, ((toc_entry.control&7)<4?"audio":"data "), lba);
|
||||
if(!(flag&1))
|
||||
Xorriso_result(xorriso,0);
|
||||
if(track_no>0)
|
||||
num_payload+= lba - last_track_start;
|
||||
last_track_start= lba;
|
||||
if((toc_entry.control&7)>=4) /* data track */
|
||||
is_data= 1;
|
||||
@ -2328,15 +2331,23 @@ int Xorriso_toc(struct XorrisO *xorriso, int flag)
|
||||
if(!(flag&1))
|
||||
Xorriso_result(xorriso,0);
|
||||
last_track_size= lba - last_track_start;
|
||||
num_payload+= last_track_size;
|
||||
if(is_data)
|
||||
num_data+= last_track_size;
|
||||
}
|
||||
}
|
||||
if(xorriso->request_to_abort)
|
||||
return(1);
|
||||
num_wasted= lba - num_payload;
|
||||
num_nondata= lba - num_data;
|
||||
Sfile_scale(((double) num_data) * 2048.0, mem_text,5,1e4,1);
|
||||
sprintf(respt, "Media summary: %d session%s, %d data blocks, %s\n",
|
||||
sprintf(respt, "Media summary: %d session%s, %d data blocks, %s",
|
||||
num_sessions, (num_sessions==1 ? "" : "s"), num_data, mem_text);
|
||||
if(num_nondata>0) {
|
||||
Sfile_scale(((double) num_nondata) * 2048.0, mem_text,5,1e4,1);
|
||||
sprintf(respt+strlen(respt), ", %s non-data", mem_text);
|
||||
}
|
||||
sprintf(respt+strlen(respt), "\n");
|
||||
Xorriso_result(xorriso,0);
|
||||
|
||||
if (s == BURN_DISC_APPENDABLE && nwa!=0) {
|
||||
|
Loading…
Reference in New Issue
Block a user