Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
973 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Multimédia

  DVD9 vers DVD5 : Dvddump - équivalents à DVDShrink sous Linux

 

 

 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  16  17  18  19  20  21
Page Précédente
Auteur Sujet :

DVD9 vers DVD5 : Dvddump - équivalents à DVDShrink sous Linux

n°466572
Profil sup​primé
Posté le 29-04-2004 à 14:13:12  answer
 

1er Soft :
 
dvddump
C'est un script permettant de faire des sauvegardes de DVD9 video, avec recompression automatique pour rentrer sur un DVD5. Le script est capable de lancer la gravure du DVD à la fin de la compression.
 
Outils utilisés :
StreamAnalyze 0.3 + StreamDVD 0.3 + DVDauthor et le script DVDDump
 
TELECHARGEMENT
Soit les sources, soit les RPM si vous utilisez Mandriva Linux.
 

  • SOURCES à compiler :

Dvddump :
http://tuxrip.free.fr/dvddump (crée par jotenakis)
 
Dvdauthor (mettre le patch de Philou):
Télécharger les sources de dvdauthor sur le site officiel, extraire et remplacer les 3 fichiers fournis par philou, puis compiler :
./configure && make && make install
Site officiel : http://dvdauthor.sourceforge.net/
Patch : http://philoua7.free.fr/dvd/
 
StreamDVD & StreamAnalyze
http://www.badabum.de/streamdvd.html
Seules les versions 0.3 sont utilisables avec dvddump.
 

  • RPM pour Mandriva Linux

Paquetages crées par Mjules : http://mjules.free.fr/dvddump/
Page dvddump de mjules : http://mjules.free.fr/dvddump.htm
 
J'ai également reconstruit des rpm avec gcc-4 sous Mandriva Cooker à partir des src.rpm de Mjules ou des tar.bz2 officiels avec l'aide des .spec de Mjules aussi :
http://jeep05fr.free.fr/rpms/
 
INSTALLATION
Pour les sources, voir le Readme de chaque.
Pour les paquets RPM : rpm -Uvh xxx.rpm
 
La 1ere fois que vous lancez dvddump, faites : 'dvddump --config' pour créer le fichier de configuration.
Un 'dvddump --help' vous donnera les commandes disponibles.
 
INTERFACE GRAPHIQUE a DVDDUMP
2 projets :
- gui-dvddump.py (par bimon)
 - dvddumpui (par Irmatden)
Site : http://5-rue-valentin.homelinux.net/guis_dvddump/
 
2eme Soft :
 
K9copy : http://k9copy.free.fr/
Maintenu par un français, avec interface graphique.
 
Outils utilisés :
    * DVDAuthor
    * vamps (version adaptée disponible sur le site)
    * mjpegtools
    * libdvdread
    * growisofs
    * toolame
 
TELECHARGEMENT
Sur le site de l'auteur, ou bien sur Urpmi pour ceux sur Mandriva Cooker seulement.
 
3eme Soft :
 
xDvdShrink : http://dvdshrink.sourceforge.net/
XDVDShrink is a project in BASH and Perl-Gtk2 that allows you to create fair-use archival copies of DVD content on single-layer writable DVDs.
 
# Command-line and graphical interface
# Scriptable
# Copy single movies
# Copy multiple episodes
# Selectable audio stream (AC3 only)
# Option for one subtitle stream per DVD title

 
Outils utilisés :
* transcode
* dvdauthor
* mjpegtools
* subtitleripper
* gocr
* dvd+rw_tools
* mkisofs
 
TELECHARGEMENT
http://sourceforge.net/project/sho [...] _id=133818
 
Note : si vous souhaitez seulement convertir un DVD en video MPEG4, rendez vous sur le topic de tuxrip "Techniques d'encodage DVD --> Mpeg4"
Voir le lien 'Sujets à lire' en haut à gauche de cette page


Message édité par Profil supprimé le 23-06-2005 à 19:07:20
mood
Publicité
Posté le 29-04-2004 à 14:13:12  profilanswer
 

n°466585
jotenakis
Posté le 29-04-2004 à 14:20:17  profilanswer
 
n°466594
philou_a7
\_o< coin ! >o_/
Posté le 29-04-2004 à 14:24:21  profilanswer
 

Sachant que si tu veux conserver les sous titres, les coulmeurs des sous titres, plusieurs bandes son, etc, y a pas mal de manip manuelles a faire ;)
 
Mais une fois que tout est trouvé, ca marche tres bien :D

n°466601
philou_a7
\_o< coin ! >o_/
Posté le 29-04-2004 à 14:29:36  profilanswer
 

d'ailleurs, je ne saurais que trop te conseiller de regarder principalement streamdvd (en gardant la v0.3 pour les sous-titres), dvdauthor (avec mon patch :D qui evite les problemes de remise a zero du compteur d'horloge) et ses outils spumux et spuunmux, et tcprobe pour obtenir le chapitrage...

n°466602
jotenakis
Posté le 29-04-2004 à 14:29:47  profilanswer
 

+vamps : http://www.heise.de/ct/ftp/04/01/094/


---------------
Jotenakis
n°466606
jotenakis
Posté le 29-04-2004 à 14:30:28  profilanswer
 

