|  
 
| Sujet :  
dvd9to5
   --   
Auteur : 
azf Date :  
11/09/2004, 17H22
 
 |  | 
 http://lakedaemon.netmindz.net/dvd9to5/
 
 dvd9to5-0.1.7.diff.bz2
 dvd9to5-0.1.7.tar.bz2
 
 j ouvre console pour le compiler et la impossible
 vu que je suis pas tres fort en console si qq1 veux bien m expliquer ce serait cool
 voici ce que j ai fait
 [root@localhost dvd9to5-0.1.7] /configure
 bash: /configure: No such file or directory
 [root@localhost dvd9to5-0.1.7] make
 
 [root@localhost dvd9to5-0.1.7] make install
 
 [root@localhost dvd9to5-0.1.7]
 
 |   
|  |   
| Sujet :  
Re : dvd9to5
   --   
Auteur : 
Lorrainezo Date :  
11/09/2004, 23H00
 
 |  | 
 |   
|  |   
| Sujet :  
Re : dvd9to5
   --   
Auteur : 
azf Date :  
12/09/2004, 00H14
 
 |  | 
 [azf@localhost azf]$ su
 [root@localhost azf] cd /home/azf/Documents
 [root@localhost Documents] cd dvd9to5-0.1.7
 [root@localhost dvd9to5-0.1.7] ./configure
 bash: ./configure: No such file or directory
 [root@localhost dvd9to5-0.1.7] su ./configure
 su: L'usager ./configure n'existe pas.
 [root@localhost dvd9to5-0.1.7] make
 
 [root@localhost dvd9to5-0.1.7] make install
 
 [root@localhost dvd9to5-0.1.7]
 
 et voila les fichier se trouvant ds le repertoire dvd9to5
 CHANGELOG
 COPYING
 INSTALL
 README
 TODO
 dvd9to5.conf.example
 dvd9to5.pl
 
 et voila le readme
 
 README for dvd9to5.pl
 
 This file is released under the GNU General Public License. All rights
 reserved. Please check out http://www.gnu.org/copyleft/gpl.html before you
 use this code. Minimal support may be provided by sending email to
 Jason Cooper <dvd9to5@lakedaemon.net>
 
 LATEST
 The latest version may be found at
 
 http://lakedaemon.netmindz.net/dvd9to5
 
 Make sure you are using the latest version before asking questions, etc.
 
 GOAL
 I wanted a script that would take one of my DVD's (DVD-9, ~7.9GB) and
 write the main feature, perfectly, to a DVD-R (DVD-5, ~4.7GB).  I did
 not want to use transcode, because it's too much to fsck with, takes too
 long, and I'm too dumb to get the settings correct.  I also did not
 have success splitting the video, nor do I really want to use two DVD-R's
 per movie.
 So after some extremely useful hints from the Gentoo ML and the
 Transcode ML, plus a lot of digging and tinkering, I came up with this
 script.  It works for me, it may work for you.  If it doesn't, patches
 are sincerely appreciated. :)
 The trick to this script is 'tcrequant' which requantizes the mpeg
 stream very quickly.  I'm assuming this means it doesn't tear it apart
 like transcode does.  All I know is, it shrinks the video just enough,
 and I can't tell the difference on the screen.
 
 THANKS
 Thanks go to the folks on gentoo-user, transcode-user, and mythtv-user,
 as well as the authors of dvd2iso and dvd::rip.  And thanks to Will at
 netmindz.net for being kind enough to host the code.
 
 REQUIREMENTS
 Requires the transcode toolchain, the dvdauthor toolchain and the
 mjpegtools toolchain.
 
 DISCLAIMER
 Don't be an idiot.  I use this so when I take movies to poker night,
 or the kiddies come to visit, I don't care if they get lost, damaged,
 etc.  If I leave them in the back of my Jeep one night, they are more
 likely to be there in the morning.  Well, you get the idea.  Don't do
 illegal shit.  You have been warned.
 
 voila si qq1 a 1 idee
 merci
 a+
 
 |   
|  |   
| Sujet :  
Re : dvd9to5
   --   
Auteur : 
Lorrainezo Date :  
12/09/2004, 02H42
 
 |  | 
 
 
 
 Et qu'est ce qu'on voit dedans :
 
 To install dvd9to5 on your system, do the following:
 
 cp dvd9to5.pl /usr/local/bin
 cp dvd9to5.conf.example /etc/dvd9to5.conf
 and edit the config file as appropriate for your setup.  If you do not have
 root access on your machine, do the following instead:
 
 cp dvd9to5.pl ~/bin
 cp dvd9to5.conf.example ~/.dvd9to5.conf
 Edit the config file and that should be it.  Check out the command line options
 with 'dvd9to5.pl -h'.
 At all times, command line options override config file values.
 
 
 
 
 
 |   
|  |   
| Sujet :  
Re : dvd9to5
   --   
Auteur : 
azf Date :  
12/09/2004, 04H35
 
 |  | merci lorrainezo 
 j'essayerais ca demain
 je vais me coucher
 mais 1 petite question
 tu l a ouvert avec koi le fichier install?
 
 encore merci a+
 
 |   
