New option -stream_recording

This commit is contained in:
2008-05-27 20:14:51 +00:00
parent 106ab1fb0c
commit b9f01ef512
7 changed files with 73 additions and 24 deletions

View File

@ -2790,6 +2790,7 @@ int Xorriso_new(struct XorrisO ** xorriso,char *progname, int flag)
m->speed= 0;
m->fs= 4*512; /* 4 MiB */
m->padding= 300*1024;
m->do_stream_recording= 0;
m->keep_boot_image= 0;
m->patch_isolinux_image= 0;
m->allow_graft_points= 0;
@ -4066,6 +4067,12 @@ int Xorriso_status(struct XorrisO *xorriso, char *filter, FILE *fp, int flag)
if(!(is_default && no_defaults))
Xorriso_status_result(xorriso,filter,fp,flag&2);
is_default= (xorriso->do_stream_recording==0);
sprintf(line,"-stream_recording %s\n",
xorriso->do_stream_recording ? "on" : "off");
if(!(is_default && no_defaults))
Xorriso_status_result(xorriso,filter,fp,flag&2);
is_default= (xorriso->fs==4*512);
if((xorriso->fs/512)*512==xorriso->fs)
sprintf(line,"-fs %dm\n", xorriso->fs/512);
@ -9612,6 +9619,8 @@ int Xorriso_option_help(struct XorrisO *xorriso, int flag)
" If \"on\" simulate burning. Refuse if media cannot simulate.",
" -speed number[\"k\"|\"m\"|\"[x]CD\"|\"[x]DVD\"]",
" Set the burn speed. Default is 0 = maximum speed.",
" -stream_recording \"on\"|\"off\"",
" Try to circumvent slow checkread on DVD-RAM and BD-RE.",
" -fs number[\"k\"|\"m\"]",
" Set the size of the fifo buffer. (Default is 4m)",
" -eject \"in\"|\"out\"|\"all\"",
@ -11137,6 +11146,18 @@ int Xorriso_option_status_history_max(struct XorrisO *xorriso, int num,
}
/* Option -stream_recording */
int Xorriso_option_stream_recording(struct XorrisO *xorriso, char *mode,
int flag)
{
if(strcmp(mode,"on")==0 || mode[0]==0)
xorriso->do_stream_recording= 1;
else
xorriso->do_stream_recording= 0;
return(1);
}
/* Option -tell_media_space */
int Xorriso_option_tell_media_space(struct XorrisO *xorriso, int flag)
{
@ -11501,7 +11522,7 @@ int Xorriso_count_args(struct XorrisO *xorriso, int argc, char **argv,
"padding","path_list","pathspecs","pkt_output","print","prompt",
"prog","publisher","reassure","report_about","rom_toc_scan",
"session_log","speed","split_size","status","status_history_max",
"temp_mem_limit","uid","volid","use_readline",
"stream_recording","temp_mem_limit","uid","volid","use_readline",
""
};
static char arg2_commands[][40]= {
@ -12028,6 +12049,10 @@ next_command:;
sscanf(arg1,"%d",&num1);
ret= Xorriso_option_status_history_max(xorriso, num1, 0);
} else if(strcmp(cmd,"stream_recording")==0) {
(*idx)++;
ret= Xorriso_option_stream_recording(xorriso, arg1, 0);
} else if(strcmp(cmd,"tell_media_space")==0) {
Xorriso_option_tell_media_space(xorriso, 0);