XINE VDPAU + Mediaplayer?

  • Hi,


    gibt es eine Möglichkeit, wenn ich mit Xine (+ VDPAU) auf den VDR Zugreife irgendeine art
    von Medienplayer einzubinden?


    Starten tu' ich das ganze momentan so:


    xine -f -I "vdr:/tmp/vdr-xine/stream#demux:mpeg_pes"



    Wenn ich vdr mit dem XIneliboutplugin starte, dann funktioniert das ja 'automatisch'. Geht das auf diesem wege auch?

  • Ja, das Probleme hat ich auch, als ich von vdr-sxfe auf vdr-xine gewechselt bin.
    Aber die Lösung ist eingentlich ganz einfach, man benutzt einfach das alte mplayer-plugin, wie seinerzeit bei den FF-Karten. Damit kann ich zumindest wieder über den vdr AVIs und MKVs schauen. Man muß halt die mplayer.sh anpassen damit sie xine/vdpau für die Ausgabe verwendet. Es gibt hier auch im Forum irgendwo nen Thread wo das beschrieben wurde.

  • Hi,


    das xine-plugin bringt einen eigenen Player (xineplayer - nach dem Kompilieren im src-Verzeichnis) mit, der kann über das mplayer-Plugin zum Player innerhalb xine umfunktioniert werden.


    Wie das geht steht in der Readme oder Install, findest du ebenfalls in den xine-Sourcen.


    Ansonsten, wenn du in meine Signatur schaust, nimm doch gleich xbmc als Medienplayer-Paket.


    Gruß
    Wolfgang

  • Moin,


    okay, gefunden, installiert, geht auch... irgendwie: Angeblich soll die Fernbedienung nur mit LIRC funktionieren.


    Wenn ich im Mplayer-Plugin-Setup 'slave' aktiviert habe, dann kannich immerhin 'Stop' via LIRC Befehlen, ansonsten sehe ich lediglich das Kommandos via lirc irgendwie engegengenommen werden, aber offenbar nicht an den xineplayer weitergereicht werden...:



    Ideen? Pause, Spulen/1Minuten-Skip wäre schon recht nett....


    Danke für die Info!

  • Wirklich zufrieden bin ich damit auch noch nicht.
    Tasten funktioniert bei mir ausser Stop auch nichts.
    Sobald ein Leerzeichen im Pfad zur Datei die abgespielt werden soll auftritt, springt er immer direkt wieder aufs TV-Bild zurück.

  • Hi prefect,


    war mit dem xineplayer wegen der fehlenden Lirc-Unterstützung auch nicht so zufrieden. Stattdessen starte ich einfach nochmal xine über das mplayer-plugin. :)


    Hier mal meine mplayer.sh


    Bash
    #!/bin/bash
    
    
    USERNAME=liquidolze
    
    
    sudo su $USERNAME -c "DISPLAY=:0.0 xine -f -V vdpau -A alsa:hw:0,0 --verbose=1 --no-logo --no-splash '$1'" 2>&1 > /var/lib/vdr/vdr-mplayer.log
    
    
    exit


    sudo su $USERNAME war bei mir notwendig da ich nichts als root laufen lasse. Für sudo ist deswegen auch noch folgender Eintrag in der Datei /etc/sudoers nötig:


    Code
    vdr	htpc	= NOPASSWD: /bin/su


    Damit das auch mit der Fernbedienung klappt habe ich noch ein paar Einträge der .lircrc hinzugefügt:



    Das Problem mit den Leerzeichen welches Maniac beschreibt habe ich jedoch auch. Naja, dann gibt es halt keine Leerzeichen in den Dateinamen sondern nur Punkte. :)


    Gruß,


    Liquid

    1. VDR 2.4.0 und VNSI Plugin auf Debian Buster Server

    2. Client 1 = NVIDIA Shield mit KODI 18.9

    3. Client 2 = NVIDIA Shield mit KODI 18 .9

    4. 75 Zoll Samsung UHD TV mit Pioneer AVR VSX923 und HD Fury zur Audio Auskopplung

    5. 50 Zoll Samsung HD TV

    Einmal editiert, zuletzt von liquidolze ()

  • Zitat

    Das Problem mit den Leerzeichen welches Maniac beschreibt habe ich jedoch auch. Naja, dann gibt es halt keine Leerzeichen in den Dateinamen sondern nur Punkte. :)


    Gruß,


    Liquid


    Oje, hatte in meiner mplayer.sh die Striche bei $1 vergessen. Muß natürlich so aussehen '$1'. Dann klappts auch mit Leerzeichen im Pfad bzw. im Dateinamen. Hab das mal korrigiert. :)


    Mit xine in der mplayer.sh kann man natürlich auch MP3s bzw. TOX-Playlisten abspielen. Sieht ganz nett aus zusammen mit Goom.


    Liquid

    1. VDR 2.4.0 und VNSI Plugin auf Debian Buster Server

    2. Client 1 = NVIDIA Shield mit KODI 18.9

    3. Client 2 = NVIDIA Shield mit KODI 18 .9

    4. 75 Zoll Samsung UHD TV mit Pioneer AVR VSX923 und HD Fury zur Audio Auskopplung

    5. 50 Zoll Samsung HD TV


  • Der xineplayer unterstützt nicht die SLAVE Kommandos. Ich habe dazu schon einmal Herrn Nissel angeschrieben. Er hat auch gesagt, dass
    diese SLAVE Geschichte relativ leicht einzubauen ist, er aber momentan keine Zeit hat.


    Also wenn jemand anderes das kann, bitte machen :)

  • Genauere Hinweise, wie das eingebaut werden müsste hast du nicht oder? Ich kann zwar C++ bin aber nicht vertraut mit xine und dem xine-plugin wie das dort intern alles abläuft.
    Da ich das remote-Plugin für die Fernbedinung nutze wäre das für mich schon recht praktisch da was zu bauen.


    Das mit den Anführungszeichen klappt übrigens, danke.

  • Zitat

    Original von Maniac
    Genauere Hinweise, wie das eingebaut werden müsste hast du nicht oder? Ich kann zwar C++ bin aber nicht vertraut mit xine und dem xine-plugin wie das dort intern alles abläuft.
    Da ich das remote-Plugin für die Fernbedinung nutze wäre das für mich schon recht praktisch da was zu bauen.


    Das mit den Anführungszeichen klappt übrigens, danke.


    Das ist wohl die Doku:


    http://www.mplayerhq.hu/DOCS/tech/slave.txt


    Nach meinem Verständniss muss man nun wohl dem xineplayer diese Kommandos beibringen bzw. implementieren.


    Jetzt du ;)

  • Ich hab mir das ganze mal genauer angeguckt. Der MPlayer Slave Mode nimmt die Befehle entweder über stdin oder einen Fifo entgegen. Im Mplayer-Plugin wird eine Pipe geöffnet, ob dies nun auf auf stdin geht oder einen Fifo anspricht konnte ich noch nicht finden.


    Xine unterstützt die Steuerung über Telnet, alternativ gibt es dazu noch das Programm xine-remote.
    xine selbst bietet diese beiden Parameter


    Code
    -n, --network                Aktiviere Fernsteuerung über Netzwerk.
          --network-port           Portnummer für Netzwerkfernsteuerung.


    Eine Verbindung zu xine bekomme ich damit aber weder über Telnet, noch über xine-remote.


    Das wären aber schonmal Punkte an denen man ansetzen könnte, mal sehen ob ich da noch was hinbekomme.


    Hinweise und Beschreibungen zu dem Netzwerk-Feature sind gerne gesehen.


    Merke gerade mal wieder man-page lesen macht Sinn ;)



    Ohne Benutzer/Pass kann ich da lange testen.


    Xine lässt sich darüber schön per Tastatureingaben steuern. Springen klappt leider nicht, wird sehr wahrscheinlich daran liegen, das der xineplayer die Datei über einen Fifo zur Verfügung stellt und xine selbst dadurch keinen direkten Zugriff aufs File hat.
    Ein MKV direkt über xine gestartet lässt sich nämlich auch per "seek +60" um eine Minute nach vorne springen.


    Ideen oder Vorschläge?

  • Unter /tmp/vdr-xine gibt es noch weitere Fifos


    Code
    external.control  stream          stream.event
    external.result   stream.control  stream.result


    xineplayer selbst nutzt die beiden external um eine MRL zu starten, behandelt wird das ganze in xineExternal.c vom xine-Plugin. Dort ist aber nur ein Play Befehl implementiert.
    Mit den stream Fifos konnte ich bis jetzt noch nicht wirklich viel anfangen.


    Eine Implentierung über Netzwerk oder evtl. die Fifos wäre damit wohl möglich.
    Nur sehe ich da keine Möglichkeit im Film zu springen oder die aktuelle Position bzw. Gesamtlänge auszulesen um diese darzustellen.


    Übers Netzwerk (oder evtl. die Fifos) lässt sich über "mrl play /test.mkv" auch ein Film anstarten, welcher dann auch wunderbar springbar usw. ist, nur leider kappen wir damit dann die Verbindung zum VDR. Also ist da auch nichts mit Tasten weitergeben oder Infos übers VDR OSD anzeigen.

  • liquidolze: Hast du bei der Methode xine anstatt xineplayer zu starten dann weiterhin das VDR-Osd?
    Edit: Habs gerade mal ausprobiert, VDR-Osd funktioniert teilweise weiter, aber das Bild des Films den man abspielt liegt darüber, an den Stellen die Schwarz sind, scheint das VDR-Osd durch. Springen wäre hier nun aber möglich.


    Ich hab mir gerade nochmal den Code vom Player aus xineliboutput angeschaut, dort wird der ein Xine-Device übergeben auf dem der Film dann gestartet wird, dies ist natürlich das Device von xineliboutput.
    Wäre es da evtl. denkbar den Player aus xineliboutput zu nehmen und ihn stattdessen auf das Device vom xine-Plugin zu schicken?


  • Vielen Dank für Deine Bemühungen. Ich denke Herr Nissel könnte hier mehr zu sagen. Ich versuche mal, ihm den Thread zu mailen, vielleicht klingt er sich ja ein.

  • Zitat

    Original von Maniac
    liquidolze: Hast du bei der Methode xine anstatt xineplayer zu starten dann weiterhin das VDR-Osd?
    Edit: Habs gerade mal ausprobiert, VDR-Osd funktioniert teilweise weiter, aber das Bild des Films den man abspielt liegt darüber, an den Stellen die Schwarz sind, scheint das VDR-Osd durch. Springen wäre hier nun aber möglich.


    Das VDR-OSD ist bei mir leider nicht mehr sichtbar, auch teilweise nicht. :( Dafür tritt bei mir jedoch das Durchscheinen nicht auf. Naja, vielleicht liegts an der Einstellung xine.osdMode = osdOverlay in meiner setup.conf.


    Gruß,


    Liquid

    1. VDR 2.4.0 und VNSI Plugin auf Debian Buster Server

    2. Client 1 = NVIDIA Shield mit KODI 18.9

    3. Client 2 = NVIDIA Shield mit KODI 18 .9

    4. 75 Zoll Samsung UHD TV mit Pioneer AVR VSX923 und HD Fury zur Audio Auskopplung

    5. 50 Zoll Samsung HD TV

  • Hi,


    Zitat

    Original von neumann2k
    Vielen Dank für Deine Bemühungen. Ich denke Herr Nissel könnte hier mehr zu sagen. Ich versuche mal, ihm den Thread zu mailen, vielleicht klingt er sich ja ein.


    Die Analyse ist soweit richtig. Um neue Befehle implementieren zu können, muss aber auch die Schnittstelle zu xine aufgebort werden, denn schließlich muss dort ja gesprungen bzw. die aktuelle Position abgefragt und zurückgeliefert werden.


    Ich habe schon ein paar Vorarbeiten bzgl. der benötigten SLAVE-Mode Kommandos durchgeführt, nur leider war seit Monaten vor dem Urlaub Stress in der Firma zwecks neuen Software Release, dann kam ich mit den Renovierungsarbeiten im Haus nicht so zügig voran, so dass es sich vom Urlaub Mitte November bis über Weihnachten hinweg hinausgezogen hat, und ab 04.01.10 geht's in der Firma schon wieder rund, damit der nächste Release Anfang Februar gehalten werden kann.


    Ob sich in den verbleibenden Tagen noch was bgzl. SLAVE-Mode und neuem vdr-xine Release ergibt, kann ich noch nicht abschätzen.


    Bye.


  • Vielen Dank Reinhard. In welcher Firma arbeitest Du eigentlich bzw. welche Software entwickelt ihr ?

Jetzt mitmachen!

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