philou_a7 a écrit :

d'ailleurs, je ne saurais que trop te conseiller de regarder principalement streamdvd (en gardant la v0.3 pour les sous-titres), dvdauthor (avec mon patch :D qui evite les problemes de remise a zero du compteur d'horloge) et ses outils spumux et spuunmux, et tcprobe pour obtenir le chapitrage...


tu nous fait un tuto de ta méthode ?


---------------
Jotenakis
n°466607
Profil sup​primé
Posté le 29-04-2004 à 14:31:32  answer
 

oula merci pour les liens et réponses :)
je vais regarder ca. :)

n°466613
philou_a7
\_o< coin ! >o_/
Posté le 29-04-2004 à 14:35:14  profilanswer
 

jotenakis a écrit :

tu nous fait un tuto de ta méthode ?


 
j'aimerais bien, le probleme c'est que j'ai encore beaucoup de taches manuelles qui devraient etre automatisables (par exemple pour les couleurs de sous titres) et que j'ai pas suffisement le temps de coder des choses en ce moment.
 
Principalement, il me manque un equivalent linux de IfoEdit (que j'utilise avec wine) pour :
1- ajuster les couleurs de sous titres sans relancer dvdauthor
2- positionner les codes de langues (fr, en, etc..) dans les flux audio/sub
 
mais si ca t'interesse, je peux deja decrire en gros ma methode. C'est assez manuel, mais c'est pas compliqué ;)

n°466621
jotenakis
Posté le 29-04-2004 à 14:45:34  profilanswer
 

philou_a7 a écrit :


mais si ca t'interesse, je peux deja decrire en gros ma methode. C'est assez manuel, mais c'est pas compliqué ;)


oui, ça m'interesse...


---------------
Jotenakis
n°466683
philou_a7
\_o< coin ! >o_/
Posté le 29-04-2004 à 15:48:47  profilanswer
 

fouya :p
 
bon, je previens tout de suite, je suis au bureau, j'ai pas les commandes sous la main alors ca va etre du "en gros", mais long ;)
je vais essayer de detailler au mieux les etapes, et je rappellerai les prerequis a la fin
 
NB : mon but est de conserver la video dans la meilleure qualité possible, je ne me soucie pas des bonus et menus... voir dvdunauthor pour ça ;)
 
-----------------------------------
 
1/ Recuperation des informations du DVD source
 
Je me sers tout d'abord de tcprobe pour determiner la duree et le nombre de chapitres des differents titres afin d'identifier celui qui va m'interesser.
 

tcprobe -i /dev/dvd -T n


avec n = numero du chapitre
j'ai un petit script pour ca l'algo est simple :


tcprobe -i /dev/dvd -T 1
-> recuperation (grep et awk rulez) du nombre total de titres
-> recuperation de la duree et du nombre de chapitres et affichage
ntitre=2
tant que ntitre < nb total de titres
  tcprobe -i /dev/dvd -T ntitre
  -> recuperation de la duree et du nombre de chapitres et affichage


 
Je rapelle tcprobe -i /dev/dvd -T le_titre_qui_va_bien dans un combiné grep / awk / sed qui me sort la liste des temps de début de chapitres sous la forme 00:00:00.000,00:01:02.345, etc... (pour dvdauthor) et je stocke ca dans un fichier chapter.list
 
Une derniere analyse du resultat de ce tcprobe me donne les numeros de flux video/audio/subtitles qui m'interessent (je me base sur la langue et le type de données)
En general, je lance aussi streamanalyze -i /dev/dvd -t <titre> pour verifier ces valeurs
 
2/ Copie des .vob épurés
 
Tout d'abord, petite précision technique...
Dans sa derniere version, la 0.6.10 je crois, dvdauthor n'est pas tolerant a une petite imprecision dans les normes qui definissent les .VOB
Dans un .VOB, chaque paquet de données (qqsoit son type) est accompagné d'un en-tête qui contient une valeur SCR, horodatage logiciel qui permet de mettre les paquets dans l'ordre pour les lecteurs.
Cette valeur va toujours avancer de façon strictement croissante, sauf dans un cas bien precis, denué de sens mais visiblement valide : la remise a zero.
Actuellement, dvdauthor sort en erreur sur ce cas (qui se rencontre assez frequemment en tout cas dans mes DVDs originaux :D), et j'ai sorti un petit patch, qui sera peut etre integré a la prochaine version, pour contourner ce cas precis. Le patch est dispo dans les mailing-lists developpeur du projet sourceforge, ou sinon je pourrai le remettre ici si ca vous interesse.
 
Le principe est le suivant :
Une commande qui va ripper les flux interessants du DVD et les ré-authorer pour obtenir directement une structure DVDvideo valide avec uniquement les flux que je veux conserver.
 
la commande est a peu pres

dvdauthor-patch -t -c `echo chapters.list` -o pre-dvd -f 'streamdvd -i /dev/dvd -f 1.000 -t <titre> -s <numeros de flux> |'


 
avec numeros de flux = 0xe0,0x80,0x81,0x20,0x22 par exemple pour garder
0xe0 premier flux video
0x80,0x81 deux premiers flux audios
0x20,0x22 premier et troisieme flux de sous titres
les valeurs viennent du resultat de tcprobe plus haut
 
