Posts by schmirl

    Hallo zusammen,


    unter http://projects.vdr-developer.…-0.6.1-channelchange2.tgz kann eine Testversion von Streamdev heruntergeladen werden, bei der der Server die in VDR 2.1.4 neu eingeführte Funktion ChannelChange unterstützt. Ein bestimmtes Plugin benötigt wohl diese Funktion. Ich kann es selbst leider nicht testen und bin daher auf Mithilfe angewiesen.


    [EDIT]Link auf neue Version geändert[/EDIT]

    Du brauchst in jedem Fall den "Name,ID"-Modus, da es Dir ja darum geht, das EPG von einem Kanal auf den anderen zu kopieren. Hier wird bislang aber nur der exakte Kanalname verglichen und da "ZDFinfo" != "ZDFinfo HD" wird kein passender Kanal gefunden.


    Der zuständige Code-Block in epgsync ist die Funktion GetChannelByName(...) in thread.c, wenn Du Dir da selbst etwas basteln wills. Schwierig hier eine Funktion zu schreiben, die dieses Problem allgemein löst, ohne in Richtung Raketenwissenschaft abzudriften.

    Hallo,


    Welche externremux.sh verwendest Du? Hört sich nicht nach der "Original-Version" an. Bei der Variante, die mit streamdev ausgeliefert wird, steht schon seit vielen Jahren /bin/bash am Anfang. Dort sollte auch der folgende trap-Befehl dafür sorgen, dass alles sauber beendet und aufgeräumt wird:

    Code
    1. trap "trap '' EXIT HUP INT TERM ABRT PIPE CHLD; kill -INT 0; sleep 1; fuser -k '$FIFO'; rm '$FIFO'" EXIT HUP INT TERM ABRT PIPE CHLD


    Sollte Deine externremux.sh diesen Trap-Befehl verwenden, wäre interessant, welche Prozesse weiterlaufen und ob die FIFO-Datei noch existiert.


    Dass /bin/sh ein Link auf z.B. /bin/bash ist, ist normal. Standard bei Ubuntu ist/war ein Link auf /bin/dash.


    Letzlich sollte egal sein, unter welcher Shell Streamdev das Remux-Skript startet, solange am Beginn des Skripts /bin/bash steht. Dann müsste auch die dash das Skript durch die bash ausführen lassen. Wenn in Deinem System /bin/sh ohnehin auf /bin/bash verlinkt, ist das erst recht kein Thema.


    Viele Grüße,
    Frank

    Hallo zusammen,


    unter http://vdr.schmirler.de/ liegt Version 1.0.1 von epgsync bereit. Neu dazu gekommen ist eine Option, mit der epgsync alle X Stunden selbständig das EPG neu abruft. Außerdem lässt sich die Synchronisation nun über den SVDRP-Befehl "PLUG epgsync SYNC" starten (war schon immer über SVDRP-Aufruf des Hauptmenüs möglich, aber undokumentiert und nicht offensichtlich).


    Frank

    Unter http://vdr.schmirler.de/epgsync/vdr-epgsync-1.0.0-git.tgz habe ich eine Testversion bereitgelegt. Wenn alles passt, mache ich eine neue Version draus.


    Neu hinzugekommen sind der SVDRP-Befehl "PLUG epgsync SYNC" wie von no sleep vorgeschlagen und der von GTRDRIVER gewünschte Sync alle X Stunden. Dabei ist zu beachten, dass es sich um keinen exakten Timeout handelt sondern vielmehr um ein Minimum. Der Sync wird im VDR Housekeeping durchgeführt, verschiebt sich also während z.B. lokal eine Aufnahme läuft oder wiedergegeben wird. Im Log erscheint eine Info-Meldung, wenn der Sync ausgelöst wird.


    fnu :

    Quote

    "vdr-plugin-svdrpservice" ist installiert? Also auf dem Server?


    Warum auf dem Server? Svdrpservice alleine tut genau gar nichts. Epgsync nutzt svdrpservice und muss daher nur zusammen mit epgsync auf dem Client installiert werden.

    VDR liest die Filter-Daten von einem Dateideskriptor. Bei einer DVB-Karte ist das ein Block-Device. Streamdev stellt den Dateideskriptor in Form eines Sockets bereit. Mit dem Socket ist systemseitig ein Puffer assoziiert. Die Meldung erscheint, wenn Streamdev nicht in das Socket schreiben kann, weil dessen Puffer voll ist. Scheinbar holt VDR die Daten nicht oder nicht schnell genug ab. Möglicherweise ist auch der Kernel des Raspberrys auf Sparsamkeit getrimmt und stellt für Pipes weniger Speicherplatz zur Verfügung als bei einem Standardkernel.

    Quote

    Allerdings vermisse ich jetzt das einfache verschieben von Aufnahmen in mein Filmarchiv (Unterverzeichniss im Aufnahmemenü).


    Drück mal im remotetimers-Aufnahmenmenü bei einer Aufnahme auf die Taste "Rot" ;). Funktioniert anders wie in extrecmenu (mit folders.conf wie der Original-VDR), damit kannst Du aber genauso verschieben, umbenennen, Priorität und Lebensdauer ändern, ...

    Quote

    Am Client habe ich die Änderung von PIDs erlaubt, aber davon bekommt der offenbar garnichts mit?! Im steamdev Plugin des Client ist der StreamFilter abgeschalten, weil das sonst Ärger macht.


    Meta-Daten wie EPG aber auch PID-Änderungen werden über das Filter-Streaming an den Client geschickt. Wenn Du diese Option im streamdev-client ausschaltest, ist klar, dass er PID-Änderungen nicht mehr mitbekommt.

    Hallo hepi,


    ich persönlich nutze das HTTP Streaming überhaupt nicht. Ich arbeite an dieser Baustelle derzeit eigentlich nur weiter, wenn ich entweder sehr viel Zeit habe (was selten der Fall ist) oder wenn ich entsprechenden Input von außen bekomme. Wenn also jemand etwas beisteuern kann - nur her damit ;)


    Viele Grüße,
    Frank

    Hallo zusammen,


    es wurde allmählich Zeit für eine offzielle Version des Streamdev-Plugins für VDR 2.0. Version 0.6.1 ist jetzt verfügbar unter http://projects.vdr-developer.…jects/plg-streamdev/files. Das Streamdev-Server Plugin setzt zumindest VDR 1.7.25 voraus, das Streamdev-Client Plugin sollte auch noch mit VDR 1.6 zurecht kommen. Bei VDR Versionen älter als 1.7.33 müssen die Makefiles durch die beiliegenden alten Versionen überschrieben werden.


    Seit 0.6.0 gab es neben Bugfixes und internen Umstrukturierungen folgende Neuerungen:


    Das Streamdev-Client Plugin kann nun mehrere Devices öffnen, damit der Client gleichzeitig mehrere Transponder vom selben Server empfangen kann (z.B. für PiP oder clientseitige Aufnahmen). Bisher musste dazu immer ein Duplikat des Plugins geladen werden. Dies ist nun nur noch notwendig, wenn sich der Client zu mehreren Servern verbinden möchte.


    Grundfunktionen für das HTTP-Streaming von Aufnahmen. Da ist noch viel zu tun. Es fehlen insbesondere ein ordentliches Menü und das Remuxing. Derzeit wird die Aufnahme einfach 1:1 gestreamt (also in der Regel als TS), auch wenn das Menü etwas anderes erwarten lässt.


    Beim HTTP-Streaming gibt es neben dem HTML-Menü und den M3U-Playlisten nun auch RSS-Feeds. Damit sollte die eine oder andere Smart-TV App etwas anfangen können.


    Eine neue Option im Streamdev-Server versetzt den Server gleich beim Start in den Pausier-Modus. Die Voreinstellung "auto" macht dies nur dann, wenn kein Ausgabe-Device gefunden wird.


    Hier das vollständige Changelog:

    Danke für's Feedback - ist eingecheckt. Auch die "Start suspended" Option ist eingebaut :]


    Dass es der Client mitbekommt, wenn ihn der Server die Karte geklaut hat, schaue ich mir bei Gelegenheit an.

    Und hier der Patch für das Problem, dass das Bild nach dem Umschalten manchmal schwarz bleibt. Eine 100% Lösung ist ohne Änderung im VDR-Code nur mit unverhältnismäßigem Aufwand zu erreichen. Das Zeitfenster ist jetzt aber so minimal, dass es in der Praxis nur noch äußerst selten vorkommen dürfte.

    Files

    • occupied.diff

      (5.96 kB, downloaded 124 times, last: )

    Ja, alles prima. Wenn immer mal wieder ein paar Tage Sendepause ist, hat es damit zu tun, dass ich gerade sehr wenig Zeit habe.


    Das Problem trat bei Dir noch auf und bei anderen nicht, weil Du eine Priorität > 0 eingestellt hattest. Allerdings kann ich nicht erkennen, warum es mit der Version vom Januar funktionieren soll. Ich habe den aktuellen Git-Stand nochmal mit Januar verglichen und sehe keinen Grund, warum sich der Code anders verhalten sollte. Egal - ich hab einen Patch gegen das aktuelle Git angehängt. Damit sollte das Überspringen der Kanäle nun endlich gelöst sein. Wäre prima, wenn zwei oder drei den Patch testen könnten, bevor ich ihn einchecke.


    Dass ab und zu nach dem Umschalten der Bildschirm schwarz bleibt, ist noch nicht behoben.

    Könntest Du den aktuellen Stand aus dem git holen und den Client mit "STREAMDEV_DEBUG=1 make install-client" kompilieren? Die Debug-Ausgabe kommen über stderr. Am besten schaltest Du das Filter-Streaming so lange aus, sonst wird's ein bisschen viel Ausgabe.