Mettre plusieurs titres dans le même VTS

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • boursicot
    Gold Member
    Gold Member
    • Apr 2006
    • 118

    Mettre plusieurs titres dans le même VTS

    Bonjour

    J'ai plusieurs épisodes d'une série enregistrée à la télé. Chaque épisode a donc une structure DVD qui lui est propre.
    Je souhaite réunir tous ces épisodes dans un même VTS pour pouvoir utiliser ensuite la fonction Jump VTS_TT.
    Comment puis-je faire ?.

    Merci de votre aide
  • r0lZ
    Lord of Digital Video
    Lord of Digital Video
    • Mar 2004
    • 1508

    #2
    Pas facile. Il est possible de créer des cells avec PgcEdit, et de les remplacer ensuite avec VobBlanker, mais ça me parait difficile et délicat. Il vaut mieux, à mon avis, inclure ces episodes dans des VTSs séparés, et y sauter par l'intermédiaire de dummy PGCs dans le VMGM. Tu sais comment faire ça maintenant, non?
    r0lZ
    PgcEdit homepage (hosted by VideoHelp)
    Unofficial mirror (in Poland)

    Comment

    • boursicot
      Gold Member
      Gold Member
      • Apr 2006
      • 118

      #3
      Oui, effectivement, je sais faire cela maintenant.
      Mais avec cette méthode, le passage d'un titre à l'autre n'est pas fluide (on entend le lecteur "sauter" au VMGM, puis au titre suivant). Je souhaitais éviter cela.
      Le remplacement des cellules avec VobBlanker m'est également famillier, mais dans ce cas, je pense qu'on ne peut plus afficher la durée de l'épisode en cours sur le lecteur (c'est la durée de toutes les cellules qui s'affiche n'est-ce pas ?.)
      En résumé ce que j'essayais de faire était :
      - des instruction de navigation simples
      - une lecture fluide
      - un accès à la durée de l'épisode en cours.
      Est-ce la quadrature du cercle ?.

      Comment

      • r0lZ
        Lord of Digital Video
        Lord of Digital Video
        • Mar 2004
        • 1508

        #4
        Franchement, je ne sais pas si il existe une méthode réellement fiable pour faire ça.

        Il existe bien la fonction "Join Clips" dans IfoEdit, qui pourrait t'aider, mais elle ne m'a pas paru fiable. Mon Sony se bloque en effet souvent (mais pas toujours) lors du passage d'un clip à l'autre, et je pense me souvenir qu'il n'est pas possible de joindre correctement des clips qui font plusieurs fichiers VOBs (donc des clips longs.) Et de toutes façons, il te faut aussi récupérer les VOBs modifiés, en conservant l'authoring d'origine. N'oublies pas non plus que les flux de tous les clips doivent impérativement être totalement identiques, et dans le même ordre dans tous les clips que tu joins.

        Tu peux essayer, mais à mon avis, c'est fort compliqué pour un faible avantage. Si tu mets plusieurs titres différents sur le même DVD, est-il vraiment nécessaire que la transition soit immédiate et "seamless"?

        PS. Il ne devrait pas être impossible d'afficher la durée d'un titre avec cells remplacées par VobBlanker. Je n'ai en tous cas jamais constaté ça. Ou alors, c'est dû à un autre problème. Attention cependant de ne pas remplacer une cell par plusieurs cells avec des VOB IDs différentes, car là, VB a un méchant problème de timings. (A propos, cette partie vient d'être améliorée par Jsoto. Il y a maintenant un warning dans ce cas, depuis la dernière beta sortie aujourd'hui même!)
        r0lZ
        PgcEdit homepage (hosted by VideoHelp)
        Unofficial mirror (in Poland)

        Comment

        • boursicot
          Gold Member
          Gold Member
          • Apr 2006
          • 118

          #5
          Bonjour

          J'ai donc créé autant de cellules que d'épisodes avec pgcedit, et les ai "remplies" avec VobBlanker : ça marche, j'ai bien tous mes épisodes dans un seul et même VTS (VTS_01_1 à VTS_01_4).
          Comme je le pensais, la durée qui s'affiche sur mon lecteur est bien celle de tout le pgc (donc de tous les épisodes), non celle de la cellule en cours de lecture. Il y a-t-il un moyen de faire afficher la durée de la cellule ?.

          Les cellules sont donc lues les unes derrières les autres. Chacune possède une "cell command" qui met le bouton du menu face à l'épisode en cours de lecture. Cela marche parfaitement en lecture normal, mais lorsque je passe d'une cellule à l'autre (donc d'un épisode à l'autre) avec la touche skip de la télécommande de mon lecteur, là, ça ne suit pas : la "cell command" n'est apparemment pas lue. Il y a-t-il un moyen de lire cette commande dans ce cas (comme lorqu'on appuye sur "next pgc", avec le n° du pgc courant dans la case correspondante dans pgcedit, les posts commandes sont lues) ?.

          Pour rester dans les pgc : si je vois bien à quoi correspondent Previous et Next PGCN link, en revanche, je ne vois pas bien à quoi correspond "Go Up (Return) link". Peux-tu m'éclairer ?.

          A propos des titres. Dans un autre projet, j'ai 4 VTS. En face de chacun d'eux, la fenêtre gauche de pgcedit me met TTN 1. Cela veut-il dire qu'un VTS peut contenir plusieurs TTN ?. Et dans ce cas, comment rajoute t-on un TTN à un VTS ?. Et quel est l'intérêt d'avoir plusieurs TTN dans un même VTS ?.

          Et enfin, une question que je me pose afin de simplifier les instructions de navigation. Est-il possible que la destination d'un saut (jump, call, link) soit définie par un gprm et non par une valeur (au lieu de JumpTT 2, faire JumpTT gprm(0), avec gprm(0)=2 par exemple) ?.

          Comme tu peux le constater, je suis en plein dans la navigation.
          Par avance, merci de ton aide.

          Comment

          • r0lZ
            Lord of Digital Video
            Lord of Digital Video
            • Mar 2004
            • 1508

            #6
            Je vais devoir te décevoir! Les specification du DVD-Vidéo ont manifestement été faites par des gens peu gâtés par la nature, intellectuellement parlant! Il y a donc effectivement énormément de limitations idiotes et incompréhensibles...
            Il y a-t-il un moyen de faire afficher la durée de la cellule ?
            Non!
            Certains lecteurs peuvent le faire (comme mon vieux Sony à 1000€) mais c'est plutôt rare, et de toutes façons, ça ne peut pas être programmé.
            Par contre, tu peux recopier le PGC autant de fois qu'il y a d'épisodes (avec Clone PGC) puis retirer tous les épisodes sauf un dans chacun de ces PGCs. Tu pourras donc appeler chacun de ces PGCs séparément pour jouer un épisode particulier, ou le PGC qui les contient tous pour jouer toute la série.
            Tu peux tester le contenu du SPRM 4 dans tes menus pour déterminer quel épisode a été joué, pour, par exemple, afficher automatiquement le bouton correspondant à l'épisode suivant. Tu peux aussi initialiser un GPRM dans chaque titre pour pouvoir le tester en temps voulu. (Cette 2eme méthode est plus fiable, car certains players mettent n'importe quoi dans le SPRM 4!)

            Les cellules sont donc lues les unes derrières les autres. Chacune possède une "cell command" qui met le bouton du menu face à l'épisode en cours de lecture. Cela marche parfaitement en lecture normal, mais lorsque je passe d'une cellule à l'autre (donc d'un épisode à l'autre) avec la touche skip de la télécommande de mon lecteur, là, ça ne suit pas : la "cell command" n'est apparemment pas lue. Il y a-t-il un moyen de lire cette commande dans ce cas (comme lorqu'on appuye sur "next pgc", avec le n° du pgc courant dans la case correspondante dans pgcedit, les posts commandes sont lues) ?.
            Non!
            Les cell commands ne sont effectivement appelées que quand le playback atteint la fin de la cellule. Il n'y a rien qu'on puisse faire.
            Par contre, si tes cell commands ne servent qu'a initialiser un GPRM histoire de pouvoir retrouver où tu en étais dans la lecture, tu peux probablement utiliser le SPRM 7. Il contient en principe le numéro du dernier chapitre lu dans un Title domain, mais certains players y placent le numéro de programme. Ça n'a pas beaucoup d'importance, car généralement, le numéro de programme est le même que le numéro de chapitre.

            A titre d'exemple, voici ce que j'utilise pour afficher automatiquement le bouton du menu chapitre correspondant au dernier chapitre lu.
            Dans cet exemple, j'assume que:
            - le GPRM 15 est inutilisé.
            - Le film est le Titre 1, et contient 20 "vrais" chapitres (plus éventuellement un petit chapitre à la fin pour pouvoir utiliser la télécommande.) S'il y en a plus, ou moins, il faut ajouter ou retrancher des LinkPGCNs aux lignes 14 à 18.
            - il y a plusieurs pages de menu de chapitres, avec 4 chapitres par page. Ça aussi, bien entendu, ça détermine le nombre de lignes 14 à 18.
            - les "pages" du menu chapitre se trouvent dans les PGCs 6 à 10. (Changer les commandes 14 à 18 et 21 par des LinkCN si les pages de menu sont toutes dans le même PGC.)
            Code:
            # tester si c'est bien le Titre 1 qui était le dernier lu
            # (sinon le SPRM 7 ne contient pas le No. de chapitre qui nous intéresse.)
               1  Set gprm(15) =(mov) sprm(4:Title number in volume) 
               2  if ( gprm(15) != 1 ) then { Goto line 19 } 
            # Recopier le No. de chapitre dans un GPRM, pour pouvoir le tester
               3  Set gprm(15) =(mov) sprm(7:Chapter number (or PGN)) 
            # Si le dernier chapitre lu est > que le vrai nombre de chapitres,
            # il s'agit probablement d'une petite cell supplémentaire,
            # dont il ne faut pas tenir compte.
               4  if ( gprm(15) > 20 ) then { Goto line 19 } 
            # Déterminer le bouton à pré-sélectionner (bouton 1 à 4)
               5  Set gprm(15) -=(sub) 1 
               6  Set gprm(15) %=(mod) 4 
               7  Set gprm(15) +=(add) 1 
               8  Set gprm(15) *=(mul) 1024 
               9  (SetHL_BTN) Set Highlighted Button =(mov) gprm(15) 
            # Determiner la "page" de menu où se trouve le bouton à activer
              10  Set gprm(15) =(mov) sprm(7:Chapter number (or PGN)) 
              11  Set gprm(15) -=(sub) 1 
              12  Set gprm(15) /=(div) 4 
              13  Set gprm(15) +=(add) 1 
            # et sauter à la page correspondante du menu de chapitre
              14  if ( gprm(15) == 1 ) then { LinkPGCN PGC 6 } 
              15  if ( gprm(15) == 2 ) then { LinkPGCN PGC 7 } 
              16  if ( gprm(15) == 3 ) then { LinkPGCN PGC 8 } 
              17  if ( gprm(15) == 4 ) then { LinkPGCN PGC 9 } 
              18  if ( gprm(15) == 5 ) then { LinkPGCN PGC 10 }
            # Au cas ou un autre titre a été joué avant d'appeler ce PGC,
            # ou si le No. de chapitre est trop grand,
            # assumer qu'on veut afficher le bouton du 1er chapitre
              19  NOP 
              20  (SetHL_BTN) Set Highlighted Button =(mov) 1024 (button 1) 
              21  LinkPGCN PGC 6
            Pour rester dans les pgc : si je vois bien à quoi correspondent Previous et Next PGCN link, en revanche, je ne vois pas bien à quoi correspond "Go Up (Return) link". Peux-tu m'éclairer ?.
            GoUp correspond à la touche Return, parfois représentée par une flèche brisée orientée vers le haut. Dans le menu domain, cette touche est en principe faite pour revenir au menu précédent, mais elle peut servir aussi à reprendre le titre où il a été interrompu.
            Attention que ces 3 links (Prev, Next et GoUp) ne peuvent être utilisé dans un Title domain que pour sauter à un PGC appartenant au même TTN! Comme il est très rare qu'un même TTN contienne plusieurs PGCs, elles sont donc de peu d'utilité. De plus, si elles sont définies (> 0) le TTN est automatiquement considéré comme non-séquentiel par certains players, ce qui a certains désavantages.

            A propos des titres. Dans un autre projet, j'ai 4 VTS. En face de chacun d'eux, la fenêtre gauche de pgcedit me met TTN 1. Cela veut-il dire qu'un VTS peut contenir plusieurs TTN ?. Et dans ce cas, comment rajoute t-on un TTN à un VTS ?. Et quel est l'intérêt d'avoir plusieurs TTN dans un même VTS ?.
            Oui, il peut y avoir 99 TTNs dans un même VTS.
            Chaque Title DOIT avoir son propre No. de TTN. Par exemple, si tu as les titres 3 et 4 dans le même VTS, ils seront les TTNs 1 et 2.
            Un même titre peut occuper plusieurs PGCs. Ils sont alors "non-séquentiels". Dans ce cas, tous les PGCs du même Title portent le même numéro de TTN. C'est surtout utilisé pour les jeux, et certains slide shows.

            L'intérêt d'avoir plusieurs Titres dans un même VTS n'est pas forcément très grand, sauf si certains de ces titres contiennent des cells identiques. Ça permet de réutiliser les même portions de VOBs, et donc de gagner de la place disque. C'est parfois utilisé dans des bonus, ou on te montre un extrait du film (cell réutilisée) suivie d'un documentaire sur le tournage de cette scène.
            Autre avantage: ça permet de simplifier la gestion des menus, puisqu'il ne faut pas passer par le VMGM pour sauter d'un titre à l'autre.
            En fait, il n'est nécessaire de mettre les titres dans des VTS séparés que si leurs attributs de flux sont différents. (Par exemple, on ne peut pas mettre un titre en 16:9 et un en 4:3 dans le même VTS.)

            PgcEdit ne permet pas de joindre plusieurs VOBs appartenant à des VTS différents (quoi que ce soit dans ma ToDo list depuis longtemps.) On ne peut donc pas ajouter un tout nouveau titre à un VTS. Par contre, il y a plusieurs cas ou un nouveau TTN (et Titre) est crée, par exemple Clone PGC, qui recopie un PGC dans le même VTS, et avec le même contenu, ou New 'Play All' Title, qui concatène toutes les cells d'un VTS pour créer un seul gros titre, qui pourra être appelé pour jouer tout le contenu du VTS.

            Et enfin, une question que je me pose afin de simplifier les instructions de navigation. Est-il possible que la destination d'un saut (jump, call, link) soit définie par un gprm et non par une valeur (au lieu de JumpTT 2, faire JumpTT gprm(0), avec gprm(0)=2 par exemple) ?
            Non! (De nouveau!)
            Il est nécessaire de recopier la même ligne de code autant de fois qu'il le faut, comme dans mon exemple plus haut. C'est une des limitations les plus frustrantes imposées par les crétins d'experts qui ont pondu les specs!
            r0lZ
            PgcEdit homepage (hosted by VideoHelp)
            Unofficial mirror (in Poland)

            Comment

            • boursicot
              Gold Member
              Gold Member
              • Apr 2006
              • 118

              #7
              Une grand merci pour toutes ces informations.
              Je pense que je vais retenir la configuration suivante :
              Comme j'ai deux pages de menu, avec 7 épisodes sur chaque page, je vais faire 2 VTS, avec 7 TTN pour chacun.
              Ainsi,
              - c'est bien la durée de l'épisode en cours qui s'affichera à l'écran
              - le retour à la bonne page de menu (dans le VTSM correspondant) sera évident,
              - en passant d'un titre à l'autre avec la télécommande, les commandes devraient être lues (peux-tu d'ores et déjà me le confirmer, ou dois-je attendre de faire le test ?).

              En commençant hier soir, j'ai donc créé 14 TTN grâce à Clone PGC, et je me suis dit qu'il serait bien pratique d'avoir la possibilité de "Refaire la dernière action" en un seul clic.

              Bonne journée

              Comment

              • r0lZ
                Lord of Digital Video
                Lord of Digital Video
                • Mar 2004
                • 1508

                #8
                Originally Posted by boursicot
                - en passant d'un titre à l'autre avec la télécommande, les commandes devraient être lues (peux-tu d'ores et déjà me le confirmer, ou dois-je attendre de faire le test ?).
                Que veux-tu dire? S'il s'agit de sélectionner le titre à jouer en tapant son numéro directement à la télécommande, alors oui, les pre-commands devraient être exécutées. Je dis "devraient" car je ne suis pas sur que tous les players agissent de la même manière.

                Note aussi qu'en principe, si tu pousses une seule fois le bouton Stop durant le playback, puis que tu utilise la télécommande pour lancer un titre précis, il sera joué, mais avant d'exécuter les pre-commands, tous les GPRMs sont remis à zéro. Certains DVD commerciaux utilisent ça pour empêcher qu'on puisse appeler un titre de cette façon. Au début des pre-commands, ils testent un GPRM, et s'il vaut 0, ils renvoient au FP-PGC.
                Si tu veux pouvoir appeler n'importe quel titre avec la télécommande, il faut donc s'arranger pour que les pre-commands continuent à fonctionner normalement même quand tous les GPRMs sont à 0.

                Si tu presse Play après avoir pressé Stop durant le playback d'un titre, le playback retourne à l'endroit où il a été interrompu, sans modification des GPRMs.

                Presser deux fois Stop effectue théoriquement un reset complet, comme si tu venais d'insérer le DVD dans le lecteur, mais il ne le démarre pas automatiquement.
                Last edited by r0lZ; 3 May 2007, 05:31 PM.
                r0lZ
                PgcEdit homepage (hosted by VideoHelp)
                Unofficial mirror (in Poland)

                Comment

                Working...