Une fois ceci fait, un appel a

dvdauthor-patch -T -o pre-dvd

et le repertoire pre-dvd contient une structure valide.
 
Generalement, là, je verifie le resultat avec un mplayer dvd:// -dvd-device pre-dvd -aid XXX -sid YYY
XXX = valeur decimale du flux audio : 0x80=128 0x81=129 etc...
YYY = valeur decimale de flux sous titre-0x20 : 0x20->0 0x21->1 etc...
 
Si je me suis planté dans les flux, je recommance :p
 
3/ Requantisation
 
Trois fois sur quatre, le resultat sera trop gros pour un DVD5... on va donc requantiser le resultat.
 
La commande magique :

streamanalize -i ./pre-dvd -t 1


renvoie, en plus de la liste des flux present, le facteur de requantisation pour que ca rentre dans un DVD5
 
Je note cette valeur dans un coin.
En pratique, si la valeur est superieure a 1.5, on commence a voir des effets de compression, et au dela de 1.8 ca commence a faire vraiment beaucoup... c'est au gout de chacun ;)
 
4/ Couleurs des sous-titres
 
Alors ca, c'est chiant :)
La palette de couleurs utilisées contient 16 valeurs. En general, des sous-titres en utilisent 2 ou 3, mais seulement, y a pas 2 DVDs qui vont utiliser les mêmes :)
 
Une premiere methode consisterait a copier la palette du VTS_0x_0.IFO original (avec IfoEdit sous wine) mais j'aime pas :p
Je fais plus dans le bourrin mais c'est fortement perfectible comme methode et j'ai bon espoir de creuser encore un peu ;)
J'ai donc modifié un peu le code de spuunmux (un outil de la suite DVDAuthor) pour que lors de l'extraction, il m'affiche des statistiques sur les .png qu'il ecrit...
J'en deduis donc aisement les index des couleurs utilisées dans le film, et je crée un fichier palette.rgb en consequence : tout a 000000 sauf les couleurs que je veux :D
 
5/ Authoring (presque) final
 
Il suffit de relancer un dvdauthor :

dvdauthor-patch -t -p palette.rgb -c `echo chapters.list` -o dvdok -f 'streamdvd -i ./pre-dvd -f <facteur de requantisation> -t 1 -s <numeros de flux> |'
dvdauthor-patch -T -o dvdok


 
On dispose alors d'une structure presque complete dans le repertoire dvdok/
 
6/ Langues des flux
 
C'est mon 2eme souci : les langues...
Je commence par identifier les langues avec mplayer et les parametres sid et aid, puis je lance IfoEdit dans wine pour mettre les valeurs correctes.
Il y a forcement un moyen de faire ca beaucoup plus prorprement ;) mais j'ai pas encore cherché et surtout, je ne connait pas de IfoEdit sous linux :(
 
7/ Gravure
 

growisofs -Z /dev/dvd -dvd-video dvdok/

(a peu pres) et c'est reglé :)
 
-----------------------------------------
 
Voila, avec ca j'ai presque aucun probleme. Reste un cas tordu d'une assertion qui provoque une erreur en fin de dvdauthor (rencontré une seule fois pour le moment). Visiblement, il y a des cas ou le paquet final est mal formé, dvdauthor gueule mais en fait c'est pas grave, c'est juste le paquet final qui est mal paddé. Les lecteurs s'en foutent et le film est fini :D
 
J'ai donc besoin de :
1- transcode pour tcprobe
2- streamdvd et streamanalyse en version 0.3 (la 0.4 ne gere pas encore les sous titres)
3- dvdauthor patché
4- dvd+rw-tools pour growisofs
5- mplayer pour verifier les resultats intermediaires mais un autre player video doit fonctionner pareil
 
Sinon, j'avais essayé une autre methode a base de vobcopy , tcmplex , spuunmux et spumux pour les sous titres, ca marche aussi mais c'est un poil plus bordelique...
Mais comme je disais, c'est surement plus automatisable, et perfectible ;)

mood
Publicité
Posté le 29-04-2004 à 15:48:47  profilanswer
 

n°466690
GUG
Posté le 29-04-2004 à 15:53:26  profilanswer
 

merci :jap:

n°466722
belgique
Posté le 29-04-2004 à 16:14:22  profilanswer
 

[:drapo]

n°466728
jotenakis
Posté le 29-04-2004 à 16:17:32  profilanswer
 

très intéressant, pourrais tu mettre à disposition tes patches et les petits scripts que tu utilises stp...  ;)


Message édité par jotenakis le 29-04-2004 à 16:27:10

---------------
Jotenakis
n°466743
fioul666
Posté le 29-04-2004 à 16:29:23  profilanswer
 

philou_a7 a écrit :

fouya :p
 
bon, je previens tout de suite, je suis au bureau, j'ai pas les commandes sous la main alors ca va etre du "en gros", mais long ;)
je vais essayer de detailler au mieux les etapes, et je rappellerai les prerequis a la fin
 
NB : mon but est de conserver la video dans la meilleure qualité possible, je ne me soucie pas des bonus et menus... voir dvdunauthor pour ça ;)
 