|  |   
| Sujet :  
Re : dvd9to5
   --   
Auteur : 
Lorrainezo Date :  
12/09/2004, 13H57
 
 |  | 
 |   
|  |   
| Sujet :  
Re : dvd9to5
   --   
Auteur : 
azf Date :  
12/09/2004, 14H12
 
 |  | je suis nouveaux je me documente mais des fois les choses les plus siimples sont les plus dures a trouver et en plus je connais personne qui tourne sous linux
 
 (ils ont le tps je crois avant que je maitrise lol..........)
 le read me s etait ouvert tout seul
 et install me demandait avec koi l ouvrir ?????
 maintenant je sait que kwrite cest kom notepad
 
 merci encor lorrainezo
 je m attelle au pb
 je vous tiens au courant
 a+
 
 |   
|  |   
| Sujet :  
Re : dvd9to5
   --   
Auteur : 
azf Date :  
12/09/2004, 17H33
 
 |  | bon encore moi 
 
 mais je n arrive pas a configurer le conf avec kedit
 j ai pas les droit (qu'il me dit)
 comment on fait pour avoir les droit?
 je sais donner les droits qu en mode console (su)
 et je ne connait pas la commande pour editer 1 fichier en mode console
 
 
 
 "and edit the config file as appropriate for your setup. If you do not have
 root access on your machine, do the following instead:
 cp dvd9to5.pl ~/bin
 cp dvd9to5.conf.example ~/.dvd9to5.conf "
 
 j ai donc fait cela mais je ne retrouve pas le nouveau dvd9to5.conf
 soit disant a la racine si je comprend bien (cest koi ~/. avant le dvd9to5.conf)
 pour l editer avec kedit.........
 
 
 Edit the config file and that should be it.  Check out the command line options
 with 'dvd9to5.pl -h'.
 
 vu que je ne peux pas modifier les paramtres par defaut je me lance on verra bien (je mets 1 dvd ds le graveur (c est lui le /dev/dvd ))
 
 [azf@localhost azf]$ dvd9to5.pl -h
 dvd9to5.pl v0.1.7
 Usage: dvd9to5.pl <options>
 -i <dev>     Source device.
 -o <dev>     Destination device.
 -w <dir>     Working directory.
 -t <num>     Title  to use.
 -a <0,1...n> Audio channel 's to use.
 -s <0,1...n> Subtitle channel 's to use.
 -S <num>     Burn Speed.
 -D           Delete unneeded files.
 -h          Print this help.
 [azf@localhost azf]$
 
 pas de message d erreur
 je lance donc le dvd9to5.pl
 
 
 je me lance avec cette commande en forcant la lecture sur le dvd (/dev/dvd2)
 [azf@localhost azf]$ dvd9to5.pl -i /dev/dvd2
 
 
 [azf@localhost azf]$ dvd9to5.pl -i /dev/dvd2
 dvd9to5: Reading /etc/dvd9to5.conf
 dvd9to5: Reading /home/azf/.dvd9to5.conf
 dvd9to5: 2002-09-11 17:24:16 LOGGING-> Changed to working directory [/var/tmp/INSTANTS_NORVEGIENS].
 dvd9to5: 2002-09-11 17:24:16 LOGGING-> Grabbing chapter list.
 dvd9to5: 2002-09-11 17:24:16 RUNNING-> mkfifo vid.fifo
 dvd9to5: 2002-09-11 17:24:16 RUNNING-> tcextract -i vid.fifo -t vob -x mpeg2 > ofile.m2v &
 dvd9to5: 2002-09-11 17:24:16 RUNNING-> mkfifo aud0.fifo
 dvd9to5: 2002-09-11 17:24:16 RUNNING-> tcextract -i aud0.fifo -t vob -x ac3 -a 0 > ofile0.ac3 &
 dvd9to5: 2002-09-11 17:24:16 RUNNING-> tccat -i /dev/dvd2 -T 1,-1 -L  tee vid.fifo aud0.fifo  >/dev/null
 libdvdread: Encrypted DVD support unavailable.
 dvd9to5: 2002-09-11 17:24:16 LOGGING-> Done with source DVD, please remove it and insert a blank.
 dvd9to5: 2002-09-11 17:24:16 LOGGING-> Done extracting, cleaning up.
 dvd9to5: 2002-09-11 17:24:16 RUNNING-> rm *.fifo
 Use of uninitialized value in concatenation (.) or string at /usr/local/bin/dvd9to5.pl line 303.
 dvd9to5: 2002-09-11 17:24:17 LOGGING-> ofile.m2v is 6416 bytes.
 dvd9to5: 2002-09-11 17:24:17 LOGGING-> ofile0.ac3 is 0 bytes.
 Use of uninitialized value in addition (+) at /usr/local/bin/dvd9to5.pl line 260.
 dvd9to5: 2002-09-11 17:24:17 LOGGING-> Requantization not necessary, Continuing.
 dvd9to5: 2002-09-11 17:24:17 LOGGING-> Multiplexing original video with audio.
 Use of uninitialized value in concatenation (.) or string at /usr/local/bin/dvd9to5.pl line 312.
 dvd9to5: 2002-09-11 17:24:17 RUNNING-> mplex -f 8 -S 0 -o movie.mpeg ofile.m2v ofile0.ac3
 Can't exec "mplex": Not a directory at /usr/local/bin/dvd9to5.pl line 422.
 dvd9to5: system mplex -f 8 -S 0 -o movie.mpeg ofile.m2v ofile0.ac3  failed: -1 at /usr/local/bin/dvd9to5.pl line 422.
 [azf@localhost azf]$
 
 y a t il 1 moyen de lui faire lire ce dvd ?
 est ce qu il y a d'autres pbs?
 (si j ai bien suivi il lui manquerais mplex)
 je vais faire 1 recherche pour trouver le rpm de mplex
 
 
 bon ca fait 1 belle tartine........
 
 je suis preneur pour toute remarque et conseil
 encore merci a lorainzo pour son site et ses conseils
 a+
 
 |   
|  |   
| Sujet :  
Re : dvd9to5
   --   
Auteur : 
Lorrainezo Date :  
12/09/2004, 18H47
 
 |  | 
 Ensuite pour les messages d'erreur :
 > libdvdread: Encrypted DVD support unavailable.
 Il ne trouve pas lidvdcss
 
 > Can't exec "mplex": Not a directory at /usr/local/bin/dvd9to5.pl line 422
 il ne trouve pas le logiciel mplex
 
 
 
 |   
|  |   
| Sujet :  
Re : dvd9to5
   --   
Auteur : 
azf Date :  
13/09/2004, 00H31
 
 |  | merci a toi lorrainzo je te fais bosser.........
 
 apres install de mplex et  lidvdcss
 j ai encore des messages d erreurs
 et mes modif du lecteur source /dev/dvd2 ne sont pas pris en compte
 il lit tjrs sur /dev/dvd
 > dvd9to5: Reading /etc/dvd9to5.conf
 
 
 dvd9to5.conf file for dvd9to5.pl
 
 Device to rip from
 DVDRipDev /dev/dvd2
 
 Device to burn to
 DVDBurnDev /dev/dvd
 
 Burn Speed
 BurnSpd 2
 
 Work directory where files will be stored (need a lot o space :) )
 WorkDir /var/tmp
 
 
 > dvd9to5: Reading /home/azf/.dvd9to5.conf
 il n'existe pas ds /home/azf/
 et pourkoi il y a 1 . devant dvd9to5.conf ?
 par contre il y a 1 fichier bin.pl
 
 
 Default values for user changeable vars
 my $dflt_DVDDir        = 'dvd/VIDEO_TS';
 my $dflt_WorkDir       = '/var/tmp';
 my $dflt_LogName       = 'dvd9to5.log';
 my $dflt_DVDRipDev     = '/dev/dvd2';
 my $dflt_DVDBrnDev     = '/dev/dvd';
 my $dflt_BurnSpd       = 2;
 my $dflt_TitleNum      = 1;
 
 vu qu il ne veut pas lire dvd2 je le force avec la commande
 
 [azf@localhost azf]$ whereis  dvd9to5
 dvd9to5: /etc/dvd9to5.conf /usr/local/bin/dvd9to5.pl /usr/local/bin/dvd9to5.pl~
 [azf@localhost azf]$ cd /usr/local/bin/
 [azf@localhost bin]$ dvd9to5.pl -i /dev/dvd2
 dvd9to5: Reading /etc/dvd9to5.conf
 dvd9to5: Reading /home/azf/.dvd9to5.conf
 dvd9to5: 2004-09-12 23:51:47 LOGGING-> Changed to working directory [/var/tmp/IN
 STANTS_NORVEGIENS].
 dvd9to5: 2004-09-12 23:51:47 LOGGING-> Grabbing chapter list.
 dvd9to5: 2004-09-12 23:51:48 RUNNING-> mkfifo vid.fifo
 dvd9to5: 2004-09-12 23:51:48 RUNNING-> tcextract -i vid.fifo -t vob -x mpeg2 > o
 file.m2v &
 dvd9to5: 2004-09-12 23:51:48 RUNNING-> mkfifo aud0.fifo
 dvd9to5: 2004-09-12 23:51:48 RUNNING-> tcextract -i aud0.fifo -t vob -x ac3 -a 0
 > ofile0.ac3 &
 dvd9to5: 2004-09-12 23:51:48 RUNNING-> tccat -i /dev/dvd2 -T 1,-1 -L  tee vid.f
 ifo aud0.fifo  >/dev/null
 libdvdread: Using libdvdcss version 1.2.8 for DVD access
 
 libdvdread: Attempting to retrieve all CSS keys
 libdvdread: This can take a _long_ time, please be patient
 
 libdvdread: Get key for /VIDEO_TS/VIDEO_TS.VOB at 0x0000012b
 libdvdread: Elapsed time 0
 libdvdread: Get key for /VIDEO_TS/VTS_01_0.VOB at 0x00003bbc
 libdvdread: Elapsed time 0
 libdvdread: Get key for /VIDEO_TS/VTS_01_1.VOB at 0x000334f8
 libdvdread: Elapsed time 0
 libdvdread: Found 1 VTS's
 libdvdread: Elapsed time 0
 dvd9to5: 2004-09-12 23:51:48 LOGGING-> Done with source DVD, please remove it an                                           d insert a blank.
 dvd9to5: 2004-09-12 23:51:48 LOGGING-> Done extracting, cleaning up.
 dvd9to5: 2004-09-12 23:51:48 RUNNING-> rm *.fifo
 Use of uninitialized value in concatenation (.) or string at /usr/local/bin/dvd9                                           to5.pl line 303.
 dvd9to5: 2004-09-12 23:51:48 LOGGING-> ofile.m2v is 6416 bytes.
 dvd9to5: 2004-09-12 23:51:48 LOGGING-> ofile0.ac3 is 0 bytes.
 Use of uninitialized value in addition (+) at /usr/local/bin/dvd9to5.pl line 260
 .
 dvd9to5: 2004-09-12 23:51:48 LOGGING-> Requantization not necessary, Continuing.
 dvd9to5: 2004-09-12 23:51:48 LOGGING-> Multiplexing original video with audio.
 Use of uninitialized value in concatenation (.) or string at /usr/local/bin/dvd9                                           to5.pl line 312.
 dvd9to5: 2004-09-12 23:51:48 RUNNING-> mplex -f 8 -S 0 -o movie.mpeg ofile.m2v o                                           file0.ac3
 INFO: [mplex] mplex version 1.6.2 (2.2.3 $Date: 2004/01/13 20:45:26 $)
 **ERROR: [mplex] Unable to read from ofile0.ac3.
 dvd9to5: system mplex -f 8 -S 0 -o movie.mpeg ofile.m2v ofile0.ac3  failed: 256                                            at /usr/local/bin/dvd9to5.pl line 422.
 [azf@localhost bin]$
 
 
 je comprend vraiment pas ce qu il manque et ce qu il faut configurer
 j ai editer le fichier dvd9to5.pl
 
 
 !/usr/bin/perl -w
 
 dvd9to5.pl - v0.1.7
 This file is released under the GNU General Public License. All rights
 reserved. Please check out http://www.gnu.org/copyleft/gpl.html before you
 use this code. Minimal support may be provided by sending email to
 Jason Cooper <dvd9to5@lakedaemon.net>
 
 use strict;
 use Getopt::Std;
 
 my $VERSION="v0.1.7";
 my @ChapterMarks;
 my $ChapList;
 my %Options;
 my $StartTime;
 my $StopTime;
 
 User changeable vars
 my $DVDDir;
 my $WorkDir;
 my $LogName;
 my $HomeDir;
 my $DVDRipDev;
 my $DVDBrnDev;
 my $BurnSpd;
 my $TitleNum;
 my @AudioCH;
 my @SubCH;
 my $RequantFactor;
 my $MaxISOSize;
 
 Config file locations.
 chdir;
 $HomeDir = `pwd`;
 $HomeDir =~ s/n$//;
 my $etcConf_Loc  = '/etc/dvd9to5.conf';
 my $homeConf_Loc = $HomeDir . '/.dvd9to5.conf';
 
 Default values for user changeable vars
 my $dflt_DVDDir        = 'dvd/VIDEO_TS';
 my $dflt_WorkDir       = '/var/tmp';
 my $dflt_LogName       = 'dvd9to5.log';
 my $dflt_DVDRipDev     = '/dev/dvd2';
 my $dflt_DVDBrnDev     = '/dev/dvd';
 my $dflt_BurnSpd       = 2;
 my $dflt_TitleNum      = 1;
 my @dflt_AudioCH;
 $dflt_AudioCH[0]    = '0';
 my @dflt_SubCH;
 my $dflt_RequantFactor = 1.0;
 my $dflt_MaxISOSize    = 4706074624; bytes, according to growisofs
 
 Grab the Command Line Options
 my $CL_Opts = getopts("i:o:w:t:a:s:S:DIh", %Options);
 
 if(!$CL_Opts  $Options{h}) {
 print("dvd9to5.pl $VERSION                         n");
 print("Usage: dvd9to5.pl <options>                 n");
 print("  -i <dev>     Source device.               n");
 print("  -o <dev>     Destination device.          n");
 print("  -w <dir>     Working directory.           n");
 print("  -t <num>     Title  to use.              n");
 print("  -a <0,1...n> Audio channel 's to use.    n");
 print("  -s <0,1...n> Subtitle channel 's to use. n");
 print("  -S <num>     Burn Speed.                  n");
 print("  -D           Delete unneeded files.       n");
 print("  -I          Show DVD info and guesses. n");
 print("");
 print("");
 print("");
 print("  -h          Print this help.n");
 exit(0);
 }
 
 sub LoadValues {
 NOTE: Order of preference:
 1.) command line opts
 2.) ~/.dvd9to5.conf
 3.) /etc/dvd9to5.conf
 4.) hard coded defaults.
 
 Setting hard coded defaults
 $WorkDir    = $dflt_WorkDir;
 $DVDRipDev  = $dflt_DVDRipDev;
 $DVDBrnDev  = $dflt_DVDBrnDev;
 $BurnSpd    = $dflt_BurnSpd;
 $TitleNum   = $dflt_TitleNum;
 @AudioCH    = @dflt_AudioCH;
 @SubCH      = @dflt_SubCH;
 $MaxISOSize = $dflt_MaxISOSize;
 $DVDDir     = $dflt_DVDDir;
 
 Overwriting with "etc-config"
 my @args;
 if (-e $etcConf_Loc) {
 open(ETCCONF, "<$etcConf_Loc");
 print("dvd9to5: Reading $etcConf_Locn");
 while(<ETCCONF>) {
 if($_ =~ m/^DVDRipDev/i) {
 @args = split;
 $DVDRipDev = $args[1];
 }
 if($_ =~ m/^DVDBurnDev/i) {
 @args = split;
 $DVDBrnDev = $args[1];
 }
 if($_ =~ m/^BurnSpd/i) {
 @args = split;
 $BurnSpd = $args[1];
 }
 if($_ =~ m/^WorkDir/i) {
 @args = split;
 $WorkDir = $args[1];
 }
 }
 close(ETCCONF);
 }
 else {print("dvd9to5: Config file $etcConf_Loc not found.n");}
 
 Overwriting with "user-config"
 if (-e $homeConf_Loc) {
 open(HOMECONF, "<$homeConf_Loc");
 print("dvd9to5: Reading $homeConf_Locn");
 while(<HOMECONF>) {
 if($_ =~ m/^DVDRipDev/i) {
 @args = split;
 $DVDRipDev = $args[1];
 }
 if($_ =~ m/^DVDBurnDev/i) {
 @args = split;
 $DVDBrnDev = $args[1];
 }
 if($_ =~ m/^BurnSpd/i) {
 @args = split;
 $BurnSpd = $args[1];
 }
 if($_ =~ m/^WorkDir/i) {
 @args = split;
 $WorkDir = $args[1];
 }
 }
 close(HOMECONF);
 }
 else {print("dvd9to5: Config file $homeConf_Loc not found.n");}
 
 Overwriting with command line opts
 $DVDRipDev = $Options{i} if($Options{i});
 $DVDBrnDev = $Options{o} if($Options{o});
 $WorkDir   = $Options{w} if($Options{w});
 $BurnSpd   = $Options{S} if($Options{S});
 $TitleNum  = $Options{t} if($Options{t});
 @AudioCH   = split /,/, $Options{a} if($Options{a});
 @SubCH     = split /,/, $Options{s} if($Options{s});
 
 $WorkDir =~ s/n$//;
 $WorkDir =~ s//$//;
 
 Grab the dvd_name
 my $GetNameCmd = 'isoinfo -d -i ' . $DVDRipDev . '  egrep "^Volume id"';
 my $name = `$GetNameCmd`;
 my @words = split / /,$name;
 $name = $words[2];
 
 $name =~ s/n$// if($name);
 $WorkDir = $WorkDir . '/' . $name if($name);
 unless (-d $WorkDir) {
 my $MkDirCmd = 'mkdir -p ' . $WorkDir;
 system("$MkDirCmd");
 }
 
 $LogName = $WorkDir . '/' . $dflt_LogName;
 
 if($Options{D}) {
 LogThis("WARNING: You are deleting files as you go. Very Dangerous!!!");
 }
 }
 
 sub ExtractData {
 my $VideoCmd   = 'tcextract -i vid.fifo -t vob -x mpeg2 > ofile.m2v &';
 my $ChapsCmd   = 'tcprobe -i ' . $DVDRipDev .
 ' -T ' . $TitleNum .
 ' -H 500 2>&1' .
 '  egrep "[Chapter ..] "';
 my $VidFifoCmd = 'mkfifo vid.fifo';
 my $TeeList    = 'vid.fifo ';
 my $RmFifoCmd  = 'rm *.fifo';
 
 chdir("$WorkDir");
 LogThis("Changed to working directory [$WorkDir].");
 
 LogThis("Grabbing chapter list.");
 
 my @ChapMarks = `$ChapsCmd`;
 for my $Line (@ChapMarks) {
 my @Items = split(/ /, $Line);
 if($Items[3] =~ /..:..:....../) {
 $Items[3] =~ s/n$//;
 $ChapList .= $Items[3] . ',';
 }
 }
 $ChapList =~ s/,$//;
 
 RunThis("$VidFifoCmd");
 RunThis("$VideoCmd");
 
 my $fifoname;
 foreach(@AudioCH) {
 $fifoname   = 'aud' . $_ . '.fifo';
 $TeeList      .= $fifoname . ' ';
 my $AudFifoCmd = 'mkfifo ' . $fifoname;
 my $AudioCmd   = 'tcextract -i ' . $fifoname . ' -t vob -x ac3 -a ' .
 $_ . ' > ofile' . $_ . '.ac3 &';
 RunThis("$AudFifoCmd");
 RunThis("$AudioCmd");
 }foreach(@AudioCH)
 
 foreach(@SubCH) {
 $fifoname   = 'sub' . $_ . '.fifo';
 $TeeList      .= $fifoname . ' ';
 my $SubFifoCmd = 'mkfifo ' . $fifoname;
 my $SubCmd     = 'tcextract -i ' . $fifoname . ' -t vob -x ps1 -a ' .
 $_ . ' > ofile' . $_ . '.ps1 &';
 RunThis("$SubFifoCmd");
 RunThis("$SubCmd");
 }foreach(@SubCH)
 
 my $DumpCmd = 'tccat -i ' . $DVDRipDev . ' -T ' . $TitleNum .
 ',-1 -L  tee ' . $TeeList . ' >/dev/null';
 
 RunThis("$DumpCmd");
 LogThis("Done with source DVD, please remove it and insert a blank.");
 LogThis("Done extracting, cleaning up.");
 RunThis("$RmFifoCmd");
 
 }
 
 sub RequantVideo {
 my $M2VName  = 'ofile.m2v';
 my $OutName  = 'movie.m2v';
 my $SizeSlop = 1.05;
 my $ret      = 0;
 
 Get file sizes
 my $M2VSize  = GetSize("$M2VName");
 my $AudSize;
 my $SubSize;
 
 foreach(@AudioCH) {
 my $audname = 'ofile' . $_ . '.ac3';
 $AudSize   += GetSize("$audname");
 }foreach(@AudioCH)
 
 foreach(@SubCH) {
 my $subname = 'ofile' . $_ . '.ps1';
 $SubSize   += GetSize("$subname");
 }foreach(@SubCH)
 
 Calc Requant number.
 my $StreamSize = $SubSize + $AudSize;
 my $ReqNum     = (($SizeSlop * $M2VSize) / ($MaxISOSize - $StreamSize));
 my $ReqCmd     = 'tcrequant -i ' . $M2VName .
 ' -o ' . $OutName .
 ' -f ' . $ReqNum;
 my $RmCmd      = 'rm ofile.m2v';
 
 if($ReqNum > 1.00) {
 LogThis("Requantizing with $ReqNum");
 RunThis("$ReqCmd");
 LogThis("Done requantizing.");
 if($Options{D}) {
 LogThis("Cleaning up.");
 RunThis("$RmCmd");
 }
 $ret=1;
 }
 else {
 LogThis("Requantization not necessary, Continuing.");
 $ret=0;
 }
 return $ret;
 }
 
 sub MultiplexData {
 my $MplexCmd;
 my $RmOM2VCmd = 'rm ofile.m2v';
 my $RmMM2VCmd = 'rm movie.m2v';
 my $AudList;
 my $SubList;
 
 my $filename;
 foreach(@AudioCH) {
 $filename = 'ofile' . $_ . '.ac3 ';
 $AudList    .= $filename;
 }foreach(@AudioCH)
 
 foreach(@SubCH) {
 $filename = 'ofile' . $_ . '.ps1 ';
 $SubList    .= $filename;
 }foreach(@SubCH)
 
 my $RmAAC3Cmd   = 'rm ' . $AudList;
 my $RmAPS1Cmd   = 'rm ' . $SubList;
 
 if(RequantVideo()) {
 LogThis("Multiplexing requantized video with audio.");
 $MplexCmd = 'mplex -f 8 -S 0 -o movie.mpeg movie.m2v ' .
 $AudList . $SubList;
 }
 else {
 LogThis("Multiplexing original video with audio.");
 $MplexCmd = 'mplex -f 8 -S 0 -o movie.mpeg ofile.m2v ' .
 $AudList . $SubList;
 }
 RunThis("$MplexCmd");
 
 if($Options{D}) {
 LogThis("Cleaning up.");
 if(-e 'ofile.m2v') {
 RunThis("$RmOM2VCmd");
 }
 if(-e 'movie.m2v') {
 RunThis("$RmMM2VCmd");
 }
 RunThis("$RmAAC3Cmd");
 RunThis("$RmAPS1Cmd");
 }if($Options{D})
 
 }
 
 sub AuthorDVD {
 my $AuthorChapCmd = 'dvdauthor -t -a ac3+en -c ' . $ChapList .
 ' -o dvd movie.mpeg';
 my $AuthorTOCCmd  = 'dvdauthor -T -o dvd';
 my $MkDirCmd      = 'mkdir -p ' . $DVDDir;
 my $RmMpegCmd     = 'rm movie.mpeg';
 
 RunThis("$MkDirCmd");
 RunThis("$AuthorChapCmd");
 RunThis("$AuthorTOCCmd");
 if($Options{D}) {
 LogThis("Cleaning up.");
 RunThis("$RmMpegCmd");
 }
 }
 
 sub MakeISO {
 my $STATE       = "NO_JOY";
 my $GrowISOCmd  = 'growisofs -speed=' . $BurnSpd .
 ' -Z ' . $DVDBrnDev . ' -dvd-video dvd';
 my $DVDReadyCmd = 'tcprobe -i ' . $DVDBrnDev . ' -H 500 2>&1';
 my $RmDirCmd    = 'rm -r dvd';
 
 my @Response = `$DVDReadyCmd`;
 for my $line (@Response) {
 if($line =~ /Can't open file VIDEO_TS/) {
 $STATE = "READY";
 }
 }
 
 if($STATE eq "READY") {
 LogThis("Detected Blank DVD.");
 RunThis("$GrowISOCmd");
 LogThis("Burned the Image to disc.");
 }
 else {
 LogThis("No blank in DVD drive, cannot continue.");
 LogThis("Use '$GrowISOCmd' to burn.");
 }
 if($Options{D}) {
 LogThis("Cleaning up.");
 RunThis("$RmDirCmd");
 }
 }
 
 sub GetSize {
 my ($Filename) = @_;
 
 my $SizeCmd = 'du -sb ' . $Filename;
 
 my $String = `$SizeCmd`;
 my ($Size) = split(/t/, $String);
 
 LogThis("$Filename is $Size bytes.");
 
 return $Size;
 }
 
 sub LogThis {
 my ($String) = @_;
 
 my @Date = localtime(time);
 my $LogStr = sprintf("%04d-%02d-%02d %02d:%02d:%02d LOGGING-> $Stringn",
 $Date[5] + 1900, $Date[4] + 1, $Date[3],
 $Date[2], $Date[1], $Date[0]);
 if(-e $LogName) {
 open(CMDLOG, ">>$LogName");
 }
 else {
 open(CMDLOG, ">$LogName");
 }
 print("dvd9to5: $LogStr");
 print(CMDLOG $LogStr);
 close(CMDLOG);
 }
 
 sub RunThis {
 my ($Command) = @_;
 
 my @Date = localtime(time);
 my $LogStr = sprintf("%04d-%02d-%02d %02d:%02d:%02d RUNNING-> $Commandn",
 $Date[5] + 1900, $Date[4] + 1, $Date[3],
 $Date[2], $Date[1], $Date[0]);
 if(-e $LogName) {
 open(CMDLOG, ">>$LogName");
 }
 else {
 open(CMDLOG, ">$LogName");
 }
 print("dvd9to5: $LogStr");
 print(CMDLOG $LogStr);
 system("$Command") == 0
 or die "dvd9to5: system $Command failed: $?";
 if ($? == -1) {
 print "dvd9to5: failed to execute: $!n";
 }
 elsif ($? & 127) {
 printf "dvd9to5: child died with signal %d, %s coredumpn",
 ($? & 127),  ($? & 128) ? 'with' : 'without';
 }
 
 close(CMDLOG);
 }
 
 
 LoadValues();
 ExtractData();
 MultiplexData();
 AuthorDVD();
 MakeISO();
 
 voila si tu peux m aider ......
 
 allez salut
 
 |   
