Howto: mplayer und xine

  • Hallo,


    Bei Verwendung von xine als Ausgabedevice kann mplayer zur Videowiedergabe verwendet werden. Es können alle Formate wiedergegeben werden, die mplayer unterstützt. Auch resume funktioniert.
    Was nicht geht: Das OSD des VDR wird nicht angezeigt, auch nicht der Fortschrittsbalken. Es geht aber das mplayer eigene OSD.


    Und so geht's (einfache Lösung): die mplayer.sh sichern und durch

    Shell-Script
    1. #!/bin/sh
    2. export DISPLAY=:0.0
    3. CMDLINE="/usr/bin/mplayer -osdlevel 1 -vo vdpau -vc ffh264vdpau,ffmpeg12vdpau,ffvc1vdpau,ffwmv3vdpau, -ao alsa -cache 8192 -slave -noconfig all -nolirc -quiet -idx -fs"
    4. $CMDLINE "$1"

    ersetzen. DISPLAY und -vo eventuell an das eigene System anpassen. Im VDR unter Einstellungen -> Plugins -> Mplayer den slave mode wählen. Das war's. Hinweis: unter Debian ist die mplayer.sh normalerweise /usr/share/vdr-plugin-mplayer/mplayer .


    Nachteil: Die Kommandos der Fernbedienung werden weiterhin an VDR gesendet. Einen Teil davon reicht der VDR einfach an mplayer weiter (z.B. pause). Andere führt der VDR aus, z.B. menü. An sich nicht schlimm, aber da das VDR OSD nicht sichtbar ist, kann es passieren, dass man was macht, was man eigentlich nicht möchte.


    Und daher die alternative Lösung: die mplayer.sh sichern und durch

    Shell-Script
    1. #!/bin/sh
    2. svdrpsend -p 2001 remo off
    3. export DISPLAY=:0.0
    4. CMDLINE="/usr/bin/mplayer -vo vdpau -vc ffh264vdpau,ffmpeg12vdpau,ffvc1vdpau,ffwmv3vdpau, -ao alsa -cache 8192 -lircconf <path_to_lircrc> -slave -quiet -idx -fs"
    5. $CMDLINE "$1"
    6. svdrpsend -p 2001 remo on

    ersetzen. Im VDR unter Einstellungen -> Plugins -> Mplayer den slave mode wählen. Dann noch eine lircrc anlegen. In dieser kann festgelegt werden, was mplayer bei welchem Tastendruck macht. Wichtig ist das Kommando zum Beenden des mplayer. Danach wird die Kontrolle wieder an VDR übergeben.


    Ich habe mal meine lircrc angehängt, ihr müsst sie natürlich an Eure Fernbedienung anpassen.


    Markus

    Files

    • lircrc.bz2

      (425 Byte, downloaded 327 times, last: )

    Client1: ASUS P5QC, Dual Core 3G, Cine S2, Ext. Board von TBE, Xubuntu 20.04, VDR 2.4x

    Client2: RPI3

    Server: RPI4, Sundtek SkyTV Dual 2x

  • Hallo,


    zur Unterstützung von Playlisten, die z.B. für Vodcatcher benötigt werden, sieht mplayer.sh so:



    aus. Hier für die oben genannte 'alterantive Lösung'. Die Änderung für die andere mplayer.sh ist analog.


    Markus

    Client1: ASUS P5QC, Dual Core 3G, Cine S2, Ext. Board von TBE, Xubuntu 20.04, VDR 2.4x

    Client2: RPI3

    Server: RPI4, Sundtek SkyTV Dual 2x

  • Hallo,


    vielen Dank hierfür.


    Leider hab ich ein komisches Problem damit.
    Wenn ich das Skript normal starte, dann funktioniert es nicht.
    Wenn ich es mit sh -x starte, funktioniert es:



    Hat jemand eine Erkärung dafür?


    Gruß,
    Hendrik

  • Hallo Hendrik.


    was gibt

    Code
    1. which mplayer.sh

    aus?
    Was gibt

    Code
    1. which sh

    aus?
    In welchem Verzeichnis bist Du?


    - Markus

    Client1: ASUS P5QC, Dual Core 3G, Cine S2, Ext. Board von TBE, Xubuntu 20.04, VDR 2.4x

    Client2: RPI3

    Server: RPI4, Sundtek SkyTV Dual 2x

  • Hi,
    Da ich den mplayer für Vodcatcher brauche hole diesen alten Thread mal wieder hoch.
    mplayer mit dem mplayer plugin funktioniert bei mir schon recht gut.


    Es funktioniert keine Fernbedienung, bzw so wie MarkusE es beschreibt.
    Wenn ich dem VDR die Kontrolle nehme (svdrpsend 2001 remo off) sollte mplayer via Lirc funktionieren,
    Wenn ich aber mplayer mit der option --lircconf starte bekomme ich eine Fehlermeldung, ist logisch denn der ./configure Log vom mplayer sagt.


    Das devel paket von lirc habe ich, doch wo steckt die lircc.h drin ?? - nicht mal Google gibt was her...
    Beim Fork der mplayers (mplayer2) ist es das gleiche.
    mfg

    VDR 1 (SD) : ASRock A330 GC, 1 GB RAM, TT- FF Karte rev. 2.3, 7'' TFT, Lirc X10 - Selbstbau Gehäuse - Suse 11.3 (64) vdr-1.7.10 diverse Plugins
    VDR 2 (HD) : MSI G41M-P25, 2 GB RAM, E6700 2x3.20GHz, Gainward GT220, 2TB HD, Lirc X10, TT S2-3600 USB, TT S2-1600, - Suse 11.3 (64) NvidiaTreiber 260.19 vdr-1.7.18 - xineliboutplugin 1.0.90 cvs, xine-lib 1.1.90 , s2-liplianin DVB Treiber

  • Hi, Ich habe nochmals recheriert, die Header Datei sollte im Paket liblirclient-dev enthalten sein.
    Leider scheint es diese für meine Suse 11.3 (64) nicht mehr zu geben. :evil:

    VDR 1 (SD) : ASRock A330 GC, 1 GB RAM, TT- FF Karte rev. 2.3, 7'' TFT, Lirc X10 - Selbstbau Gehäuse - Suse 11.3 (64) vdr-1.7.10 diverse Plugins
    VDR 2 (HD) : MSI G41M-P25, 2 GB RAM, E6700 2x3.20GHz, Gainward GT220, 2TB HD, Lirc X10, TT S2-3600 USB, TT S2-1600, - Suse 11.3 (64) NvidiaTreiber 260.19 vdr-1.7.18 - xineliboutplugin 1.0.90 cvs, xine-lib 1.1.90 , s2-liplianin DVB Treiber

  • Wie so oft war der Fehler ca. 40 cm vor dem Bildschirm zu suchen :O
    mplayer startet mit der lircconf und Pfadangabe nicht, diese Option kennt er ohne diese Header Datei nicht.
    Aber er sucht eine lircrc in /etc/lirc dort habe ich jetzt eine lircrc liegen und schon kann ich den mplayer wunderbar mit der FB bedienen.


    Genauer gesagt habe ich mplayer2 am laufen und bin bis jetzt begeistert wie gut diese neue player läuft.
    Wenn er jetzt noch mit Playlisten umgehen kann (wegen Vodcatcher) bin ich zufrieden.
    Das kann ich heute abend erst testen.

    VDR 1 (SD) : ASRock A330 GC, 1 GB RAM, TT- FF Karte rev. 2.3, 7'' TFT, Lirc X10 - Selbstbau Gehäuse - Suse 11.3 (64) vdr-1.7.10 diverse Plugins
    VDR 2 (HD) : MSI G41M-P25, 2 GB RAM, E6700 2x3.20GHz, Gainward GT220, 2TB HD, Lirc X10, TT S2-3600 USB, TT S2-1600, - Suse 11.3 (64) NvidiaTreiber 260.19 vdr-1.7.18 - xineliboutplugin 1.0.90 cvs, xine-lib 1.1.90 , s2-liplianin DVB Treiber

  • Hallo Experten,


    ich möchte nach meinem Umstieg von einer FF-Karte das MPlayer-Plugin wegen der Bedienung weiter verwenden.


    Das soll ja mittlerweile ohne das Xine-Kill Skript funktionieren.
    Leider kommt am HDMI Ausgang des Fernsehers nur der Ton an.


    Nach einem Test dürfte bei mir export DISPLAY=:1.0 der richtige Parameter sein. Konnte ich mit einem Aufruf des Xine Players über SSH erfolgreich testen.
    Des Weiteren habe ich die Parameter -vo vdpau und -ao alsa gesetzt. Bei einem Aufruf im uxterminal habe ich Bild und Ton bekommen.


    Ich benutze VDR 2.0.0, mit MPlayer-Plugin, xine 0.9.4 auf Debian Wheezy mit 3.2.0-4 AMD64/XEN 4.2.1 Kernel und XFCE4/X11.
    Laut Logging



    Opening video filter: [lavc=5000:25]
    libavcodec version 53.35.0 (external)
    Mismatching header version 53.32.2
    Opening video filter: [expand w=720 h=576 x=-1 y=-1 osd=1]
    Expand: 720 x 576, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
    Opening video filter: [scale w=720 h=576]
    ==========================================================================
    Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
    Selected video codec: [ffwmv3] vfm: ffmpeg (FFmpeg WMV3/WMV9)
    ==========================================================================
    ==========================================================================
    Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
    AUDIO: 48000 Hz, 2 ch, s16le, 192.0 kbit/12.50% (ratio: 24000->192000)
    Selected audio codec: [ffwmav2] afm: ffmpeg (DivX audio v2 (FFmpeg))
    ==========================================================================
    AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)
    Starting playback...
    Movie-Aspect is undefined - no prescaling applied.
    [swscaler @ 0x7ffadfc780c0]BICUBIC scaler, from yuv420p to yuv420p using MMX2
    VO: [vdpau] 720x576 => 1024x576 Planar YV12
    ANS_LENGTH=1762.73
    ANS_PERCENT_POSITION=91


    Mittlerweile ist der User VDR der Root Gruppe zugeordnet.


    Habt ihr einen Ansatz für die Fehlersuche?


    Vielen Dank!


    Beste Grüße
    Manfred

  • Hallo, habe diesen Beitrag mit Interesse verfolgt, leider scheitere ich aber schon bei den einfachsten Dingen.
    Ich nutze yavdr 0.5 mit dem xine frontend und möchte mplayer zur anderweitigen Videowiedergabe (*.avi/*.mpg) bewegen, allerdings weiß ich leider nicht, wo ich das Shellskript "mplayer.sh" aus diesem Howto im Dateisystem ablegen muss, damit dieses aufgerufen wird.
    Tut mir leid, ist sicher ein sehr simples Problem, bin aber für jede hilfreiche Antwort dankbar.

  • geh mal in /usr/share/vdr-plugin-mplayer:

    Code
    1. cd /usr/share/vdr-plugin-mplayer


    und poste die Ausgabe von

    Code
    1. ls -l

    ACT-620, Asrock B75 Pro3-M, 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.

  • Der Dr. meint:


    Code
    1. cd /usr/share/mplayer


    denke ich, aber ich kann mich auch irren.


    Albert

  • bei Debian-basierten Distris ist es der von mir angegebene Pfad

    ACT-620, Asrock B75 Pro3-M, 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.

  • Code
    1. ls -l /usr/share/vdr-plugin-mplayer ergibt:
    2. -rwxr-xr-x 1 root root 895 Okt 24 22:46 mount
    3. -rwxr-xr-x 1 root root 4285 März 20 21:55 mplayer
    4. -rw-r--r-- 1 root root 986 März 20 21:55 mplayer.conf
    5. -rwxr-xr-x 1 root root 18911 Okt 24 22:46 mplayer.dontremove


    Code
    1. ls -l /usr/share/mplayer
    2. -rwxr-xr-x 1 root root 6411 Jan 31 2011 binary_codecs.sh
    3. -rwxr-xr-x 1 root root 524 Jan 31 2011 midentify.sh


    Ich denke die Distribution ist eine Ubuntu. Danke für Eure Hilfe!

  • dann poste bitte mal die Ausgabe von


    Code
    1. cat /usr/share/vdr-plugin-mplayer/mplayer

    ACT-620, Asrock B75 Pro3-M, 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.

  • Das Script in yavdr basiert in weiten Teilen auf eine Lösung, die ich mal zusammengebastelt hatte. Das automatische Setzen der individuellen Variablen hat m.E. aber nie richtig funktioniert. Man sieht das hier beim Audiodevice:

    Code
    1. -ao alsa:device=hw=.


    so kann es natürlich nicht funktionieren, da fehlen die Ziffern.


    Außerdem empfehle ich, das mplayer-Plugin nicht im slave-Modus zu betreiben, sondern im traditionellen Kontrollmodus. Das erfordert zwar etwas mehr Aufwand für die Fernbedienungssteuerung, aber man hat dafür mehr Tasten zu Steuerung des mplayer.


    Ich schlage Dir vor, mein aktuelles Script zu verwenden, das ich gerne für Dich anpasse. Dafür brauche ich zunächst ein paar Angaben von Dir:


    was sagt denn die Ausgabe von

    Code
    1. xrandr


    sowie


    Code
    1. cat /etc/asound.conf


    Wie läuft Deine Fernbedienung? per Lirc? Poste bitte auch die Ausgabe von

    Code
    1. cat /var/lib/vdr/remote.conf


    Warum verwendest Du eigentlich das xine-Plugin und nicht softhddevice?


    Hast Du einen AV-Receiver, der AC3 kann?

    ACT-620, Asrock B75 Pro3-M, 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.

  • Hallo und vielen Dank für die freundliche und unterstützende Hilfe. Ich bin leider ein Dummy was den vdr angeht, also ein kompletter Neueinsteiger in die Linux-HTPC-Welt. Ich war aber nach der Erstinstallation vom yavdr fasziniert, dass dieser gleich nach der Installation (bis auf das softhddevice - kein Bild/aber Ton) sofort mit xine bzw. dem xineliboutput im LiveTV-Mode funktionierte. Problem mit xineliboutput waren aber leider die zu langen DVB-S/S2-Umschaltzeiten und kleine Hänger im LiveTV-Bild, weshalb ich dann dauerhaft zu xine wechseln wollte, hier funktionierte LiveTV erst einmal tadellos. Bei xine wiederum fehlt aber leider eine sonstige Videoausgabe bis auf den LiveTV-Mode. Das ist der Grund.


    Ausgabe von xrandr:

    Code
    1. Can't open display


    Die Ausgabe von

    Code
    1. cat /etc/asound.conf

    ist komplett leer.


    Die Fernbedienung ist eine Tevii S660 DVB-S/S2 mitgelieferte. Um die Fernbedienung machte ich mir erstmal keine Sorgen, da mir erst einmal die Grundfunktionen (LiveTV/Video/Audio) wichtig waren. mp3-Audieausgaben funktionieren tadellos, aber eben leider keine Videos mit dem mplayer-plugin (welches ich regulär über das WI installiert hatte).


    Die Ausgabe von

    Code
    1. cat /var/lib/vdr/remote.conf

    lautet:


  • Quote

    Ausgabe von xrandr:

    Code
    1. Can't open display


    oh, da habe ich noch etwas vergessen. Führe vorher bitte

    Code
    1. export DISPLAY=:1


    aus


    Quote

    Die Ausgabe von

    Code
    1. cat /etc/asound.conf

    ist komplett leer.


    Wie greifst Du den Ton denn ab? analog von der Soundkarte? digital von der Soundkarte? digital über HDMI?


    poste bitte mal die Ausgabe von

    Code
    1. cat /etc/xine/config | grep audio


    sowie


    Code
    1. aplay -l


    Bist Du in der Lage, mit dem Editor nano Dateien zu bearbeiten und abzuspeichern?

    ACT-620, Asrock B75 Pro3-M, 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.

  • Ok, hier nun die Ausgabe von xrandr (der yavdr-Rechner hängt derweil noch an einem normalen TFT-Bildschirm):


    Der Ton läuft analog über alsa, das funktionierte seit der Erstinstallation...musste aber von digital auf analog im WI umschalten.



    und aplay -l

    Code
    1. **** Liste der Hardware-Geräte (PLAYBACK) ****
    2. Karte 0: Intel [HDA Intel], Gerät 0: ALC662 rev1 Analog [ALC662 rev1 Analog]
    3. Sub-Geräte: 1/1
    4. Sub-Gerät #0: subdevice #0
    5. Karte 0: Intel [HDA Intel], Gerät 1: ALC662 rev1 Digital [ALC662 rev1 Digital]
    6. Sub-Geräte: 1/1
    7. Sub-Gerät #0: subdevice #0


    Was nano oder vi angeht, kein Problem. Ich habe schon gute Linux-Erfahrungen, kenne also das Grundsystem und kann sogar ein paar Shell-Skripte schreiben. Problem ist nur das mir das X-System und der vdr noch völlig fremd sind (habe selbst nen kleinen Ubuntu-Fileserver im Einsatz (Eigenbau)).