-----------------------------------
 
1/ Recuperation des informations du DVD source
 
Je me sers tout d'abord de tcprobe pour determiner la duree et le nombre de chapitres des differents titres afin d'identifier celui qui va m'interesser.
 

tcprobe -i /dev/dvd -T n


avec n = numero du chapitre
j'ai un petit script pour ca l'algo est simple :


tcprobe -i /dev/dvd -T 1
-> recuperation (grep et awk rulez) du nombre total de titres
-> recuperation de la duree et du nombre de chapitres et affichage
ntitre=2
tant que ntitre < nb total de titres
  tcprobe -i /dev/dvd -T ntitre
  -> recuperation de la duree et du nombre de chapitres et affichage


 
Je rapelle tcprobe -i /dev/dvd -T le_titre_qui_va_bien dans un combiné grep / awk / sed qui me sort la liste des temps de début de chapitres sous la forme 00:00:00.000,00:01:02.345, etc... (pour dvdauthor) et je stocke ca dans un fichier chapter.list
 
Une derniere analyse du resultat de ce tcprobe me donne les numeros de flux video/audio/subtitles qui m'interessent (je me base sur la langue et le type de données)
En general, je lance aussi streamanalyze -i /dev/dvd -t <titre> pour verifier ces valeurs
 
2/ Copie des .vob épurés
 
Tout d'abord, petite précision technique...
Dans sa derniere version, la 0.6.10 je crois, dvdauthor n'est pas tolerant a une petite imprecision dans les normes qui definissent les .VOB
Dans un .VOB, chaque paquet de données (qqsoit son type) est accompagné d'un en-tête qui contient une valeur SCR, horodatage logiciel qui permet de mettre les paquets dans l'ordre pour les lecteurs.
Cette valeur va toujours avancer de façon strictement croissante, sauf dans un cas bien precis, denué de sens mais visiblement valide : la remise a zero.
Actuellement, dvdauthor sort en erreur sur ce cas (qui se rencontre assez frequemment en tout cas dans mes DVDs originaux :D), et j'ai sorti un petit patch, qui sera peut etre integré a la prochaine version, pour contourner ce cas precis. Le patch est dispo dans les mailing-lists developpeur du projet sourceforge, ou sinon je pourrai le remettre ici si ca vous interesse.
 
Le principe est le suivant :
Une commande qui va ripper les flux interessants du DVD et les ré-authorer pour obtenir directement une structure DVDvideo valide avec uniquement les flux que je veux conserver.
 
la commande est a peu pres

dvdauthor-patch -t -c `echo chapters.list` -o pre-dvd -f 'streamdvd -i /dev/dvd -f 1.000 -t <titre> -s <numeros de flux> |'


 
avec numeros de flux = 0xe0,0x80,0x81,0x20,0x22 par exemple pour garder
0xe0 premier flux video
0x80,0x81 deux premiers flux audios
0x20,0x22 premier et troisieme flux de sous titres
les valeurs viennent du resultat de tcprobe plus haut
 
Une fois ceci fait, un appel a

dvdauthor-patch -T -o pre-dvd

et le repertoire pre-dvd contient une structure valide.
 
Generalement, là, je verifie le resultat avec un mplayer dvd:// -dvd-device pre-dvd -aid XXX -sid YYY
XXX = valeur decimale du flux audio : 0x80=128 0x81=129 etc...
YYY = valeur decimale de flux sous titre-0x20 : 0x20->0 0x21->1 etc...
 
Si je me suis planté dans les flux, je recommance :p
 
3/ Requantisation
 
Trois fois sur quatre, le resultat sera trop gros pour un DVD5... on va donc requantiser le resultat.
 
La commande magique :

streamanalize -i ./pre-dvd -t 1


renvoie, en plus de la liste des flux present, le facteur de requantisation pour que ca rentre dans un DVD5
 
Je note cette valeur dans un coin.
En pratique, si la valeur est superieure a 1.5, on commence a voir des effets de compression, et au dela de 1.8 ca commence a faire vraiment beaucoup... c'est au gout de chacun ;)
 
4/ Couleurs des sous-titres
 
Alors ca, c'est chiant :)
La palette de couleurs utilisées contient 16 valeurs. En general, des sous-titres en utilisent 2 ou 3, mais seulement, y a pas 2 DVDs qui vont utiliser les mêmes :)
 
Une premiere methode consisterait a copier la palette du VTS_0x_0.IFO original (avec IfoEdit sous wine) mais j'aime pas :p
Je fais plus dans le bourrin mais c'est fortement perfectible comme methode et j'ai bon espoir de creuser encore un peu ;)
J'ai donc modifié un peu le code de spuunmux (un outil de la suite DVDAuthor) pour que lors de l'extraction, il m'affiche des statistiques sur les .png qu'il ecrit...
J'en deduis donc aisement les index des couleurs utilisées dans le film, et je crée un fichier palette.rgb en consequence : tout a 000000 sauf les couleurs que je veux :D
 
5/ Authoring (presque) final
 
Il suffit de relancer un dvdauthor :