|  |   
| Sujet :  
Re : dvd9to5
   --   
Auteur : 
Lorrainezo Date :  
13/09/2004, 13H02
 
 |  | 
 
 
 
 Y a un argument que je trouve bizarre :  my $dflt_DVDDir = 'dvd/VIDEO_TS';
 
 
 |   
|  |   
| Sujet :  
Re : dvd9to5
   --   
Auteur : 
azf Date :  
13/09/2004, 17H46
 
 |  | merci lorrainezo 
 le fichier ofile0.ac3 existe bien dans
 /var/tmp/INSTANTS_NORVEGIENS
 par contre il fait 0 octets
 il y a aussi 1 fichier ofile.m2v qui fait 6.3 ko
 
 et pour
 > my $dflt_DVDDir = 'dvd/VIDEO_TS
 il n existe pas
 
 mais je pense que c est le fichier source du dvd original
 ou se trouvent tous les fichiers
 
 
 j ai eu 1 flash
 et j ai fait 1 essai avec 1 dvd video que j avait deja fait avec dvdshrink
 (qui n a plus les codes de criptages)
 et la j obtiens ofile.m2v qui fait 3.6 go et 1 fichier ofile0.ac3 de 0 octets
 
 donc je pense que css ne marche pas correctement
 
 
 
 [azf@localhost azf]$ whereis dvd9to5
 dvd9to5: /etc/dvd9to5.conf /usr/local/bin/dvd9to5.pl /usr/local/bin/dvd9to5.pl~
 [azf@localhost azf]$ /usr/local/bin/dvd9to5.pl
 dvd9to5: Reading /etc/dvd9to5.conf
 dvd9to5: Reading /home/azf/.dvd9to5.conf
 dvd9to5: 2004-09-13 14:53:43 LOGGING-> Changed to working directory [/var/tmp/LE
 S_2_TOURS].
 dvd9to5: 2004-09-13 14:53:43 LOGGING-> Grabbing chapter list.
 dvd9to5: 2004-09-13 14:53:43 RUNNING-> mkfifo vid.fifo
 dvd9to5: 2004-09-13 14:53:43 RUNNING-> tcextract -i vid.fifo -t vob -x mpeg2 > o
 file.m2v &
 dvd9to5: 2004-09-13 14:53:43 RUNNING-> mkfifo aud0.fifo
 dvd9to5: 2004-09-13 14:53:43 RUNNING-> tcextract -i aud0.fifo -t vob -x ac3 -a 0
 > ofile0.ac3 &
 dvd9to5: 2004-09-13 14:53:43 RUNNING-> tccat -i /dev/dvd -T 1,-1 -L  tee vid.fi
 fo aud0.fifo  >/dev/null
 libdvdread: Using libdvdcss version 1.2.8 for DVD access
 
 libdvdread: Attempting to retrieve all CSS keys
 libdvdread: This can take a _long_ time, please be patient
 
 libdvdread: Get key for /VIDEO_TS/VIDEO_TS.VOB at 0x00000128
 libdvdread: Elapsed time 0
 libdvdread: Get key for /VIDEO_TS/VTS_01_0.VOB at 0x00000165
 libdvdread: Elapsed time 0
 libdvdread: Get key for /VIDEO_TS/VTS_01_1.VOB at 0x00004970
 libdvdread: Elapsed time 0
 libdvdread: Get key for /VIDEO_TS/VTS_02_0.VOB at 0x0022a3ef
 libdvdread: Elapsed time 0
 libdvdread: Get key for /VIDEO_TS/VTS_02_1.VOB at 0x0022a3f4
 libdvdread: Elapsed time 0
 libdvdread: Get key for /VIDEO_TS/VTS_03_0.VOB at 0x0022b8d4
 libdvdread: Elapsed time 0
 libdvdread: Get key for /VIDEO_TS/VTS_03_1.VOB at 0x0022b8d9
 libdvdread: Elapsed time 0
 libdvdread: Found 3 VTS's
 libdvdread: Elapsed time 0
 dvd9to5: 2004-09-13 15:12:19 LOGGING-> Done with source DVD, please remove it an                                           d insert a blank.
 dvd9to5: 2004-09-13 15:12:19 LOGGING-> Done extracting, cleaning up.
 dvd9to5: 2004-09-13 15:12:19 RUNNING-> rm *.fifo
 Use of uninitialized value in concatenation (.) or string at /usr/local/bin/dvd9                                           to5.pl line 303.
 dvd9to5: 2004-09-13 15:12:19 LOGGING-> ofile.m2v is 3917196835 bytes.
 dvd9to5: 2004-09-13 15:12:19 LOGGING-> ofile0.ac3 is 0 bytes.
 Use of uninitialized value in addition (+) at /usr/local/bin/dvd9to5.pl line 260                                           .
 dvd9to5: 2004-09-13 15:12:19 LOGGING-> Requantization not necessary, Continuing.
 dvd9to5: 2004-09-13 15:12:19 LOGGING-> Multiplexing original video with audio.
 Use of uninitialized value in concatenation (.) or string at /usr/local/bin/dvd9                                           to5.pl line 312.
 dvd9to5: 2004-09-13 15:12:19 RUNNING-> mplex -f 8 -S 0 -o movie.mpeg ofile.m2v o                                           file0.ac3
 INFO: [mplex] mplex version 1.6.2 (2.2.3 $Date: 2004/01/13 20:45:26 $)
 **ERROR: [mplex] Unable to read from ofile0.ac3.
 dvd9to5: system mplex -f 8 -S 0 -o movie.mpeg ofile.m2v ofile0.ac3  failed: 256                                            at /usr/local/bin/dvd9to5.pl line 422.
 [azf@localhost azf]$
 
 
 donc il y a 1 pb avec mplex
 
 
 [azf@localhost azf]$ mplex -?
 mplex: invalid option -- ?
 mjpegtools mplex-2 version 1.6.2 (2.2.3)
 Usage: mplex [params] -o <output filename pattern> <input file>...
 %d in the output file name is by segment count
 where possible params are:
 --verbose-v num
 Level of verbosity. 0 = quiet, 1 = normal 2 = verbose/debug
 --format-f fmt
 Set defaults for particular MPEG profiles
 [0 = Generic MPEG1, 1 = VCD, 2 = user-rate VCD, 3 = Generic MPEG2,
 4 = SVCD, 5 = user-rate SVCD
 6 = VCD Stills, 7 = SVCD Stills, 8 = DVD with NAV sectors, 9 = DVD]
 --mux-bitrate-r num
 Specify data rate of output stream in kbit/sec
 (default 0=Compute from source streams)
 --video-buffer-b num [, num...]
 Specifies decoder buffers size in kB.  [ 20...2000]
 --lpcm-params  -L samppersec:chan:bits [, samppersec:chan:bits]
 --mux-limit-l num
 Multiplex only num seconds of material (default 0=multiplex all)
 --sync-offset-O num mssmpt
 Specify offset of timestamps (video-audio) in mSec
 --sector-size-s num
 Specify sector size in bytes for generic formats [256..16384]
 --vbr-V
 Multiplex variable bit-rate video
 --packets-per-pack-p num
 Number of packets per pack generic formats [1..100]
 --system-headers-h
 
 
 et donc la ligne
 dvd9to5: 2004-09-13 15:12:19 RUNNING-> mplex -f 8 -S 0 -o movie.mpeg ofile.m2v o                                           file0.ac3
 
 veut dire
 
 mplex -f 8 (8 = DVD with NAV sectors) -S 0 (Maximum size of output file(s) in Mbyte (default: 0) (no limit)) -movie.mpeg ofile.m2v ofile0.ac3
 
 bon la je demande de l aide........
 
 a+
 et merci de ton aide precieuse
 
 |   
|  |  |