lifeguard für DLNA Server konfigurieren

  • Hallo,
    ich hab auf meinem VDR einen DLNA (UPNP) Server eingerichtet. Jetzt möchte ich verhindern, dass wenn von diesem Server gestreamt wird, der VDR runter fährt.
    Was müßte ich denn in der lifeguard.conf eintragen?


    danke und Gruß
    Thomas

  • Das kommt darauf an :].


    Du sagst nicht, welchen DLNA Server Du installiert hast. Generell sind es zwei Schritte: Zunächst musst Du eine eindeutige Veränderung am Zustand des Systems finden, welche der Server während des Streamens bewirkt, z.B. eine Netzwerkverbindung über einen bestimmten Port oder ein zusätzlich gestartetes Programm. Dann kannst Du versuchen, mit einem der Muster in der Konfigurationsdatei diesen Zustand zu detektieren, z.B. mit 'tcp 4711' für eine TCP Verbindung über Port 4711.


    Für eine Antwort auf Deine Fragen müsstest Du also wohl ein paar zusätzliche Informationen liefern: Entweder die Server Software nennen (und hoffen, dass Dir jemand die von ihr verursachte Zustandsänderung nennen kann) oder die Zustandsänderung ermitteln. Für letztere Aufgabe eignen sich gut die Programme, die lifeguard selbst in /usr/share/vdr/shutdown-hooks/S*.lifeguard benutzt, z.B. netstat.


    Gruß, maf

  • Nunja, ich setzte den Twonky server ein. Ich hab angenommen, dass es standardisiert wäre, wie ein Stream bei DLNA läuft, und dass das hier schon sicher jemand gemacht hat.


    mit netstat geschaut, scheint der Local Address Port 9000 die Konstante zu sein, die für mich wichtig wäre.
    Ich hatte zuerst immer auf den Foreign Address Port geschaut, aber der ist nicht eindeutig und eigentlich macht der lokale für mich mehr Sinn ...
    Danke fürs drauf stoßen


    Tom

  • Nunja, ich setzte den Twonky server ein. Ich hab angenommen, dass es standardisiert wäre, wie ein Stream bei DLNA läuft, und dass das hier schon sicher jemand gemacht hat.

    Verstehe, das kann durchaus sein. Leider habe ich mangels DLNA Server keine Erfahrungen oder Testmöglichkeiten.


    Was streamst Du denn wohin und wie gut funktioniert das?


    mit netstat geschaut, scheint der Local Address Port 9000 die Konstante zu sein, die für mich wichtig wäre.
    Ich hatte zuerst immer auf den Foreign Address Port geschaut, aber der ist nicht eindeutig und eigentlich macht der lokale für mich mehr Sinn ...
    Danke fürs drauf stoßen

    Das heißt, bei Dir funktioniert ein 'tcp 9000'?

  • Was streamst Du denn wohin und wie gut funktioniert das?

    Ich streame meine mp3 Sammlung vom VDR-Rechner, der unterm Dach steht auf meinen AV-Receiver (ein Onkyo TX-NR 609)
    Das läuft in dieser Konstellation ganz gut. Ich hatte zuvor den kostenfreien Mediatomb als DLNA Server probiert, nur bei dem bekomme ich keine Artist-Information an den Receiver übermittelt. Ich kann nicht sagen ob es ein Problem des Receivers ist, oder an Mediatomb liegt (hab sonst niemanden mit diesem Problem gefunden). Mit dem Twonky Server läuft das jedenfalls, und der ist auch sonst etwas komfortabler.


    Ein Problem hat noch der Receiver, wo ich allerdings hoffe, dass Onkyo das mit einer neuen Firmware hin bekommen könnte, nämlich passiert es ab und an, dass beim auswählen von einem Track plötzlich nichts mehr funktioniert. Auf dem Receiver-display steht dann initilizing und nix passiert mehr. Das hat aber nix mit dem Streamen zu tun, das passiert auch über USB.


    Den Receiver hab ich noch nicht lange, vorher hab ich mp3 nur mittels dem muggle-Plugin gehört. Das benutze ich immer noch, da ich über den Receiver nicht spontan Playlisten anlegen kann, das ist bei muggle schöner. Mit einem Pad oder einem Smartphone müßte das auch so gehen, aber sowas hab ich nicht ;)

    Das heißt, bei Dir funktioniert ein 'tcp 9000'?

    ich hab es jedenfalls eingetragen, konnte es aber bisher noch nicht überprüfen, da entweder eine Aufnahme lief, oder sonst was los war ... ich werde den (Miss-)Erfolg posten.

  • Also ich kenn das Lifeguard nicht genau, aber wenn man einen Serverport prüfen kann, dann solltet ihr auf udp://239.255.255.250:1900 prüfen. Dort läuft der UPnP-Listener für Clients. Aber dort bekommt man nicht heraus, ob auch tatsächlich gestreamt wird oder ob einfach nur Mediatomb oder Twonky aktiv ist. Da UPnP keine Regeln festlegt, was auf welchem Port gestreamt werden soll, ist die Regel recht schwer fest zu machen.


    Medion Digitainer; AsRock B75 Pro3-M, Celeron G540; Kingston Value 4GB
    Samsung SpinPoint 250GB 2,5"; Samsung WriteMaster DVD-Brenner;
    TT-S2-6400, 2x TT-S2-1600, Ubuntu 12.04 mit YaVDR-Paketen. VDR 1.7.27, UPnP/DLNA-Plugin

  • Ja, einfach nach port 9000 zu filtern hat's nicht gebracht.
    netstat -t brachte heute ständig einen eine localhost:9000 Verbindung. Dadurch ist er heute den ganzen Tag an geblieben.


    Das komische ist, dass wenn ich jetzt manuell mittels netstat schaue, der localhost:9000 nicht ständig auftaucht. Komischerweise hatte lifeguard heute aber jedes mal das "Glück".
    Ich versuch mal die localhost Verbindungen von der Prüfung auszuschließen.

  • Ich versuch mal die localhost Verbindungen von der Prüfung auszuschließen.


    ja, okay, dann müßte ich den Skript anfassen, für mich paßt das solange, bis ein upgrade wieder die Standardvariante des lifeguard skripts einspielt.


    Also, in meinem shutdown-hook von lifeguard
    /usr/share/vdr/shutdown-hooks/S91.lifeguard
    habe ich folgende Zeile wie folgt geändert (Doppelpunkt entfernt):

    Code
    Original:
    if [ $(netstat -t | grep -e "^tcp" | grep -ve "CLOSE_WAIT[ \t]*$" | sed -re "s/ +/ /g" | cut -d " " -f 4 | grep -cE ":$PATTERN\b") -gt 0 ]; then
    Fälschung:
    if [ $(netstat -t | grep -e "^tcp" | grep -ve "CLOSE_WAIT[ \t]*$" | sed -re "s/ +/ /g" | cut -d " " -f 4 | grep -cE "$PATTERN\b") -gt 0 ]; then


    Daraufhin hab ich in der lifeguard.conf (/etc/vdr/) folgenden Eintrag für den DLNA Server Eingetragen:

    Code
    tcp	mein.rechner.name.de:9000   Twonky


    und bei allen anderen tcp Einträgen hab ich den Doppelpunkt eingefügt:

    Code
    tcp   :ssh   SSH
    tcp   :ftp   FTP


    mal schauen, ob's hilft.

  • Ich hab jetzt einen separaten Shutdown Skript erstellt, der den Twonky Server direkt befragt, ob er etwas streamt.



    Damit "if" nicht einen Fehler auslöst, wenn der Server überhaupt nicht läuft, füge ich eine "0" vor die Anzahl aktiver Streams.

  • Also, bei mir klappt das mit dem zusätzlichen Eintrag in der lifeguard.conf problemlos.
    Es darf aber nicht der Rechnername oder die IP mit hinein.


    einfach nur

    Code
    tcp	9000	Twonky\ läuft\ noch.


    ergänzen. OHNE Doppelpunkt!
    Dann brauch auch sonst nichts geändert werden.

    yaVDR 0.5 | Gigabyte GA-P35-DS3P | Core2Duo 3GHz / 4 GB RAM | Gainward GT 520 1GB
    Technisat Skystar 2 | Technisat Airstar 2 | TerraTec Cinergy T Stick RC (USB-ID 0ccd:0097) | linux4media 128x64 monochrom Display (l4me5i) | 10" TFT für GraphTFT 800x600 | Sandisk 64GB SSD für OS + WD 2TB mit /srv und /media
    Logitech Wireless Touch Keyboard K400 | MCE USB Fernbedienung Typ 1039 | Samsung UE40D6200
    (neben dem yaVDR ist der ps3mediaserver installiert. Dieser streamt u.a. zur Xbox auch *ts)
    Clienten: Xbox 360 | div. Androiden | Raspberry Pi mit Openelec

Jetzt mitmachen!

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