dvdauthor-patch -t -p palette.rgb -c `echo chapters.list` -o dvdok -f 'streamdvd -i ./pre-dvd -f <facteur de requantisation> -t 1 -s <numeros de flux> |'
dvdauthor-patch -T -o dvdok


 
On dispose alors d'une structure presque complete dans le repertoire dvdok/
 
6/ Langues des flux
 
C'est mon 2eme souci : les langues...
Je commence par identifier les langues avec mplayer et les parametres sid et aid, puis je lance IfoEdit dans wine pour mettre les valeurs correctes.
Il y a forcement un moyen de faire ca beaucoup plus prorprement ;) mais j'ai pas encore cherché et surtout, je ne connait pas de IfoEdit sous linux :(
 
7/ Gravure
 

growisofs -Z /dev/dvd -dvd-video dvdok/

(a peu pres) et c'est reglé :)
 
-----------------------------------------
 
Voila, avec ca j'ai presque aucun probleme. Reste un cas tordu d'une assertion qui provoque une erreur en fin de dvdauthor (rencontré une seule fois pour le moment). Visiblement, il y a des cas ou le paquet final est mal formé, dvdauthor gueule mais en fait c'est pas grave, c'est juste le paquet final qui est mal paddé. Les lecteurs s'en foutent et le film est fini :D
 
J'ai donc besoin de :
1- transcode pour tcprobe
2- streamdvd et streamanalyse en version 0.3 (la 0.4 ne gere pas encore les sous titres)
3- dvdauthor patché
4- dvd+rw-tools pour growisofs
5- mplayer pour verifier les resultats intermediaires mais un autre player video doit fonctionner pareil
 
Sinon, j'avais essayé une autre methode a base de vobcopy , tcmplex , spuunmux et spumux pour les sous titres, ca marche aussi mais c'est un poil plus bordelique...
Mais comme je disais, c'est surement plus automatisable, et perfectible ;)


 
je salue l'effort de contribution et de doc. fourni. :jap:
 
Mais as tu deja utilisé DVDShrink ?

n°466744
jotenakis
Posté le 29-04-2004 à 16:29:26  profilanswer
 

pour les langues : pourquoi ne pas utiliser le -a de dvdauthor  ?
par exemple : -a ac3+fr


---------------
Jotenakis
n°466745
jotenakis
Posté le 29-04-2004 à 16:30:52  profilanswer
 

fioul666 a écrit :

je salue l'effort de contribution et de doc. fourni. :jap:
 
Mais as tu deja utilisé DVDShrink ?


le M. demande une méthode, il en propose une... Y a pas de gui ici et alors, ça viendra !


---------------
Jotenakis
n°466766
philou_a7
\_o&lt; coin ! &gt;o_/
Posté le 29-04-2004 à 16:54:12  profilanswer
 

DVDShrink = windows, et j'ai pas envie :D
 

Citation :

pour les langues : pourquoi ne pas utiliser le -a de dvdauthor  ?
par exemple : -a ac3+fr


 
parce qu'on travaille directement sur les flux... dvdauthor se prend du VOB en entrée, il sait a peine qu'il reçoit de la video de l'audio ou du sous titre ;)
j'avais voulu essayer, ca avait gentillement planté, et j'ai pas trop persisté ;)

n°466770
philou_a7
\_o&lt; coin ! &gt;o_/
Posté le 29-04-2004 à 16:55:33  profilanswer
 

jotenakis a écrit :

