mplayer bei Ausgabe auf 2 Bildschirmen

  • Hi,


    ich benutze den aktuellen yavdr 0.5 mit Frontend softhddevice / vdpau und 2 Bildschirmen (TV/Beamer) und schalte zwischen diesen mit "temporär auf 2. Bildschirm schalten" um.
    Leider startet das Bild des mplayer immer auf dem primären Bildschirm, d.h. das gerade aktive Display wird nicht berücksichtigt.


    Wie kann ich das korrigieren, oder zumindest die Ausgabe immer auf das 2.Display lenken, was ist die config dazu (u.a. Kommandozeile von mplayer listet kein display explizit)?


    Ich schätze irgendwie so ähnlich


    Auszug ps -ef:

    Code
    vdr      12103  1556  0 23:31 ?        00:00:00 /bin/sh /usr/share/vdr-plugin-mplayer/mplayer /data/video/xyz.flv SLAVE
    vdr      12106 12103  0 23:31 ?        00:00:01 /usr/bin/mplayer -osdlevel 1 [b]-vo vdpau[/b] -vc ffh264vdpau,ffmpeg12vdpau,ffvc1vdpau,ffwmv3vdpau,ffodivx, -fs -monitoraspect 16:9 -ao alsa:device=hw=0.0 -cache 8192 -slave -nolirc -ontop yes -v -noconfig all -idx /data/video/xyz.flv
    vdr      12107 12106  0 23:31 ?        00:00:00 /usr/bin/mplayer -osdlevel 1 -vo vdpau -vc ffh264vdpau,ffmpeg12vdpau,ffvc1vdpau,ffwmv3vdpau,ffodivx, -fs -monitoraspect 16:9 -ao alsa:device=hw=0.0 -cache 8192 -slave -nolirc -ontop yes -v -noconfig all -idx /data/video/xyz.flv
    root     12375 11458  0 23:35 pts/10   00:00:00 grep --color=auto mplayer


    Viele Grüße & Danke vorab
    Ralf

    VDR - Die 'Killerapplikation' die mich zu Linux gebacht hat ;)

    Neues yaVDR HD-System ging am 20.12.2013 in Betrieb :)
    yaVDR 0.7-ansible im Aufbau ab Jan. 2024.

  • Was ist, wenn Du den Bildschirm im export DISPLAY Aufruf änderst?
    Ansonsten würde ich Dir auch empfehlen, Dir mal meinen Beitrag zur Verwendung von mpv mit dem mplayer-Plugin anzuschauen.
    Zur Automatisierung habe ich im Moment noch keine Idee. Wie wechselst Du den temporär den Bildschirm?

    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

  • Hi zusammen,


    anbei eine Ergänzung wie die Bildschirme umgeschaltet werden (yavdr-Standard):


    Unter http://<vdr>/admin/#settings-hw-display ist der Dual-Head Modus aktiviert mit folgenden Einstellungen:

    Code
    Anzeigeeinstellungen :1.0
        Gerät: DFP-0, modeline: 1360x768 60 Hz
    
    
      Anzeigeeinstellungen :1.1
        Gerät: DFP-2, modeline: 1920x1080 60 Hz


    Die Umschaltung erfolgt im Menü mit:


    grep schalten /var/lib/vdr/plugins/menuorg.xml
    <command name="Vorläufig auf den zweiten Bildschirm schalten" execute="sudo /usr/bin/signal-event change-display &amp;> /dev/null &amp;" />


    /usr/bin/signal-event enthält
    exec /usr/bin/signal-event.real "$@" -> Doku zu den yavdr-events


    @Dr.Seltsam: Danke für deine Hinweise, DISPLAY.. muss ich am WE testen. Das setzten von $DISPLAY müsste dann im yavdr Messageing zu signal-event change-display eingebaut werden. Und eine saubere Lösung für alle setzt das auslesen der settings-hw-display vorraus. Das bekomme ich nicht mal so eben hin ;)


    Viele Grüße
    Ralf

    VDR - Die 'Killerapplikation' die mich zu Linux gebacht hat ;)

    Neues yaVDR HD-System ging am 20.12.2013 in Betrieb :)
    yaVDR 0.7-ansible im Aufbau ab Jan. 2024.

  • Irgendwo sind die events abgelegt, das sind Verzeichnisse mit symlinks auf Scripte. Müsste unter /usr/share/yavdr/events sein.


    Lars

  • Hi,


    das stimmt :)


    ls /usr/share/yavdr/events
    actions change-display change-plugin change-timeout first-vdr-start mplayer-plugin post-install rescan-display test-viewport
    addons-update change-epg change-remote-hardware create-xorg-conf-yavdr image-plugin muggle-plugin post-upgrade reset-display-rate wol-update
    autofs-state-change change-frontend change-shutdown-wakeup display-state-change kill-xbmc music-plugin process-file-upload reset-xbmc yaepghd-plugin
    base-migration change-lifeguard change-sound dist-upgrade mp3-plugin picselshow-plugin reboot restart-vdr


    cat /usr/share/yavdr/events/change-display/00_switch-display

    Bash
    #!/bin/bash
    if [ "x$(dbget vdr.plugin.graphtft.enabled)" != "x1" ]; then
        if [ "x$(dbget vdr.tempdisplay)" = "x" ]; then
          dbset "vdr.tempdisplay=.1"
        else
          dbremove "vdr.tempdisplay"
        fi
    else
        dbremove "vdr.tempdisplay"
    fi


    cat /usr/share/yavdr/events/change-display/10_restart-vdr-frontend

    Bash
    #!/bin/bash
    if [ "$(dbget vdr.frontend)" = "sxfe" ] || [ "$(dbget vdr.frontend)" = "xine" ] || [ "$(dbget vdr.frontend)" = "softhddevice" ]; then
      stop vdr-frontend
      start vdr-frontend
    fi


    Viele Grüße
    Ralf

    VDR - Die 'Killerapplikation' die mich zu Linux gebacht hat ;)

    Neues yaVDR HD-System ging am 20.12.2013 in Betrieb :)
    yaVDR 0.7-ansible im Aufbau ab Jan. 2024.

  • Eigentlich reicht es doch den Wert für das temporäre Display vor dem Start des Players auszulesen und damit die DISPLAY-Variable zu aktualisieren:

    Code
    DISPLAY=:1$(dbget vdr.tempdisplay)
    export DISPLAY

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hi,


    Vielen Dank für die Lösung, es funktioniert ! Das wäre doch eine Aufnahme in den Standard wert :) :tup


    /usr/share/vdr-plugin-mplayer/mplayer



    Viele Grüße
    Ralf

    VDR - Die 'Killerapplikation' die mich zu Linux gebacht hat ;)

    Neues yaVDR HD-System ging am 20.12.2013 in Betrieb :)
    yaVDR 0.7-ansible im Aufbau ab Jan. 2024.

    2 Mal editiert, zuletzt von Ralf_D ()

  • Code
    export DISPLAY=:1

    Naja wenn du DISPLAY dann beim exportieren noch mal mit :1 überschreibst, kann das ja nicht gut gehen...
    vdr.tempdisplay ist ".1", wenn umgeschaltet wurde und leer, wenn alles im Ausgangszustand ist.

    Das Ergebnis von dbget vdr.tempdisplay in der shell ist übrigens ".1" wenn die Ausgabe auf den Beamer (2.Display) erfolgt

    Eben, demnach sollte DISPLAY dann ":1.1" sein.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hallo seahawk1986,


    danke, ich hab's gemerkt und oben korrigiert. Ihr seid natürlich schneller, meine scripting-Erfahrungen sind einige Jahre her...


    Ihr seid toll!
    Ralf

    VDR - Die 'Killerapplikation' die mich zu Linux gebacht hat ;)

    Neues yaVDR HD-System ging am 20.12.2013 in Betrieb :)
    yaVDR 0.7-ansible im Aufbau ab Jan. 2024.

  • Meine Frage ist nun, ob die Erkennung des aktiven Displays auch ohne den mplayer funktionieren könnte?


    Hi,


    wie meinst Du "Erkennung des aktiven Displays" ? Dass die Ausgabe automatisch umschaltet zum eingeschalteten Ausgabegerät? (Hab ich bei mir nicht, mache ich manuell übers Menü)
    Die Erkennung des Displays hat mit dem mplayer nichts zu tun. Im Gegenteil, o.a. Post belegen ja, dass man den mplayer über DISPLAY mitteilen muss, wohin das Bild soll.


    P.S.: Ein eigener Thread mit link hierher wäre gut gewesen, das ist hier offtopic...


    Viele Grüße
    Ralf

    VDR - Die 'Killerapplikation' die mich zu Linux gebacht hat ;)

    Neues yaVDR HD-System ging am 20.12.2013 in Betrieb :)
    yaVDR 0.7-ansible im Aufbau ab Jan. 2024.

Jetzt mitmachen!

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