Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - maf

1
Hallo,

überlicherweise werden ja nach dem Kanalwechsel oder nach Ok (o. dgl) mit der Fernbedienung für gewisse Zeit Informationen zur aktuellen und zur nächsten Sendung eingeblendet. Bei meinem MLD 5.3 Client aber klappt das nicht immer. Bei manchen Sendern wird in der Oberfläche "Klassischer VDR" lediglich ein graues Feld mit Datum und Uhrzeit angezeigt. Oder auch nur die nächste, nicht aber die aktuelle Sendung. In den Oberflächen "LCARS" und "ST:TNG-Konsolen" tritt das Problem nicht auf.

Die Programmdaten werden mit dem Plugin epgsync vom Server geholt. Unter //Programm// sind im OSD alle Informationen verfügbar. Unter System > VDR Setup > Plugins -> epgsync habe ich den Wert für "Jetzt" und "Nächste" zuerst Nein auf Ja gesetzt. Das hat aber nicht geholfen.

An welcher Schraube sollte ich drehen?

Gruß, maf

2
Hallo,

ich habe unter MLD 5.3 auf einem Raspberry Pi das Paket suspend installiert. Nun kann ich mit der Fernbedienung den Client in den Ruhezustand versetzen, d.h. das Programm vdr vorübergehend beenden. Der angeschlossene Fernseher, ein Samsung UE55H6270, wird dabei ausgeschaltet.

Ich kann den Client, d.h. vdr, auch mit der Fernbedienung wieder reaktivieren. Nur leider wird dabei der Fernseher nicht wieder eingeschaltet. Den muss ich mit seiner eigenen Fernbedienung einschalten.

Mit MLD 5.0.0 habe ich das Problem nicht, der Fernseher schaltet sich "von alleine" wieder ein. Was sollte ich unter MLD 5.3 tun?

Gruß, maf

3
Entwicklung [ Development ] / Patch für Plugin svdrpservice
« on: June 19, 2019, 12:28:12 »
Vor einem guten Jahr habe ich über Probleme im OSD bei der Kommunikation zwischen Client und Server berichtet. Zum Beispiel ließ sich ein Timer auf dem Server nicht (de)aktivieren. Damals ging es noch um MLD 5.0. Doch nach dem Wechsel zu MLD 5.3 musste ich feststellen, das die Probleme weiterhin bestehen.

Zunächst dachte ich, es läge am Plugin remotetimers. Mittlerweile weiß ich, dass das Plugin svdrpservice den Fehler verursacht. Damit betrifft er viele Plugins auf dem Client, die mit dem Server kommunizieren, und dürfte auch für MLD 5.4 interessant sein, in dem wegen des Wechsels zu VDR 2.4.0 das Plugin remotetimers nicht mehr benötigt wird.

Ursache der Kommunikationsprobleme ist, dass der Server recht zügig die SVDRP-Verbindung beendet, wenn der Client sich nicht mehr meldet, und dem Client eine entsprechende Nachricht schickt. Der Client ignoriert jedoch den Timeout und hält fälscherweise die Nachricht des Servers (bzw. deren Reply Code) für die Antwort auf seine nächste Anfrage, ohne diese überhaupt abgeschickt zu haben.

Mit folgendem Patch server-timeout.patch habe ich das Problem für mich gelöst:
Code: [Select]
--- a/connection.c
+++ b/connection.c
@@ -192,7 +192,7 @@
        if (!Cmd)
                return false;

-       if (Reconnect && !file.IsOpen())
+       if (Reconnect && (!file.IsOpen() || ReceivedTimeout()))
                Open();
        if (!file.IsOpen()) {
                esyslog("svdrpservice: unable to send command to %s. Socket is closed", serverIp);
@@ -240,6 +240,18 @@
        return 0;
 }