très intéressant, pourrais tu mettre à disposition tes patches et les petits scripts que tu utilises stp...  ;)


 
yop yop, mais faudra attendre tard ce soir ou demain, tout est a la maison (et je peux plus acceder a chez moi par ssh :( :( :( firewall de daube...)

n°466772
fioul666
Posté le 29-04-2004 à 16:58:37  profilanswer
 

jotenakis a écrit :

le M. demande une méthode, il en propose une... Y a pas de gui ici et alors, ça viendra !


Definition : le linuxien est un animal tres susceptible n'acceptant pas ou peu la critique (le developpeur est un peu du meme genre).
 
tu n'as meme pas lu ma premiere phrase, dommage c'etait la plus importante.

n°466773
danny92
To beer or not to beer
Posté le 29-04-2004 à 16:58:39  profilanswer
 

wahou merci beaucoup pour le tuto philou_a7.

n°466775
fioul666
Posté le 29-04-2004 à 16:59:49  profilanswer
 

philou_a7 a écrit :

yop yop, mais faudra attendre tard ce soir ou demain, tout est a la maison (et je peux plus acceder a chez moi par ssh :( :( :( firewall de daube...)


je te suggere ipcop 1.4 (ou 1.3) uptime 3 mois (depuis que j'ai la freebox en fait), en plus c hyper simple a poser.

n°466776
philou_a7
\_o&lt; coin ! &gt;o_/
Posté le 29-04-2004 à 17:00:47  profilanswer
 

non, le firewall de ma boite qui m'empeche de sortir :D
chez moi tout marche comme il faut :D
 
mandrake 9.2 rulez :D :lol:

n°466779
philou_a7
\_o&lt; coin ! &gt;o_/
Posté le 29-04-2004 à 17:03:47  profilanswer
 

Le patch du "SCR backwards" pour dvdauthor est dispo dans ce thread :
 
http://sourceforge.net/mailarchive [...] m_id=32261
 
c'est un diff a appliquer aux sources 0.6.10
c'est le seul qui soit dispo en ligne ;)

n°466788
fioul666
Posté le 29-04-2004 à 17:29:54  profilanswer
 

philou_a7 a écrit :

non, le firewall de ma boite qui m'empeche de sortir :D
chez moi tout marche comme il faut :D
 
mandrake 9.2 rulez :D :lol:


un gugusse de l'ens cachan m'a dit que tu peux sortir en tunnelisant ton ssh ds du HTTP. (surtout si tu as squid c possible:d)

n°466796
philou_a7
\_o&lt; coin ! &gt;o_/
Posté le 29-04-2004 à 17:43:06  profilanswer
 

oui mais là, le probleme c'est pas le port :D
c'est plutot un probleme d'IP fixe et de blacklistage de plages d'adresses un peu brutal... genre les IPs free et wanadoo :D

n°467091
philou_a7
\_o&lt; coin ! &gt;o_/
Posté le 29-04-2004 à 22:23:02  profilanswer
 

2 ou 3 petits scripts :
 
determiner le nombre de chapitres et la duree de chaque titre :


#!/bin/sh
 
NBTITLE=`tcprobe -i /dev/dvd -H10 2>&1 | grep "DVD title" | cut -f 4 -d " " | cut -d "/" -f 2 | cut -d ":" -f 1`
 
echo $NBTITLE titres trouves.
I=1
 
while [ $I -le $NBTITLE ]
do
 echo titre $I :
 echo "   "`tcprobe -i /dev/dvd -T $I -H 10 2>&1 | tee _tempchap$I_ | egrep "\[Chapter ..\] " | wc -l ` chaps
 echo "   duree : "`grep "title playback time:" _tempchap$I_ | cut -d " " -f 7,8`
        rm -f _tempchap$I_ 2>&1 > /dev/null
 (( I=I+1 ))  
done


 
fabriquer la liste des temps de debut de chapitres pour dvdauthor :


tcprobe -i /dev/dvd -T 1 -H 10 2>&1 | egrep "\[Chapter ..\] " | cut -d " " -f 4 | perl -pi -e 's/\n/,/' | perl -pi -e 's/,$//'


-T 1 est a remplacer par le numéro du chapitre qui convient
 
commande exacte de copie de VOBs

dvdauthor -t -c `cat chapters.list` -p palette.rgb -o dvdtemp -f 'streamdvd -i /dev/dvd -t 1 -f 1.00000 -s 0xe0,0x80,0x81 |'


 
modifications de spuunmux.c pour comptage des couleurs
le resultat du diff entre l'original et ma version :


*** /home/philou/applications/dvdauthor-0.6.10/src/spuunmux.c   2004-03-13 19:00:33.000000000 +0100
--- spuunmux.c  2004-04-09 17:16:57.000000000 +0200
*************** static unsigned char cmap_find(int x,int
*** 433,438 ****
--- 433,451 ----
      return cix;
  }
 
+ void dump_tab(unsigned long colortable[16],unsigned int size)
+ {
+ int i;
+ for(i=0;i<16;i++)
+       fprintf(stderr,"|%02d   ",i);
+ fprintf(stderr,"|\n" );
+ for(i=0;i<16;i++)
+       fprintf(stderr,"|%05ld",colortable[i]);
+ fprintf(stderr,"|\n" );
+ for(i=0;i<16;i++)
+       fprintf(stderr,"|%05.2f",(colortable[i]*100.0)/size);
+ fprintf(stderr,"|\n" );
+ }
  static int write_png(char *file_name,struct spu *s,struct colormap *map,int nummap)
  {
      unsigned int a, x, y, nonzero;
*************** static int write_png(char *file_name,str
*** 441,451 ****
      png_structp png_ptr;
      png_infop info_ptr;
 
      temp = out_buf = malloc(s->xd * s->yd * 4);
!     nonzero=0;
      for (y = 0; y < s->yd; y++) {
          for (x = 0; x < s->xd; x++) {
              unsigned char cix=cmap_find(x+s->x0,y+s->y0,map,nummap,s->img[y * s->xd + x]);
              *temp++ = bpal[cix&15].r;
              *temp++ = bpal[cix&15].g;
              *temp++ = bpal[cix&15].b;
--- 454,470 ----
      png_structp png_ptr;
      png_infop info_ptr;
 
+ unsigned long cix_count[16];
+ int i,nb;
+ for(i=0;i<16;i++) cix_count[i]=0;
+
      temp = out_buf = malloc(s->xd * s->yd * 4);
!     nonzero=0;nb=0;
      for (y = 0; y < s->yd; y++) {
          for (x = 0; x < s->xd; x++) {
+ // les pixels sont dans s->img ou dans map
              unsigned char cix=cmap_find(x+s->x0,y+s->y0,map,nummap,s->img[y * s->xd + x]);
+ if ((cix>>4)*17>0) {nb++;(cix_count[cix&15])++;}
              *temp++ = bpal[cix&15].r;
              *temp++ = bpal[cix&15].g;
              *temp++ = bpal[cix&15].b;
*************** static int write_png(char *file_name,str
*** 457,463 ****
          free(out_buf);
          return 1;
      }
!
      fp = fopen(file_name, "wb" );
      if (!fp) {
        fprintf(stderr, "error, unable to open/create file: %s\n",
--- 476,482 ----
          free(out_buf);
          return 1;
      }
! dump_tab(cix_count,nb);
      fp = fopen(file_name, "wb" );
      if (!fp) {
        fprintf(stderr, "error, unable to open/create file: %s\n",


j'appelle cette commande comme ça :
spuunmux -v 1 -o ./tmp/sub -s 1 ./dvdok/VIDEO_TS/VTS_01_1.VOB
 
il continue a extraire les .png d'un VOB, mais affiche en plus un tableau donnant les pourcentage d'utilisation de chaque index de couleur non transparente dans chaque PNG.
 
 
Voila :)
Si vous voulez des precisions ou des infos, ou si une bonne ame veux m'aider a ameliorer, n'hesitez pas ;)


Message édité par philou_a7 le 30-04-2004 à 10:59:54
n°467400
jotenakis
Posté le 30-04-2004 à 12:18:28  profilanswer
 

je ne dois pas être doué, j'arrive pas à appliquer tes patches :  


patch --dry-run dvdvob.c dvdmodif
patch: **** malformed patch at line 7: {


 
et  


patch --dry-run spuunmux.c spumodif
patching file spuunmux.c
Hunk #1 FAILED at 433.
Hunk #2 FAILED at 454.
Hunk #3 succeeded at 476 with fuzz 1.
2 out of 3 hunks FAILED -- saving rejects to file spuunmux.c.rej


 
 [:zoutte]

n°467516
jc the gre​at
Posté le 30-04-2004 à 13:55:18  profilanswer
 

[:toyot]

n°467560
philou_a7
\_o&lt; coin ! &gt;o_/
Posté le 30-04-2004 à 14:27:55  profilanswer
 

Heu je sais pas si le patch est applicable directement, j'ai juste fait un diff -p dvdvob.c dvdvob.c.orig pour le generer :D
 
T'es sûr d'avoir les sources de la 0.6.10 ?

n°467574
jotenakis
Posté le 30-04-2004 à 14:36:50  profilanswer
 

oui, j'ai la 0.6.10. tu peux mettre en ligne ces 2 fichiers modifiés ?
ou dans ma BAL : t u x r i p at f r e e dot fr .

n°467576
philou_a7
\_o&lt; coin ! &gt;o_/
Posté le 30-04-2004 à 14:38:16  profilanswer
 

ce soir ;)
suis au bureau là :p
 
(au pire tu peux le faire a la main :D y a pas des tonnes de lignes a changer :D)

n°467698
ZeBib
4tus
Posté le 30-04-2004 à 16:49:39  profilanswer
 

bon beh drapal hein, un bon topic comme ça faut le garder sous la main  :hello:

n°468018
philou_a7
\_o&lt; coin ! &gt;o_/
Posté le 30-04-2004 à 20:47:15  profilanswer
 

Pour les fichiers en version modifiée :
http://philoua7.free.fr/dvd/
 
Il y a les 2 patchs ci dessus, et aussi le patch de dvdauthor pour ignorer le paquet final malformé.

n°468262
jotenakis
Posté le 01-05-2004 à 01:09:57  profilanswer
 

thanks !  :bounce:  
je regarde ce WE. :hello:

n°468710
jotenakis
Posté le 01-05-2004 à 17:41:35  profilanswer
 

une piste pour les sub.
mencoder -dvd-device /dev/dvd dvd://$title -o /dev/null -nosound -ovc copy -vobsubout subs -vobsuboutindex 0 -sid 0
 
pas la peine de laisser jusqu'au bout...
 
ensuite un cat subs.idx donne


# VobSub index file, v7 (do not modify this line!)
#
# Generated by MPlayer 1.0pre4-3.3.2
# See <URL:http://www.mplayerhq.hu/> for more information about MPlayer
# See <URL:http://vobsub.edensrising.com/> for more information about Vobsub
#
size: 720x576
palette: 0d00ee, ee450d, 101010, eaeaea, 0ce60b, ec14ed, ebff0b, b367db, 7b7b7b, d1d1d1, 0d6f44, 0d790d, ec840c, cf0dec, cfa80c, dee037
# ON: displays only forced subtitles, OFF: shows everything
forced subs: OFF
 
# Language index in use
langidx: 0
 
id: fr, index: 0
timestamp: 00:00:00:287, filepos: 000000000
timestamp: 00:00:01:280, filepos: 000000800
timestamp: 00:00:02:480, filepos: 000001000


on peux y voir une palette, est-elle du bon format où y a ptet une conversion à faire ?

n°468782
jotenakis
Posté le 01-05-2004 à 18:26:02  profilanswer
 

ça marche !
 
j'ai crée le fichier palette.rgb en metant en colonne les valeurs issues du subs.idx et ai continué selon ta méthode philou. La lecture est ok avec mplayer ou xine...
 
Sinon, je pense que l'étape predvd est inutile, on peux requantizer à la volée en prenant le facteur donné par une commande du type : "streamanalyze -i /dev/dvd -t 12 -s 0xe0,0x20,0x21,0x80".
 
 :love:

n°469234
philou_a7
\_o&lt; coin ! &gt;o_/
Posté le 03-05-2004 à 10:19:58  profilanswer
 

jotenakis a écrit :

ça marche !
 
j'ai crée le fichier palette.rgb en metant en colonne les valeurs issues du subs.idx et ai continué selon ta méthode philou. La lecture est ok avec mplayer ou xine...
 
Sinon, je pense que l'étape predvd est inutile, on peux requantizer à la volée en prenant le facteur donné par une commande du type : "streamanalyze -i /dev/dvd -t 12 -s 0xe0,0x20,0x21,0x80".
 
 :love:


 
ah, ca y est, forum is back :p
 
Bon, 2 infos a rajouter :)
 
1/ L'etape predvd est utile :p car elle permet de calculer le facteur de requant au plus juste. Si tu calcules le requant depuis le dvd complet, tu vas faire intervenir tous les flux inutiles dans le calcul (langues et sous titres en trop) et tu vas "requanter" plus fort que necessaire, ce qui joue forcement sur la qualité de l'image.
Si tu manques de place disque, ok, tu peux voir a passer cette etape, si tu es sur de garder tous les flux, pareil, mais sinon, ca serait bête :p
 
2/ Pour l'affectation des langues, j'ai été bidon :lol:
En fait, les parametres de dvdauthor fonctionnent mais j'avais mal fait la syntaxe je pense.
Sur le dernier lancement de dvdauthor (si on relance un dvdauthor sur ce flux, les infos seront perdues), il suffit de lancer :

dvdauthor-patch -t -p palette.rgb -a <langues audios> -s <langues subs> -c `echo chapters.list` -o dvdok -f 'streamdvd -i ./pre-dvd -f <facteur de requantisation> -t 1 -s <numeros de flux> |'


avec les codes langues dans l'ordre des flux et séparées par des virgules :)
Par exemple, pour un film avec  
0x80=francais 0x81=anglais 0x83=allemand
0x20=francais 0x23=allemand
on lancera :
dvdauthor-patch -t -p palette.rgb -a fr,en,de -s fr,de -c `echo chapters.list` -o dvdok -f 'streamdvd -i ./pre-dvd -f <facteur de requantisation> -t 1 -s 0xe0,0x80,0x81,0x83,0x20,0x23 |'
 
il ne faut pas utiliser la syntaxe ac3+fr mais directement fr en fait... c'etait mon erreur :p


Message édité par philou_a7 le 03-05-2004 à 10:20:34
n°469240
jotenakis
Posté le 03-05-2004 à 10:35:11  profilanswer
 

je ne suis pas trop d'accord avec le 1/. Le facteur de requant peut être calculé avec streamanalyse en précisant sur quels flux avec l'option -s...
 
exemple : "streamanalyse -i /dev/dvd -s 0xe0,0x80,0x21"
 
EDIT : c'est pas -c `echo chapter.list` mais -c `cat chapter.list`.


Message édité par jotenakis le 03-05-2004 à 10:41:27

---------------
Jotenakis
n°469243
philou_a7
\_o&lt; coin ! &gt;o_/
Posté le 03-05-2004 à 10:38:38  profilanswer
 

Pour formater correctement le resultat de la commande  

mencoder -dvd-device /dev/dvd dvd://$title -o /dev/null -nosound -ovc copy -vobsubout subs -vobsuboutindex 0 -sid 0


 
il suffit de recuperer sa sortie et de la passer dans cette commande :

cat resultat_mencoder_palette | grep "palette:" | sed "s/\s/\n/g" | sed "s/,//g" | egrep "^[0-9a-fA-F]{6}$" > palette.rgb


 
et palette.rgb est bien formé :)

n°469244
philou_a7
\_o&lt; coin ! &gt;o_/
Posté le 03-05-2004 à 10:39:39  profilanswer
 

jotenakis a écrit :

je ne suis pas trop d'accord avec le 1/. Le facteur de requant peut être calculé avec streamanalyse en précisant sur quels flux avec l'option -s...
 
exemple : "streamanalyse -i /dev/dvd -s 0xe0,0x80,0x21"


 
.... ( <- illustration du grand vide dans ma tête)
 
ok, je suis une grosse nouille qui lit trop vite les docs  :cry: :lol: :lol: :lol:

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  16  17  18  19  20  21
Page Précédente

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Multimédia

  DVD9 vers DVD5 : Dvddump - équivalents à DVDShrink sous Linux

 

Sujets relatifs
9 Telecom et Linux ?linux mandrake : cd rom -> iso -> hd -> mountage
conversation audio sous linux??linux avec windows me
distrib linux sur une disquette.Linux Suse 9.0, ca plante dès l'install !!!!
FBlogo sous linux suse 8.1 ?Linux, NT, DHCP et Ghost ????
pb graveur qui freeze sous linuxle pc ne reconnait pa le cd de linux
Plus de sujets relatifs à : DVD9 vers DVD5 : Dvddump - équivalents à DVDShrink sous Linux


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR