J'ai essayé de mon côté avec pipebuf2 :
mkisofs -r -J movies/ | pipebuf2 -b 32 -i 1 | growisofs -dvd-compat -speed=1 -use-the-force-luke=dummy -use-the-force-luke=dao -Z /dev/hdc=/dev/fd/0
Le buffer de pipebuf2 était toujours plein, mais la LED clignotait toujours aussi vite. Idem avec -b 64. Après j'ai essayé de faire mkisofs à l'avance.
Même résultat. Après je me suis plongé dans le code de growisofs. J'ai commencé à rajouter un buffer. Au bout d'un moment, j'ai eu l'idée d'une expérience: j'ai remplacé la boucle d'écriture principale
while ((n=read (infd,the_buffer+off,DVD_BLOCK-off)) > 0)
par
while (1)
ce qui fait que le programme ne lit jamais de données en entrée, et grave le même bloc de 32k encore et encore. Cela m'a permis de tester si c'était la lecture de l'iso par le pipe qui ralentissait le reste.
Hélas, le résultat était toujours aussi mauvais. Ce n'est donc pas un problème de buffer. La seule possibilité que je vois encore pour s'en sortir avec growisofs consisterait à tenter d'optimiser la fonction qui se charge de l'écriture (pwrite64_method). Celle-ci ne travaille qu'avec des blocs de 32k. Est-ce un choix de l'auteur ou une contrainte technique ? Dans le premier cas, il y a peut-être moyen d'augmenter cette taille, en espérant que cela améliore les performances. A creuser, mais sans trop d'espoir...
Pour ce qui est du patch dvd, il est aussi présent dans Debian, sous la forme d'un cdrtools patché, modifié et repackagé sous le nom de dvdrtools. La commande s'appelle dvdrecord ici au lieu de cdrecord-dvd.
Je n'arrive pas du tout à la faire marcher chez moi. Même un -scanbus échoue et retourne:
dvdrecord: No such file or directory. Cannot open '/dev/pg*'. Cannot open SCSI driver.
[^] # Re: Quel programme
Posté par remyremy . En réponse au message problème avec graveur dvd lite-on sohw 812s. Évalué à 1.
mkisofs -r -J movies/ | pipebuf2 -b 32 -i 1 | growisofs -dvd-compat -speed=1 -use-the-force-luke=dummy -use-the-force-luke=dao -Z /dev/hdc=/dev/fd/0
Le buffer de pipebuf2 était toujours plein, mais la LED clignotait toujours aussi vite. Idem avec -b 64. Après j'ai essayé de faire mkisofs à l'avance.
cat movies.iso | pipebuf2 -b 32 -i 1 | growisofs -dvd-compat -speed=1 -use-the-force-luke=dummy -use-the-force-luke=dao -Z /dev/hdc
et
growisofs -dvd-compat -speed=1 -use-the-force-luke=dummy -use-the-force-luke=dao -Z /dev/hdc=movies.iso
Même résultat. Après je me suis plongé dans le code de growisofs. J'ai commencé à rajouter un buffer. Au bout d'un moment, j'ai eu l'idée d'une expérience: j'ai remplacé la boucle d'écriture principale
while ((n=read (infd,the_buffer+off,DVD_BLOCK-off)) > 0)
par
while (1)
ce qui fait que le programme ne lit jamais de données en entrée, et grave le même bloc de 32k encore et encore. Cela m'a permis de tester si c'était la lecture de l'iso par le pipe qui ralentissait le reste.
Hélas, le résultat était toujours aussi mauvais. Ce n'est donc pas un problème de buffer. La seule possibilité que je vois encore pour s'en sortir avec growisofs consisterait à tenter d'optimiser la fonction qui se charge de l'écriture (pwrite64_method). Celle-ci ne travaille qu'avec des blocs de 32k. Est-ce un choix de l'auteur ou une contrainte technique ? Dans le premier cas, il y a peut-être moyen d'augmenter cette taille, en espérant que cela améliore les performances. A creuser, mais sans trop d'espoir...
Pour ce qui est du patch dvd, il est aussi présent dans Debian, sous la forme d'un cdrtools patché, modifié et repackagé sous le nom de dvdrtools. La commande s'appelle dvdrecord ici au lieu de cdrecord-dvd.
Je n'arrive pas du tout à la faire marcher chez moi. Même un -scanbus échoue et retourne:
dvdrecord: No such file or directory. Cannot open '/dev/pg*'. Cannot open SCSI driver.
Reste encore à teste cdrecord-prodvd.