+bool cSvdrpConnection::ReceivedTimeout() {
+       if (file.Ready() && ReadLine(0)) {
+               long int code = ::strtol(buffer, NULL, 10);
+               if (code != 221) {
+                        esyslog("svdrpservice: unexpected message from %s: '%s'", serverIp, buffer);
+               }
+               file.Close();
+               return true;
+       }
+       return false;
+}
+
 bool cSvdrpConnection::ReadLine(int TimeoutMs) {
        if (!file.IsOpen())
                return false;
--- a/connection.h
+++ b/connection.h
@@ -26,6 +26,7 @@
                bool            shared;

                int             Connect();
+               bool            ReceivedTimeout();
                bool            ReadLine(int TimeoutMs);
        public:
                cSvdrpConnection(const char *ServerIp, unsigned short ServerPort, bool Shared);

Ich würde mich freuen, wenn das MLD Team den Patch testen und im Erfolgsfall eine neue Version des Plugins für MLD 5.3 (und MLD 5.4) bereitstellen könnte

4
Ich habe einen Patch, den ich zuvor unter yaVDR für ein Plugin erstellt hatte, in das Unterverzeichnis src des Pakets kopiert, das ich erstellen möchte. Der Name der Patch-Datei enthält den Namen des Pakets und endet mit '.patch'. Bei
Code: [Select]
cd PACKAGENAME; make allein wird der Patch allerdings nicht angewandt. Auch bei
Code: [Select]
cd PACKAGENAME; make patch nicht. Was muss ich tun, damit ein Patch bei der Paketerstellung angewandt wird?

5
Hallo,

was muss ich tun, um in einer Entwicklungsumgebung für MLD 5.3 eine lokale Versionsnummer (im Debian-Jargon eigentlich eine neue Revision) für meine eigene Variante eines Pakets zu vergeben?

Danke, maf

6
Wie kann ich herausfinden, welche Pakete (Tools, Bibliotheken) über den Standardumfang von Raspbian hinaus für einen kompletten Build erforderlich sind?

Würde
Code: [Select]
make checkout_all
make deps
eine vollständige Liste liefern?

7
Hallo,

ich möchte einen Patch für das Plugin svdrpservice aus MLD 5.3 für den Raspberry Pi ausprobieren. Dazu habe ich nach der Anleitung ein Docker Image erstellt.

Im Container existiert nach dem Start das Verzeichnis vdr-plugin-svdrpservice noch nicht, also geht auch
Code: [Select]
cd vdr-plugin-svdrpservice
make
noch nicht.

Bei meinem Versuch, das Verzeichnis für das Plugin bereitzustellen, tritt allerdings ein Fehler auf:
Code: [Select]
root@1d8928adab15:/MLD# make checkout vdr-plugin-svdrpservice
Cloning into 'git-5'...
fatal: repository 'http://minidvblinux.de/git-5/.git/' not found
Makefile.git:111: recipe for target 'checkout' failed
make: *** [checkout] Error 128
Wenn ich Makefile.git richtig lese, dann kommt der Name des Pakets (Variable name) dort nicht an. Ich vermute, vor dem checkout muss ich noch etwas anderes tun.

Was ist die minimale Befehlsfolge nach dem Start des Containers, um ein einzelnes Paket zu bauen?

Gruß, maf

8
Hallo,

ich bin gerade dabei, MLD 5.3 als Client auf einem RPi einzurichten. Mein Server läuft unter Debian Stretch.

Die automatische Übernahme der Kanalliste funktioniert. Wenn ich es recht verstehe, indem MLD nach einem Streamdev-Server im lokalen Netz sucht.

Aber wie ist es mit dem Videoverzeichnis? In /etc/fstab bindet MLD ein Verzeichnis /data mit der IP-Adresse des Streamdev-Servers unter /mnt/mld-server ein. Das Verzeichnis /data gibt es allerdings nicht auf dem Server.

Kann ich meinen Server so konfigurieren, dass MLD das "richtige" Videoverzeichnis findet, z.B. mit Hilfe von avahi? Wenn der Server auch unter MLD läuft, scheint das ja möglich zu sein. Kann ich das unter Debian nachahmen?

Danke, maf

9
Hallo,

vor kurzem habe ich meinen Server aktualisiert, von VDR 2.0.x unter Debian Wheezy auf VDR 2.2.0 unter Debian Stretch. Seitdem habe ich Probleme, wenn ich auf einem der RPi2-Clients unter MLD 5.0 einen Timer bearbeite oder das OSD des Servers aufrufe.

Wenn ich auf einem Client die Liste der Timer öffne (alle auf dem Server), führen OSD-Befehle wie "Ein/Aus" oder "Löschen" nur zur Meldung "Timers modified remotely - please check remote timers" und haben keine Wirkung. Die Eigenschaften eines geöffneten Timers kann ich ändern, beim Bestätigen erhalte ich i.d.R. wieder die obige Meldung, aber die Änderung ist erfolgt.

Wenn ich auf einem Client das Server Menü öffne, kann ich ich mich eine Weile durch dessen OSD hangeln, aber meist lande ich sehr schnell wieder im Hauptmenü des Clients. Wenn ich dann das Server Menü nochmals öffne, erhalte ich eine Meldung, dass dies in Benutzung sei, kann aber einen neuen Versuch starten.

Ich habe keine Hinweise gefunden, dass andere schon diese Fehlermeldung erhalten hätten. Habe ich bei der Konfiguration des neuen Servers vielleicht noch irgendetwas vergessen?

Auswahl Software auf dem Server: vdr (2.2.0/2.2.0), streamdev-server (0.6.1-git), svdrposd (1.0.0), svdrpservice (1.0.0)
Auswahl Software auf den Clients: vdr (2.2.0/2.2.0), svdrpservice (1.0.0), rpihddevice (1.0.0), remotetimers (1.0.1), remoteosd (1.0.0)

maf

Edit: Ich war zunächst fälschlicherweise der Meinung, meine Clients liefen unter MLD 5.2. In Wirklichkeit ist es jedoch 5.0. Ich habe Betreff und Beitrag korrigiert.

10
Hallo,

ich benutzte MLD 5.2 als VDR Client an einem Samsung Fernsehgerät. Das CECRemote Plugin ist installiert und funktioniert. Als Fernbedienung benutze ich aber meist die Medion X10 des Clients, weil ich damit den VDR ein- und ausschalten kann.

Gibt es eine Möglichkeit, über die VDR Fernbedienung die Lautstärke des Fernsehgerätes zu kontrollieren, so wie das z.B. mit der Fernbedienung des Apple TV geschieht? Das hätte für mich den Vorteil, dass ich nur eine Lautstärkeeinstellung (die des Fernsehgeräts) kontrollieren muss, egal ob ich das Fernsehgerät selbst, den VDR oder Apple TV benutze.

maf

11
Allgemein [ General ] / MLD 5.3: Anzeige der Signalstärke im Webif?
« on: September 18, 2017, 01:15:01 »
Hallo,

in einem schon etwas älterem Thread zu MLD 3.x habe ich den Hinweis gefunden, dass es im Webif eine Möglichkeit gibt, die Signalstärke anzeigen zu lassen. Das wollte ich zum Ausrichten eines neuen Spiegel ausnutzen. Ich habe eine ISO zur Netzinstallation heruntergeladen und kann damit per PXE meinen Rechner booten, ein Systempaket auswählen und das Live-System starten. Versucht habe ich jetzt erst einmal mit einer Server-Konfiguration. Das klappt alles sehr gut. Der Zugriff über das Webif funktioniert auch. Nur die Anzeige, die laut altem Thread unter "Setup / TV / Antenna" zu finden sein sollte, habe ich noch nicht entdeckt. Gibt es die in MLD 5.3 noch? Vielleicht in einer anderen Systemkonfiguration?

Danke im Voraus,
maf

12
Als ich sah, dass es derzeit einen Thread MLD-5.1 schaltet Fernseher ein gibt, konnte ich nicht wiederstehen  ;)

