[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How to burn DVD to multiple drives?



Hi,

> Can anyone tell me how to burn a single DVD ISO to multiple DVD-burners 
> on my system at the same time? This would result in multiple identical 
> discs.

Interesting wish. I am sure there are lots of ways. I am not sure wether
my contemporary low-end PC would show sufficient performance with that.

My following proposals do not care for the "grow" aspect of growisofs.
They rather overwrite the previous DVD content.


You could use an image file on disk :

  mkisofs ... >bufferfile
  xterm -e 'growisofs ... -Z /dev/sr0=bufferfile ; echo done ; sleep 86400' &
  xterm -e 'growisofs ... -Z /dev/sr1=bufferfile ; echo done ; sleep 86400' &

whereas it would probably be wise to run the growisofs processes one after
the other rather than to start them simultanously in xterms, as proposed
above
  growisofs ... -Z /dev/sr0=bufferfile
  growisofs ... -Z /dev/sr1=bufferfile


You could write a multiplexer which gets its input from one
instance of mkisofs and pipes it into several instances of
growisofs. 
In C language these instances of growisofs would be started by calls like 
  fp0= popen("growisofs ... -Z /dev/sr0=/proc/self/fd/0","w");
  fd0= fileno(fp0);
  fp1= popen("growisofs ... -Z /dev/sr1=/proc/self/fd/0","w");
  fd1= fileno(fp1);
(see man 3 popen) 
By call  select()  (man 2 select) you may find out wether  fd0  or  fd1
is ready to accept data input. If so, you use  write()  to send. (man 2 write)
You will need a fat buffer or burnproof writers if the writers do not perform
at the very same speed.


bash offers a trick called "Process Substitution" which could
act as such a multiplexer.
On Aug 25, Robert Schiele wrote regarding a related topic :
> On bash you can do simply:
> $ mkisofs ... | tee >(md5sum) | cdrecord

Translated to your wish that would probably be :
  mkisofs ... | tee >(growisofs ... -Z /dev/sr0=/proc/self/fd/0) \
              | tee >(growisofs ... -Z /dev/sr1=/proc/self/fd/0) \
              ... \
              | growisofs ... -Z /dev/sr9=/proc/self/fd/0


Have a nice day :)

Thomas



Reply to: