Digital Video Forums  

Go Back   Digital Video Forums > Other > Archive (Closed) > Foreign Language Forums > En Français

 
 
LinkBack Thread Tools Search this Thread Rate Thread Display Modes
Old 26 Dec 2006, 09:33 PM   #1
Gold Member
Gold Member
 
Join Date: Apr 2006
Posts: 118
Default PgcEdit et navigation

Bonjour

J'ai enregistré plusieurs épisodes d'une série TV, que je veux réunir sur un seul DVD. Chaque épisode a bien entendu été diffusé avec un générique de début. Sur le DVD, si je regarde plusieurs épisodes d'affilée, je souhaite que le générique n'apparaissent qu'au premier épisode sélectionné (donc celui à partir duquel je visionne le DVD), et plus entre deux épisodes.
J'ai coupé le générique que j'ai mis dans un vob indépendant.

J'imagine donc le déroulement suivant :
- lecture du menu
- choix de l'épisode de départ
- lecture du générique
- lecture de l'épisode choisi
- lecture de l'épisode suivant
- etc.

Je pense (mais je suis très loin d'être un spécialiste, et mes souvenirs informatiques commencent à dater) qu'il faut mettre en place un système de drapeaux du style :
- au début, drap=0 (par exemple)
- choix de l'épisode de départ
- l'IFO de cet épisode teste drap :
- si drap=0 : - appel du générique (comme un sous-programme),
- mise du drapeau à 1
- si drap=1 : pas d'action particulière
- lecture de l'épisode choisi
- lecture de l'épisode suivant (comme drap=1, le générique ne sera donc pas "appelé")
- etc.

Qui peut m'expliquer comment je peux faire ?.
Ma démarche ci-dessus est-elle correcte ?
Si oui,
- comment met-on en place ce système de drapeau ?,
- peut-on "appeler" un titre comme un sous-programme, celui-ci se terminant par une instruction "return", qui renvoie alors là où il a été appelé ?.

Merci par avance de votre aide.
Bonne journée
boursicot is offline  
Old 26 Dec 2006, 11:48 PM   #2
Lord of Digital Video
Lord of Digital Video
 
r0lZ's Avatar
 
Join Date: Mar 2004
Location: be
Posts: 1,508
Default

En gros, ta méthode est bonne.


Malheureusement, le langage des DVDs est trrrrès pauvre. Pas de sous-routines, donc pas de return. (Il y a l'instruction RSM (Resume) qui y ressemble, mais elle ne permet que de retourner au point ou on a interrompu la lecture d'un title pour aller dans un menu.)

Les variables à utiliser dans un DVD sont les GPRMs. Il y en a 16 (GPRM(0) à GPRM(15)). Tu peux te servir d'un de ces GPRMs comme drapeau. Il y a aussi des SPRMs, qui sont utilisés (et réservés) par le player. On peut les lire, et écrire certains d'entre eux, mais chaque fois avec une commande spécifique.

De plus, il est interdit de sauter d'un titre directement dans un autre, si ceux-ci ne sont pas dans le même VTS (donc, si ils sont dans des VOBs différents.) Dans ce cas, il est nécessaire de sauter dans un PGC du VMGM (dans VIDEO_TS.IFO), et de repartir de là vers le VTS contenant le titre à jouer. Je te conseille donc, en plus de ta méthode, d'utiliser un autre GPRM pour conserver le numéro du dernier titre joué. En comparant ce GPRM, tu peux sauter automatiquement au prochain titre depuis le VMGM.

Aussi, attention au fait que les commandes ne sont généralement pas valides partout! Par exemple, il faut utiliser une instruction Call pour sauter d'un titre dans un menu, et un Jump pour sauter d'un menu dans un autre menu ou un title, ou d'un titre à un autre titre du même VTS! Fais gaffe à ça, car certaine players acceptent à peu près n'importe quoi, mais d'autres vont se bloquer si ils trouvent des commandes illégales!

Comme point de départ, je te conseille (si ce n'est déjà fait) de produire un DVD de base avec l'intro et les 6 épisodes avec DVD Shrink. Il a adopté une méthode relativement simple pour jouer automatiquement les titres l'un après l'autre. (Il utilise le GPRM(0) comme index du titre à jouer.) Essaye de comprendre comment ça marche avec PgcEdit en mode trace. Tu peux aussi, par après, utiliser le plugin DVD Shrink pour améliorer les possibilités de navigation, et analyser ce qui a changé. Ça t'apprendra beaucoup de choses.

Il te sera aussi possible d'importer ton menu, avec PgcEdit. Je te conseille de l'importer dans le VMGM, car c'est nettement plus facile à gérer, mais n'oublies pas que ce menu doit être appelé avec la touche Title Menu, et non avec la touche Root Menu (ou Menu tout court.) Il te faudra probablement aussi changer le type de menu de RootM vers TitleM. Après avoir importé ton menu, tu devras bien sur revoir les commandes, mais à ce stade, ça ne devrait pas être trop compliqué.


Lis aussi la doc (en anglais) chez DVD Replica. C'est une assez bonne introduction, quoi qu'incomplète.
__________________
r0lZ
PgcEdit homepage (hosted by VideoHelp)
Unofficial mirror (in Poland)

Last edited by r0lZ; 26 Dec 2006 at 11:58 PM
r0lZ is offline  
Old 13 Jan 2007, 09:51 AM   #3
Gold Member
Gold Member
 
Join Date: Apr 2006
Posts: 118
Default

Bonsoir

Merci beaucoup pour toutes ces explications, mais ça m'a l'air un peu compliqué pour moi. Vivement que ton logiciel soit traduit sur trad.fr !!!.
En fait, j'ai du mal à me représenter ce que signifie exactement les termes comme PGC, LU, VID, CID ... Connaîtrais-tu un site qui explique tout cela (de préférence en français) ?.

J'ai un DVD avec plusieurs flux audio et de sous-titres. Que dois-je faire pour indiquer à ma platine que par défaut, elle doit lire tel flux audio, et tel flux de ST ?.

Merci et bonne soirée (pour ce qu'il en reste).
boursicot is offline  
Old 13 Jan 2007, 09:56 AM   #4
Gold Member
Gold Member
 
Join Date: Apr 2006
Posts: 118
Default

Une autre petite question : peut-on ajuster le volume d'une piste audio grâce à PgcEdit ?
boursicot is offline  
Old 13 Jan 2007, 10:19 AM   #5
Lord of Digital Video
Lord of Digital Video
 
r0lZ's Avatar
 
Join Date: Mar 2004
Location: be
Posts: 1,508
Default

DVD-Replica est quasiment le seul site qui explique ce genre de chose. Il y a aussi le site DVD-Video Information de mpucoder, beaucoup plus technique, plutôt réservé aux programmeurs, et pas gratos.
A ma connaissance, il n'y a absolument rien en français.

J'espère qu'il y aura un jour une doc pour PgcEdit qui explique aussi un peu les bases. Si j'ai le temps, je la traduirai en français. Pour le moment, un gars est en train de voir s'il peut traduire le programme proprement dit, mais ça prendra du temps!

Pour spécifier quelle piste son et sous-titre il faut jouer, utilises l'instruction SetSTN. Mais le tout est de savoir où la placer! En principe, tu peux la mettre après toutes les pre-commands du Titre (donc, dans PgcEdit, juste avant le label "*** post-commands"), mais il y a des exceptions. Essayes, et si ça ne marche pas, poste un message ici...

Le volume du son est encodé dans la piste son et ne peut pas être modifié par programmation. La seule possibilité est de démultiplexer les VOBs, éditer le fichier son (difficile pour l'AC3 ou le DTS, faisable pour le MP3, et facile pour le WAV), le ré-encoder dans un format compatible DVD, et re-multiplexer le tout. Pas vraiment facile, et il y aura probablement une légère perte de qualité.
Dois-tu vraiment faire ça?
r0lZ is offline  
Old 13 Jan 2007, 07:10 PM   #6
Gold Member
Gold Member
 
Join Date: Apr 2006
Posts: 118
Default

Bonjour et merci pour ces réponses.
Dans mon projet, je suis parti d'un DVD avec menu et j'ai voulu remplacer les titres par d'autres (avec Replace VTST Titles). J'y suis parvenu mais je me suis rendu compte que je ne pouvais plus naviguer dans le titre : accélération avant et arrière OK, mais je ne peux plus aller directement à une position (30mn 30s par ex.). Il y a-t-il une manip à faire pour retrouver cette possibilité de navigation ?.

Bonne journée
boursicot is offline  
Old 13 Jan 2007, 09:41 PM   #7
Gold Member
Gold Member
 
Join Date: Apr 2006
Posts: 118
Default

Je viens de faire le test pour lire un ST par défaut : ça marche.
Je me suis servi des gprm pour faire une navigation comme je voulais : ça marche également. Je n'ai peut-être pas utilisé la méthode la plus élégante, mais le principal ... Une interrogation cependant : apparemment, lorsqu'on veut sauter d'un menu dans un titre en fonction d'une condition (if), cette condition ne peut que comparer 2 gprm, et non pas un gprm à une valeur. Me confirmes-tu cela ?.

Il ne me manque plus que deux choses pour que mon projet soit finalisé.
- la première, c'est l'accès à une position dans un titre (message précédent),
- je vais tenter d'expliquer la deuxième : sur certains DVD dont le générique est en anglais, il apparait une image fixe avec le titre en français avant la lecture du film. Il semblerait (mais c'est toi le spécialiste) que seulement une image soit enregistrée dans le vob, et que ce soit l'ifo qui "dise" que cette image doit être lue pendant 5 secondes (par exemple). Comment faire pour rentrer cette instruction (et quelle instruction) dans l'ifo.

Merci beaucoup par avance de ton aide.
boursicot is offline  
Old 13 Jan 2007, 10:13 PM   #8
Lord of Digital Video
Lord of Digital Video
 
r0lZ's Avatar
 
Join Date: Mar 2004
Location: be
Posts: 1,508
Default

Tu as probablement importé des Titles qui proviennent d'un enregistreur de salon. C'est ça?

Il peut y avoir plusieurs causes:
  • PUOs (Prohibited User Operations) dans les IFOs
    Les PUOs (ou PUOps) empêchent l'utilisateur d'utiliser telle ou telle fonction de la télécommande pendant le playback. Pour les modifier, double-click sur le PGC du titre à modifier pour ouvrir le PGC Editor. Si les Prohibited User Operations sont à 0, pas de problème. Sinon, un clic sur le bouton te permettra de les changer sélectivement. Les PUOs qui t'intéressent sont "Title Play or Search" et "Time or PTT Search".
  • PUOs dans la Title Play Map Table
    Il peut y avoir aussi 2 PUOs définis pour les Titles dans la Title Play Map table. Tu peux les modifier avec Title -> Title Play Map Table. Fais-y attention, car ce sont justement ceux qui nous intéressent.
    Note que tu peux facilement effacer les PUOs de tous les endroits où il peut y en avoir dans les IFOs avec DVD -> Filter Prohibited User Operations. Attention: il n'est généralement pas conseillé de les retirer tous aveuglément dans les domaines de menus (VMGM et VTSM.)
  • PUOs dans les VOBs
    Et il y en a encore dans les VOBs! PgcEdit ne permet pas de les modifier cell par cell, mais tu peux facilement les virer avec le PUO plugin. Installe le plugin, et utilise Plugins -> Prohibited User Operations -> Selectively Clear VOB PUOs.
    J'ai personnellement configuré DVD Decrypter pour qu'il retire automatiquement les PUOs des VOBs (mais pas des IFOs à cause des menus) lors du rip. Je te conseille de faire de même. Par défaut, DVDD ne change aucun PUO.
  • Time Map manquante ou mauvaise
    La Time Map d'un Title permet au player de savoir approximativement où il doit sauter dans les VOBs pour aller à un timing précis. Si cette table est manquante, il ne peut évidement pas le faire. Tu peux reconstruire la table d'un Title avec Title -> Rebuild Time Map of Current PGC (ou VTS pour reconstruire toutes les time maps du même VTS). Plus facile: DVD -> Rebuild All Time Maps of DVD. C'est relativement lent, mais je conseille de le faire de toutes façons.
    Note qu'il y a un plugin qui te permet de vérifier la présence et la validité de chaque time map du DVD.
  • Titles "not-one_sequential" (pas joués en séquence)
    Un Title non-séquentiel n'est pas sensé avoir de Time Map (même si la présence d'une Time Map ne gène pas, et permet même à certains players pas trop regardants sur le standard d'utiliser les fonctions de saut à un timing précis.)
    Un Title est considéré non-séquentiel si il est distribué sur plusieurs PGCs (donc que plusieurs PGCs du même VTS ont le même numéro de TTN.) De même, un Title qui est joué en mode random ou shuffle n'est pas séquentiel. (Les drapeaux random et shuffle sont visibles dans le PGC Editor.) Mais il arrive parfois qu'un Title sont marqué comme non-séquentiel dans les IFOs sans raison valable. Tu peux le vérifier avec Title -> Title Play Map Table. Mais attention: ne change pas ce drapeau sans être sur que le title est réellement séquentiel. De toutes façons, les fonctions Rebuild Time Maps le changera automatiquement au besoin.
  • Présence de Prev/Next/GoUpPGCN links (avec certains players seulement)
    En principe, les PrevPGCN, NextPGCN et GoUpPGCN links ne peuvent être différents de 0 que dans un titre non-séquentiel. Certains players considèrent donc le titre comme non-séquentiel si un de ces links est > 0, et ceci même en l'absence du flag not-one_sequential dans la Title Play Map. Or, il semble (mais ce n'est pas encore tout à fait confirmé) qu'un Prev ou NextPGCN égal au numéro de PGC du domaine soit parfaitement légal dans un titre séquentiel. PgcEdit utilise ça pour la fonction "Enable All Operations", mais malheureusement, certains players refusent par conséquent d'utiliser la Time Map (notamment WinDVD.) C'est idiot, mais si ton player de salon a le même comportement, il te faudra remettre les links à 0 dans le PGC Editor.
  • Access Restricted bit
    C'est un bit (au niveau des cells, donc actif uniquement pendant le playback de certains passages) utilisé extrêmement peu fréquemment qui permet au player de forcer de jouer la cell à vitesse 1 seulement, en interdisant quasiment toutes les manips via télécommande. A ma connaissance, ce bit n'est utilisé que dans les cells ajoutées par ARccOS et RipGuard. Tu peux vérifier leur présence dans la cell list du PGC Editor. Dans la colonne Type Flags, le deuxième chiffre est normalement 0. S'il vaut 32 ou 96, le bit Access Restricted est mis. Ne change pas ça si le DVD est protégé!
Tout ça a l'air particulièrement compliqué, mais ne t'inquiètes pas: ce l'est réellement!
Il est plus que probable que ton problème sera résolu en virant les PUOs et en reconstruisant les Time Maps. Je n'ai signalé le reste que par souci d'être complet.

Last edited by r0lZ; 14 Jan 2007 at 01:17 AM Reason: typo
r0lZ is offline  
Old 13 Jan 2007, 10:25 PM   #9
Lord of Digital Video
Lord of Digital Video
 
r0lZ's Avatar
 
Join Date: Mar 2004
Location: be
Posts: 1,508
Default

Quote:
Originally Posted by boursicot View Post
apparemment, lorsqu'on veut sauter d'un menu dans un titre en fonction d'une condition (if), cette condition ne peut que comparer 2 gprm, et non pas un gprm à une valeur. Me confirmes-tu cela ?.
Pas tout à fait. C'est vrai de certaines commandes, mais pas toutes. Si vraiment la commande dont tu as besoin n'a pas la possibilité de comparer le GPRM à une constante, tu peux soit initialiser d'abord un autre GPRM à cette valeur puis comparer ces 2 GPRMs, soit utiliser la commande GoTo (qui permet la comparaison avec une constante) pour sauter à la ligne qui doit être exécutée si la comparaison est vraie.

Quote:
Originally Posted by boursicot View Post
Il ne me manque plus que deux choses pour que mon projet soit finalisé.
- la première, c'est l'accès à une position dans un titre (message précédent),
Réponse précédente.

Quote:
Originally Posted by boursicot View Post
- je vais tenter d'expliquer la deuxième : sur certains DVD dont le générique est en anglais, il apparait une image fixe avec le titre en français avant la lecture du film. Il semblerait (mais c'est toi le spécialiste) que seulement une image soit enregistrée dans le vob, et que ce soit l'ifo qui "dise" que cette image doit être lue pendant 5 secondes (par exemple). Comment faire pour rentrer cette instruction (et quelle instruction) dans l'ifo.
Il peut y avoir 2 raisons à cela:
- Soit l'image est construite comme dans un slide-show, et la durée du playback est dans le fichier VOB. Elle ne peut être modifiée dans ce cas.
- Soit c'est réellement une image fixe, et sa durée est dans l'IFO. Double-clique sur son PGC, et regarde dans la cell list la colonne marquée Cell Still Time. C'est la durée d'affichage de la cell, en secondes (de 0 à 254; 255 signifie indéfiniment, et n'est utilisé que dans les menus fixes, pour attendre que l'utilisateur sélectionne un bouton.) Note que même si tu mets 0 ici, la cell sera de toutes façons visible au moins une demi seconde (durée minimale de playback d'une cell) plus le temps qu'il faut au player pour trouver la cell suivante à jouer (variant entre 0 et 2 secondes, selon les players.)

Last edited by r0lZ; 13 Jan 2007 at 10:33 PM
r0lZ is offline  
Old 14 Jan 2007, 01:00 AM   #10
Gold Member
Gold Member
 
Join Date: Apr 2006
Posts: 118
Default

GENIAL

Pour l'accès à une position, c'était bien dans la "Title Play Map table" que ça se passait.
Pour l'image fixe, c'était bien "Cell Still Time".

Maintenant, tout est OK. Mon projet est finalisé.
Avec tout ce que j'ai appris en quelques jours, je pense pouvoir faire pas mal de choses. Mais PgcEdit a certainement des possibilités que je ne soupçonne même pas.

Merci beaucoup.
boursicot is offline  
Old 14 Jan 2007, 01:16 AM   #11
Lord of Digital Video
Lord of Digital Video
 
r0lZ's Avatar
 
Join Date: Mar 2004
Location: be
Posts: 1,508
Default

De rien. Merci pour le feedback.

J'ai oublié de préciser que le Cett Still Time est un temps de pause qui s'ajoute à la durée normale du playback de la cell. La pause à lieu à la fin du playback, et la dernière image est affichée pendant la pause. Evidemment, dans le cas d'une cell avec seulement une image fixe, ça ne change pas grand chose.

Attention aussi qu'en cas de pause non-nulle, la cell suivante dans la liste doit avoir son drapeau "seamless" OFF, ou la pause sera ignorée. Mais la plupart du temps, on utilise un cell still time uniquement sur la dernière cell du PGC, et on peut donc ignorer cette remarque.

Last edited by r0lZ; 14 Jan 2007 at 01:29 AM
r0lZ is offline  
 

Bookmarks


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
invalid DVD navigation ?? rainy165 Authoring and Editing 5 12 Sep 2004 06:00 AM
dvd navigation menus patcat88 General Discussions 0 26 Nov 2001 03:41 AM



All times are GMT +10. The time now is 04:12 PM.

Kirsch designed by Andrew & Austin


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Copyright © 1999 - 2018 Digital Digest

Visit DivXLand   Visit dvdloc8.com