Seit dem Upgrade von MLD 5.0 auf 5.1 (auf einem RPi 2 an Samsung TV) bewirkt das Einschalten des Fernsehers, dass die MLD aus dem Ruhezustand aufgeweckt wird. Kann ich das irgendwie verhindern? Manchmal möchte ich einfach nur den Fernseher benutzen ohne dass der VDR Server hochfährt.

Gruß, maf

13
Allgemein [ General ] / Probleme beim Upgrade auf 5.1 mit APT
« on: August 31, 2016, 09:22:25 »
Hallo,

ich bin beim Versuch, eine Installation von MLD 5.0 auf einem Raspberry Pi 2 mittels APT auf MLD 5.1 zu aktualisieren, auf mehrere Probleme gestoßen. Folgendes habe ich getan:

Zunächst habe ich das System auf den aktuellen Stand von 5.0 gebracht. Durch ''apt-get update; apt-get dist-upgrade'' wurden neuen Versionen von apt (1.0.9.8-65) und libapt-pkg4.12 (1.0.9.8.2-~1) installiert. Dabei wurde offensichtlich /etc/apt/sources.list (nun leer) durch /etc/apt/sources.list.d/main.list ersetzt.

Dann habe ich in der Datei main.list die 5 durch ein 5.1 ersetzt:
Code: [Select]
deb http://www.minidvblinux.de/download/5.1/files stable main
Unter Debian/Ubuntu müsste man nun zunächst ''apt-get update'' ausführen. Zu meiner Überraschung wurde aber in MLD dadurch die Änderungen in main.list wieder rückgängig gemacht. Also habe ich main.list nochmals geändert und sofort ''apt-get dist-upgrade'' ausgeführt:
Code: [Select]
mld2> apt dist-upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... The following package was automatically installed and is no longer required:
  libpython2.7
Use 'apt-get autoremove' to remove it.
Done
The following packages will be REMOVED:
  lirc:armhf-rpi2 mld-remote
The following NEW packages will be installed:
  appstarter libcec3 libdbi1 libdiscid0 libfuse2 libgraphicsmagick3 liblcms2-2
  libmysqlclient18 libossp-uuid16 libpulseeight-platform1 librrd4 libwmf0.2-7
  libxft2
