mplayer-plugin - Audiospur umschalten

  • Hallo,


    ich habe hier gelesen, daß der VDR das nicht kann.


    Ich habe jetzt eine mkv Kontainer, wo ich auf einem Destop Rechner mit mplayer einfach mit der
    '#' Taste zwischen den Tonspuren umschalten kann.
    (Kapitelauswahl funktioniert komischerweise nicht mit dem mplayer; dies kann ich aber mit
    dem VLC Player, der im Moment noch kein Bild anzeigt -> ich werde noch wahnsinnig :-;)




    Warum funktioniert die Tonspurumschaltung nicht am VDR ?
    Was ist die Ursache ?


    Jogibär

  • "switch_audio" auf ne Taste legen (Im MPlayer Setup). Keine Ahnung ob der Mplayer das auch mit mkv kann, bei AVI gehts auf alle Fälle.


    cu

  • Zitat

    Original von Jogibär
    schon probiert.


    Dann ist der Ton komplett weg.


    Ich hab hier auch gerade nen Thread gesehen der besagt das MPlayer und mkv sich wohl nicht mögen ;) Evtl. ist es ja einfach ein "geht nicht wegen kaputt"?


    Zitat

    Original von Jogibär
    Wiso funktioniert dies bei avi ?
    Das kann doch nur eine Tonspur.


    Wer sagt das? Ich hab hier einige AVIs mit zwei Tonspuren. Und AFAIK hat der AVI Container rein prinzipell nichts gehen mehere Tonspuren.


    cu

  • Also ich hab das jetzt bei meinem vdr so gelöst:


    Wenn ich das mplayer Plugin aufrufe und im Dateibrowser bin kann ich mit der Taste "Blau" eine AID wählen. Das bewirkt aber erst mal nix. Warum? Es entsteht der folgende Aufruf an mplayer.sh:


    /pfad/filename.avi SLAVE AID 2


    In diesem Fall wurde AID 2 eingestellt. Dieser Parameter wird aber von mplayer.sh gar nicht ausgewertet. Also habe ich ganz unten in der mplayer.sh den Aufruf von mplayer um ein -aid $4 erweitert. Sieht dann so aus:


    Code
    CMDLINE="nice --19 $MPLAYER -aid $4 -vo $VO $AOUT $FDSTR $CACHESTR $REMOTE $USERDEF"


    Das nice hab ich übrigens reingenommen, weil meine CPU recht lahm ist (750MHz) und die Wiedergabe manchmal ruckelte.
    $4 funktioniert natürlich nur, wenn der Slave Modus eingeschaltet ist. Wenn der abgeschaltet ist müsste es wohl $3 sein. Das hab ich aber nicht getestet.
    Hilfreich dabei ist es mit einem echo "$@" > /tmp/mplayer.sh.cmdline Danach ein file abspielen und dann mit cat /tmp/mplayer.sh.cmdline schauen, was übergeben wird und die mplayer.sh entsprechend anpassen.


    Für das Umschalten "on the fly" hab ich leider noch nix gefunden...

  • Zitat

    Original von xnalpf
    Für das Umschalten "on the fly" hab ich leider noch nix gefunden...


    Das müsste eigentlich mit einer definierten Taste gehen. Eventuell sind noch weitere Anpassungen am mplayer-Script nötig. Es gab da auch mal einen Patch von Matthias Schwarzott:
    http://unix.miet.ru/pub/linux/…-0.8.7-parameter-aid.diff


    Beispiel für eine benutzerdefinierte Taste (hier die "9")
    mplayer.KeyCmd9 = switch_audio


    in der hg-Version des plugins kann man auch die vdr-Taste Audio dafür verwenden, sofern eine solche Taste angelernt ist.

    VDR1: ACT-620, Asus P8B75-M LX, Intel Core i3-3240, 4 GB DDR3 RAM 1600 MHz, passive Geforce GT1030 von MSI, Sandisk 2TB SSD, 2xWinTV DualHD, Atric-IR-Einschalter. SW: Xubuntu 20.04 auf 64GB Sandisk SSD.

    VDR2: Odroid N2+ mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    VDR3: Tanix TX3 mit CoreELEC und Ubuntu in chroot, WinTV DualHD

  • Hast du den Thread hier mal komplett gelesen? Weiter oben hat Jogibär schon geschrieben, dass der Ton mit switch_audio komplett verschwindet. Ich hab auch switch_audio x mit x=gewünschte aid probiert und auch switch_audio -1 Hat alles nichts genützt. Der Ton verschwindet und bleibt weg bis die Wiedergabe beendet und neu gestartet wird. Im mplayer log hab ich beobachtet, dass die Audiospur und der Decoder gewechselt werden. Also scheint der mplayer zumindest den korrekten Stream zu öffnen. Aber irgendwie verliert er auf dem Weg dahin das Audiodevice. Bei mir erfolgt die Ausgabe übrigens über die DVB-Karte.

  • Ach so - zu dem Patch. Den kannte ich noch nicht. Aber der macht, auf eine wesentlich elegantere Art und Weise, das gleiche wie mein -aid $4. Eleganter, weil er den übergabeparameter AID erkennt und den folgenden Parameter einer passenden Variablen zuweist,
    Sollte man mal dem Maintainer vom mplayer.sh Script aufs Auge drücken...

Jetzt mitmachen!

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