diff -ruN burn-0.2.0-beta5/chain-dvd.c burn-0.2.0-beta5.patched//chain-dvd.c --- burn-0.2.0-beta5/chain-dvd.c 2010-12-03 19:09:56.000000000 +0100 +++ burn-0.2.0-beta5.patched//chain-dvd.c 2011-01-13 18:30:01.106999991 +0100 @@ -445,20 +445,11 @@ case storemode_createburn: { - boost::format fifofmt( "%s/burnfifo" ); - fifofmt % get_paths().temp; - make_fifo( fifofmt.str() ); - - shellprocess* pipe = new shellprocess( "pipe", shellescape( "vdrburn-dvd.sh" ) + "pipeiso" ); - pipe->put_environment("DVDAUTHOR_PATH", dvdauthor_xml::get_author_path(get_job())); - pipe->put_environment("ISO_FILE", get_job().get_iso_path()); - pipe->put_environment("ISO_PIPE", fifofmt.str()); - pipe->put_environment("DISC_ID", get_job().get_volume_id()); - add_process(pipe); - shellprocess* burn = new shellprocess( "burn", shellescape( "vdrburn-dvd.sh" ) + "burniso" ); + burn->put_environment("DVDAUTHOR_PATH", dvdauthor_xml::get_author_path(get_job())); + burn->put_environment("ISO_FILE", get_job().get_iso_path()); + burn->put_environment("DISC_ID", get_job().get_volume_id()); burn->put_environment("DVD_DEVICE", BurnParameters.DvdDevice); - burn->put_environment("ISO_PIPE", fifofmt.str()); burn->put_environment("BURN_SPEED", global_setup().BurnSpeed); add_process(burn); } diff -ruN burn-0.2.0-beta5/vdrburn-dvd.sh burn-0.2.0-beta5.patched//vdrburn-dvd.sh --- burn-0.2.0-beta5/vdrburn-dvd.sh 2010-12-11 17:59:00.000000000 +0100 +++ burn-0.2.0-beta5.patched//vdrburn-dvd.sh 2011-01-14 16:03:10.491825461 +0100 @@ -62,7 +62,7 @@ if [ -z $JAVA_HOME ]; then - export JAVA_HOME=/opt/j2re1.4.2 + export JAVA_HOME=/usr/lib/java fi if [ -z $PROJECTX_HOME ]; then @@ -274,13 +268,14 @@ if [ $BURN_SPEED -gt 0 ]; then SPEED="-speed=$BURN_SPEED" fi - growisofs -use-the-force-luke=tty $SPEED -dvd-compat -Z "$DVD_DEVICE" \ + if cdrecord -version 2>&- | grep ProDVD > /dev/null; then + mkisofs -V "$DISC_ID" -dvd-video "$DVDAUTHOR_PATH" \ + | cdrecord "dev=$DVD_DEVICE" driveropts=burnfree \ + tsize=$(mkisofs -print-size "$DVDAUTHOR_PATH")s $SPEED - + else + growisofs -use-the-force-luke=tty $SPEED -dvd-compat -Z "$DVD_DEVICE" \ -V "$DISC_ID" -dvd-video "$DVDAUTHOR_PATH" - ;; - - pipeiso) - mkisofs -V "$DISC_ID" -dvd-video "$DVDAUTHOR_PATH" \ - | tee "$ISO_FILE" > "$ISO_PIPE" + fi ;; burniso) @@ -288,8 +283,13 @@ if [ $BURN_SPEED -gt 0 ]; then SPEED="-speed=$BURN_SPEED" fi - growisofs -use-the-force-luke=tty $SPEED -dvd-compat \ - -Z "$DVD_DEVICE=$ISO_PIPE" + $0 mkiso + if cdrecord -version 2>&- | grep ProDVD > /dev/null; then + cdrecord -v "dev=$DVD_DEVICE" driveropts=burnfree $SPEED "$ISO_FILE" + else + growisofs -use-the-force-luke=tty $SPEED -dvd-compat \ + -Z "$DVD_DEVICE=$ISO_FILE" + fi ;; *)