The following packages will be upgraded:
  alsa:armhf-rpi2 at backup base btrfs:armhf-rpi2 busybox dpkg dvb-apps
  eventlircd:armhf-rpi2 init initramfs:armhf-rpi2 install irkeytable
  kernel:armhf-rpi2 libdvdnav4 libdvdread4 libgdk-pixbuf2.0-0 libgme0
  libportaudio2 libsmbclient libssh-4 locales network:armhf-rpi2 nfs-client
  perl perl-base psplash rc-core:armhf-rpi2 rpi:armhf-rpi2
  rpi-firmware:armhf-rpi2 ssh suspend vdr vdr-plugin-apt vdr-plugin-cecremote
  vdr-plugin-control vdr-plugin-epgsearch vdr-plugin-epgsync vdr-plugin-femon
  vdr-plugin-iptv vdr-plugin-remoteosd vdr-plugin-remotetimers
  vdr-plugin-rpihddevice:armhf-rpi2 vdr-plugin-setup vdr-plugin-sleeptimer
  vdr-plugin-streamdev-client vdr-plugin-suspendoutput vdr-plugin-svdrpservice
  vlc webserver
50 upgraded, 13 newly installed, 2 to remove and 0 not upgraded.
...

Nach dem Upgrade funktionierte VDR wieder, im Hauptmenü fand sich aber zu meiner Überraschung ein Eintrag "Installiere MiniDVBLinux" (oder so ähnlich). Den habe ich ausgewählt, aber keine Reaktion festgestellt.

Dass beim Upgrade die Pakete lirc und mld-remote gelöscht wurden, dürfte der Grund dafür sein, dass nach dem Neustart nicht mehr alles Tasten der Fernbedienung wie gewohnt funktionierten. Was genau ging / nicht ging kann ich aber leider nichr mehr sagen. Dafür wurde mir durch eine OSD-Nachricht die URL angezeigt, unter der die Konfiguration des Systems möglich sei. Auch im Browser ging es zunächst um eine Installation von MLD.

Das war mir alles nicht geheuer und ich habe zunächst einmal die SD-Karte mit der Sicherung überschrieben, die ich vor dem Upgrade-Versucht erstellt hatte.

Zusammengefasst habe ich als folgende Probleme
 - apt-get update überschreibt Änderungen in /etc/apt/soruces.list.d/main.list
 - Das Upgrade scheint die Installation oder Konfiguration der Fernbedienung zu beeinträchtigen
 - Nach dem Upgrade scheint das System nicht mehr "wirklich" installiert zu sein

Natürlich wäre ich dankbar, wenn mir jemand erläutern könnte, was ich alles so falsch verstanden und gemacht habe  :)

Schönen Gruß,
maf

14
Hallo,

wenn ich einen neuen RPi2 MLD-Client installiere, sucht der von alleine einen Server im lokalen Netz. Aber leider findet er nicht meinen VDR Server, der unter Debian läuft, sondern einen Samsung Fernseher. Natürlich hat der kein Videoverzeichnis, das der Client einbinden kann...

Ich habe auf dem Server das Paket avahi-daemon installiert und eine Datei /etc/avahi/services/vdr-rec.service mit folgendem Inhalt angelegt
Code: [Select]
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">VDR Recordings on %h</name> ## Name
<service>
       <type>_nfs._tcp</type>
       <port>2049</port>
       <txt-record>path=/var/lib/video</txt-record> ## path to shared Folder
       <txt-record>subtype=vdr</txt-record> ## subtype
</service>
</service-group>
Das ist offensichtlich nicht das Richtige.

Was kann/muss ich auf Server und Client tun, damit der MLD Client den Debian Server findet?

15
Hallo,

zwei Wochen lang habe ich meinem RPi2 Client mit MLD 4.0.1 nicht benutzt. Nach dem problemlosen Start standen Aktualisierungen zur Verfügung, denen ich zugestimmt habe.

Nun kann ich VDR nicht mehr anhalten, ohne dass gleich der ganze RPi herunterfährt. Zunächst habe ich wie gewohnt die POWER-Taste der Fernbedienung benutzt (das Paket 'suspend' ist installiert): Der Rechner fuhr herunter. Nach Neustart Neuinstallation von 'suspend': Keine Änderung. Dann in einer Shell
Code: [Select]
stop vdr dann
Code: [Select]
/etc/init.d/vdr stop schließlich sogar nur noch
Code: [Select]
killproc "/usr/bin/vdr" 10 Immer wird zunächst der VDR beendet, dann fährt der RPi selbst herunter. Ich übersehe vermutlich etwas ganz Triviales. Aber was?

Gruß, maf