GUI für den Muxman DVD Authoring

  • Zitat von borax

    Sollen diese 'temporären' Kapitel nur als Kapitelmarken erstellt werden oder mit Bild/Clip?

    Beides, dafür gibs ja die 'Nur Marke' Checkbox die dafür auch gültig sein sollte.

    Zitat von borax

    ... ist ein Rundungsproblem bei längeren Streams ... Der Slider hat eben nur 720 verschiedene 'Punkte', ein längerer Stream aber viel mehr als nur 720 I-Frames...

    Was ich meine scheint aber ein anderes Problem zu sein. Nochmal ein Beispiel mit einem kurzem Video von ca. einer Minute (habe einem 1,4 GHz AMD Rechner):
    - Ziehe ich den Schieberegler schnell vom Anfang zum Ende, bleibt der Startframe vom Video stehen.
    - Wird der Schieberegler etwas langsamer gezogen, wird am Videoende ein zufälliges I-Frame aus dem gesammten Video angezeigt.
    - Wird der Schieberegler dann losgelassen, wird das letzte I-Frame des Videos angezeigt.
    - Wird am Videoende wieder auf den Schieberegler gedrückt, wird der Startframe vom Video angezeigt.

    Zitat von borax

    ... versteh ich es immer noch nicht, was Du eigentlich willst.

    OK, dann versuch ich das ganze mal zu kürzen. Projekt soll 3 Menüs enthalten, wobei die ersten 2 Menüs nur 3 Buttons haben und das 3. Menü das Video.
    Menü1:
    - Button1 = LinkPGCN MainMenu
    - Button2 = LinkPGCN MainMenu
    - Button3 = LinkPGCN MainSubMenu1
    Menü2 (MainSubMenu1):
    - Button1 = LinkPGCN MainMenu
    - Button2 = LinkPGCN MainSubMenu2
    - Button3 = LinkPGCN MainMenu
    Menü3 (MainSubMenu2):
    - Testvideo

    Der Code wäre also Button3 -> Button2 -> Filmmenü. Wird ein Button mit der Action = LinkPGCN MainMenu gedrückt, wird ins Menü1 gesprungen und der zuletzt gedrückt Button (Button1, 2 oder 3) ausgewählt/gehighlightet, so dass ein Menüwechsel nicht sichtbar ist.
    Ich suche also eine Möglichkeit, den gedrückten Button zu ermitteln und im danach angezeigten Menü zu setzen.
    Ideal wäre es, wenn bei der Button-Action direkt ein Button von einem anderen Menü gewählt werden könnte, wie es in SpruceUp möglich ist.
    Ich habe schon versucht
    Mov GPRM0, SPRM8
    Mul GPRM0, 1024
    SetHL_BTNN HL_BTNN=GPRM0
    Mov GPRM0, 1
    als Pre Command zu setzen. Aber das funktioniert dann nur in PowerDVD, nicht aber in meinem SAP.

    EDIT:
    Habe gerade erst die neue ChapEditGFD gesehen. Macht sich jetzt SUPER!
    Nur beim verschieben zum Slider-Ende wird wieder der Anfangsframe vom Video angezeigt, vermutlich weil das letzte Frame vom Video meist kein I-Frame ist und deshalb nicht angezeigt werden kann oder der Sliderbereich größer als das Video ist.

  • Zitat

    Macht sich jetzt SUPER!


    Danke, war auch ein 'hartes Stück Arbeit'... Hauptproblem ist/war, der Event Mechanismus von Windows. Z.B. konnte man den automatischen 'Tooltip' nicht aktualisieren. Daher hat der immer 'alte' Timecodes angezeigt... Ich hab den jetzt durch einen eigenen ersetzt.

    Zitat

    Nur beim verschieben zum Slider-Ende wird wieder der Anfangsframe vom Video angezeigt

    Das ist eine 'Eigenheit' der mpeg2lib.dll. Wenn man ein Seek auf eine Position hinter dem letzten I-Frame ausführt, wird das erste Bild zurückgeliefert.
    Als nächstes kommt dann die 'optische' Kapitelanzeige (vmtl. kleine 'Dreiecke' unterhalb der Slider Leiste mit verschiedenen Farben, je nach 'nur Marke', 'mit Bild' oder 'mit Clip'. Im Anhang ein Beispiel für Dein Button Code Problem. Bei mir funktioniert es.

    Zitat

    ...direkt ein Button von einem anderen Menü gewählt werden könnte

    Das geht mit Standard-Befehlen (LinkNextPGC , LinkPrevPGC) prinzipiell schon, aber nur für 'aufeinanderfolgende' Menüs (also MainSubMenu1<->MainSubMenu2, aber nicht MainSubMenu1<->MainSubMenu3)
    In meinem Beispiel verwende ich GPRM5 zum Speichern des zuletzt ausgewählten Buttons.

  • Hi borax,
    auch von mir weiteres Lob für die Arbeit an GfD. War für mich der Einstieg, da man hier eigentlich alles sehr einfach und verständlich präsentiert bekommt um seine Filme auf DVD zu bringen.

    Mit der Nutzung von GfD kommt auf den Geschmack und möchte mehr als einen oder zwei Filme einfach so auf eine DVD brennen.

    Daraus hat sich bei mir ein Problem ergeben, welches nach suchen hier im Forum und anderswo nicht lösen konnte.

    Struktur des DVD-Menue:
    1. Hauptmenue mit meheren Button (jeweils Sprung in ein Submenue)
    2. mehrere Submenue's, je Submenue mehrere Filme

    Problem: Wenn ich auf meiner Fernbedinung die Taste Menue, Titel oder Kapitel drücke, wird ins Hauptmenue gesprungen.

    Eine Lösung habe ich mit dem Setzen von Variablen und bedingten Sprüngen geschafft. Leider komm ich mit dem o.g. Tasten jetzt nur noch ins Submenue.

    Wie kann ich abhängig von den auf der Fernbedienung gedrückten Tasten das richtige Menue anspringen. Also Taste 'Menue' = Hauptmenue und aste 'Titel' = Submenue und Taste Kapitel ohne Funktion, da ich keine Kapitel angelegt habe.

    Grüße aus NRW
    Paul

  • Vielen Dank borax.

    Leider funktioniert das Beispiel auf meinem SAP nicht. Beim wechsel von Menü1 nach Menü2 wird wieder Button1 aktiviert. Hab's dann mal im 'Mark's Tray DVD Player' getestet und der meldet bei den beiden ersten Menüs: "An illegal Navigation command has been encountered. The DVD may not function quite as intended."
    Weißt du, was es mit dem SPRM8 auf sich hat? Ich dachte der ist fürs ermitteln des aktuell ausgewählten Buttons zuständig.

    Jetzt mal nicht wieder als Kritik auffassen, aber wenn der Tooltip Probleme macht, warum verzichtest du nicht darauf und setzt die Ausgabe in den noch freien Bereich genau unter der zuletzt ausgewählten Zeit (links oben)?

    Gruß mrg



  • SPRM8 schreibt bereits Vielfache von 1024 nach GPRM0, du darfst also nicht multiplizieren

    Die illegalen Commands die der Tray Player bemängelt beziehen sich auf die Precommands mit GPRM5.

    im VMGM PGC 1

    1 - Mov GPRM15, 0
    2 - SetHL_BTNN HL_BTNN=GPRM5
    3 - if ( GPRM5 == GPRM15 ) SetHL_BTNN HL_BTNN=1
    4 - Mov GPRM0, 1

    mit Precommand 2 würde SPRM8 auf "null" gesetzt da GPRM5 noch "null" enthält, SPRM8 kann aber nur Vielfache von 1024 haben und nicht "null"

    im VMGM PGC 2

    1 - Mov GPRM15, 0
    2 - SetHL_BTNN HL_BTNN=GPRM5
    3 - Mov GPRM0, 1

    hiermit würde SPRM8 auf 3 gesetzt werden denn mit Button 3 wird GPRM15 auf 3 gesetzt und in die Postcommands gesprungen, in den Postcommands wird GPRM15 nach GPRM5 kopiert und hier GPRM5 nach SPRM8

  • bigotti5
    THX!
    Was würden wir nur ohne Dich machen...

    paul1704
    'Hauptmenü' (in GfD=MainMenu) ist bei MultiVTS immer das Title Menü (=Taste Title auf der FB). Die 'Menu' Taste ist üblicherweise das Titlesetmenu. Man kann das mit Hilfe diverser Register bestimmt in die von Dir erwünschte Funktion 'verbiegen', ist aber ein recht großer Aufwand. Wenn Du kein Kapitelmenü angelegt hast und die 'Kapitel-Taste' auf Deiner FB drückst, hängt es vom Player ab, was der dann anzeigt. Meist wird das Titlesetmenu angezeigt. Vielleicht gibt es eine UOP die einen Sprung zum Kapitelmenü verhindert, aber damit kenne ich mich nicht so gut aus.

  • Hi borax,
    Danke für die schnelle Antwort.:daumen:

    Habe mein 'Problem', mittels setzen von Variablen, bedingten Sprüngen in den pre-commands und setzen von Uops mit PgcEdit, temporär erstmal gelöst.:)

    Für eine sauberere Lösung (ohne die Uops) benötige ich noch weitere Infos.:grübeln:

    Kann mir einer diese Fragen beantworten:
    1. wird bei laufendem Film und betätigen der Taste 'Menu' oder 'Title' auf der FB, das post-command des laufenden Films ausgeführt ?
    2. ist in dem SPRM 'NVTMR' die abgelaufene Zeit des aktuell laufenden Film abgelegt?

    Grüße Paul

  • Hallo bigotti5,
    kurz und knapp, aber Danke.

    Neue Frage: Kann man diese Werte überhaupt irgendwo abfragen und wie bemerkt man ein resume des Bedieners ?

    Auch wieder nein, nein ???;)

    Dann kann man überhaupt irgendwo die gerade ausgeführten Funktionen abfragen?

    Paul

  • Wird mittels der Menu oder Title Taste aus dem Film (besser Title) gesprungen wird vom Player die Aussprungposition gespeichert und mittels RSM Command oder nochmaliges Drücken der Menu bzw Titletaste genau an zuvor gespeicherte Postion gesprungen. Springt man mittels Command (BOV, Cellcommand) muss die Rücksprungposition (Beginn einer Cell) im Command angegeben werden
    zb
    CallSS Root Menu, RSM=3 (30 08 00 00 03 83 00 00)
    Springe zum Rootmenu, Resume Cell 3

    Zitat


    Dann kann man überhaupt irgendwo die gerade ausgeführten Funktionen abfragen?



    Was genau meinst du damit?

  • Hi, ich versuch mal mein Ziel zu beschreiben.

    Also, die DVD soll ein Hauptmenu und 3 Submenu's haben. Je Submenu mehrer Filmsquenzen ohne Kapitel.

    Soweit läuft auch alles, habe gprm benutzt um bei laufendem Film und betätigen der 'Title'-Taste auf der FB (Menue hab ich mit Oops gesperrt) den Sprung ins Hauptmenu wieder ins entsprechende Submenu zu lenken.

    Ein Problem hab ich jetzt mit der 'Resume'-Taste der FB.
    Wenn die 'Title'-Taste auf der FB gedrückt wird und im erscheinenden Submenu mit dem 'Back'-Button ins Hauptmenu gesprungen wird und dort dann die 'Resume'-Taste betätigt wird, wird natürlich an die zuvor gespeicherte Position gesprungen.

    Wird jetzt wieder die 'Title'-Taste gedrückt, erscheint das Hauptmenu -- ich möchte aber das hier das Submenu erscheint.:zorn:
    Jetzt weiss ich aber nicht wo ich hier in den Ablauf eingreifen kann bzw. wo ich die notwendigen Infos über den aktuellen Zustand des DVD-Players abfragen kann.

    Ich hoffe jetzt ist alles etwas deutlicher geworden und die Antwort lautet nicht: "Vollkommen unmöglich"

    Grüße Paul

  • Wenn ich dich richtig verstehe hast in den Precommands zum Film ein GPRM gesetzt, dieses wertest du in den Precommands zum Hauptmenü (ist das ein VMG-Titlemenü oder VTS-Rootmenü??) aus. Wenn du das gesetzte GPRM erst in den Postcommands des Filmes löscht bzw neu setzt müsstest du auch beim zweiten mal ins Submenü kommen....oder ich verstehe dich nicht ganz.

  • Ja, nicht ganz.

    Zitat

    Wenn ich dich richtig verstehe hast in den Precommands zum Film ein GPRM gesetzt, dieses wertest du in den Precommands zum Hauptmenü (ist das ein VMG-Titlemenü oder VTS-Rootmenü??) aus.


    Also ich werte die GPRM's im pre-command des VTS-Rootmenü aus.

    Zitat

    Wenn du das gesetzte GPRM erst in den Postcommands des Filmes löscht bzw neu setzt müsstest du auch beim zweiten mal ins Submenü kommen


    Wenn ich bisher alle Informationen richtig verstanden habe, wird ein post-commando nur am Ende des PGC ausgeführt (also Film läuft bis zum Ende).

    Beim unterbrechen mit der 'Title'-Taste wird das post-commando nicht ausgeführt. Richtig ?

    Mein Problem ist aber der Rücksprung vom Sub- ins Hauptmenue durch betätigen des 'Back'-Button im Submenu durch den User, nachdem er den Film mit der 'Title'-Taste unterbrochen hat. Damit landet er im Hauptmenu, wenn er dann 'Resume' drückt läuft schon der richtige Film, aber, wenn er dann bei weiterlaufendem Film die 'Title'-Taste wieder drückt, landet er im Hauptmenu und nicht im zum Film passenden Submenu (wäre mein Wunsch).

    Ich glaube ich sperre einfach die Resume-Funktion im Hauptmenu, ist aber eigentlich nicht was ich möchte.

    Hoffe ist jetzt ein bisschen klarer geworden.

    borax: Mir fällt da gerade die Frage ein, ist es eigentlich möglich einige Oops als mögliche Parameter in GfD einzubauen oder ist der Aufwand zu groß?
    Grüße Paul

  • Wenn ich dich richtig verstehe setzt du beim Back Command besagtes GPRM neu um ins Hauptmenü zu kommen.
    Wenn dem so ist kannst du ein "Set GPRM + LinkPGC" Command benutzen und im Hauptmenü auswerten
    z.b
    Button Command:
    GPRM2=1;LinkPGC Hauptmenü

    im Hauptmenü:
    1: If GPRM2 & GPRM2 goto 3 (bedeutet "wenn GPRM2 nicht null dann gehe zu Command in Zeile 3")
    2: deine Auswertung des anderen GPRMs
    3: Rücksetzen von GPRM2

    musst du natürlich an deine Struktur anpassen

  • Hallo und Guten Morgen,
    ja so in etwa mach ich es.

    Nur, das Problem mit der 'Resume'-Taste auf der FB lässt sich dadurch nicht lösen. Ich weiss nicht wie ich das FB-Kommando abfangen kann um Kommandos einzufügen oder so.

    Wenn ich es jetzt richtig sehe, hat man auf nicht auf alle FB-Kommandos zugriff.

    Ich werd mein Problem jetzt damit aus der Welt schaffen, in dem ich das Kommando im Hauptmenu mit Oops verbiete.

    Gruß Paul

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!