Problem beim bestimmen des Language-Codes bei der Wiedergabe einer Aufzeichnung

  • Hi!


    Ich habe ein kleines Problem. Folgender Code führt im Livemodus zu erwartungsgemäßen Resultaten:

    Code
    cDevice *dev = cDevice::PrimaryDevice();
    eTrackType trackType = dev->GetCurrentAudioTrack();
    const tTrackId *track = dev->GetTrack(trackType);
    if (track)
    {
    	printf("Lang.: %s\n", track->language);
    }


    Damit wird der language-code der aktuell gewählten Audiospur ausgegeben (also z.B. "deu").
    Wenn ich das ganze jetzt in einem Skin während der Wiedergabe einer Aufzeichnung versuche kommt nichts heraus, also nur ein leerer String. Woran kann das liegen?
    Werden die Codes usw. bei der Wiedergabe nicht sauber gesetzt? Oder kann das garnicht gehen weil das nur im Live-Modus funzt? Wenn letzteres, wie kommt man dann eigentlich an den language-code der aktuellen Wiedergabe?


    Gruß und Danke schon mal,
    Brougs78

    - -- --- ================================================================ --- -- -
    Antec Fusion, Intel E5200, Asus P5N7A-VM (VDPAU), DD CineS2 v6 + DD DuoFlex CI // yavdr-0.6.1
    - -- --- ================================================================ --- -- -

  • Hi!


    Ist wahrscheinlich doch eher ne Frage für Klaus ... werd ihn mal anmailen.


    Gruß,
    Brougs78

    - -- --- ================================================================ --- -- -
    Antec Fusion, Intel E5200, Asus P5N7A-VM (VDPAU), DD CineS2 v6 + DD DuoFlex CI // yavdr-0.6.1
    - -- --- ================================================================ --- -- -

  • Hallo Brougs78,


    mmh,
    jetzt wo Du es ansprichst fällt mir dies auch auf.


    Vermutung:
    zb. dvd-plugin und vcd-plugin benutzen "DeviceSetAvailableTrack(..., etc)", der vdr definiert dies zwar, aber benutzt es anscheinend selbst nicht, äußert sich auch darin, daß man die entsprechenden Werte des vorherigen "Live"- bzw. "Transfer"-Modes in "Menü"->"Audio" bei Wiedergabe von Aufzeichnungen durch den vdr erhält.
    (Unter anderem sind Audiospuren auswählbar, die in der Aufzeichnung nicht existieren)


    <edit> allerdings hab ich noch Version 1.3.22, in neueren wird das wohl irgendwie gesetzt, betrifft aber nicht ganz Deine Frage, lasse es aber trotzdem mal alles stehen.


    Gruß
    Frank

  • nochmaliger Test mit vdr 1.3.35:


    also "track->language" wird nicht gesetzt, allerdings "track->description" ,aber auch nur, wenn man das audio-Menü mal aufgerufen hat.


    <edit> mittels "SetTrackDescription(bool Live)" in menu.c
    Zeile 2694 u. 3785 bei vdr 1.3.36, wenn dort statt "NULL" "p->language" stände, dann wäre wohl auch die Sprache verfügbar, aber auch nur, wenn das Audio-Menü mal aufgerufen wurde.



    Gruß
    Frank

  • Hi _Frank_!


    Danke für die Tests. Ich werde das mal an Klaus weiterleiten. Ev. ändert er da ja noch was ... wäre wirklich ganz praktisch.


    Gruß,
    Brougs78

    - -- --- ================================================================ --- -- -
    Antec Fusion, Intel E5200, Asus P5N7A-VM (VDPAU), DD CineS2 v6 + DD DuoFlex CI // yavdr-0.6.1
    - -- --- ================================================================ --- -- -

Jetzt mitmachen!

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