https://github.com/MarkusEh/plugin.video.vdr.recordings sollte funktionieren.
Aus dem Readme:
Kodi 19 (and newer Kodi versions): Use the github functionality to create a zip from this repository.
https://github.com/MarkusEh/plugin.video.vdr.recordings sollte funktionieren.
Aus dem Readme:
Kodi 19 (and newer Kodi versions): Use the github functionality to create a zip from this repository.
Hallo,
Manchmal bekomme ich kein Bild, sondern nur Ton. Das sieht dann (nach svdrpsend plug softhddevice atta) so aus:
ZitatAlles anzeigenFeb 14 16:06:37 vdr1 vdr: [2238] SVDRP vdr1 < 127.0.0.1:55028 client connection accepted
Feb 14 16:06:37 vdr1 vdr: [2238] SVDRP vdr1 > 127.0.0.1:55028 server created
Feb 14 16:06:37 vdr1 vdr: audio: 'alsa' output module used
Feb 14 16:06:37 vdr1 vdr: audio/alsa: supports pause: yes
Feb 14 16:06:38 vdr1 vdr: audio: 44100Hz supports 1 2 3 4 5 6 7 8 channels
Feb 14 16:06:38 vdr1 vdr: audio: 48000Hz supports 1 2 3 4 5 6 7 8 channels
Feb 14 16:06:38 vdr1 vdr: audio: 192000Hz supports 1 2 3 4 5 6 7 8 channels
Feb 14 16:06:38 vdr1 vdr: video/vdpau: Can't create vdp device on display ':0.0'
Feb 14 16:06:38 vdr1 vdr: video: 'vdpau' output module isn't supported
Feb 14 16:06:38 vdr1 vdr: [2238] SVDRP vdr1 < 127.0.0.1:55028 connection closed
Feb 14 16:06:38 vdr1 vdr: [2238] SVDRP vdr1 < 127.0.0.1:55028 server destroyed
Normalerweise bekomme ich ein Bild. Das sieht dann (nach svdrpsend plug softhddevice atta) so aus:
ZitatAlles anzeigenFeb 14 16:27:13 vdr1 vdr: [2238] SVDRP vdr1 < 127.0.0.1:55500 client connection accepted
Feb 14 16:27:13 vdr1 vdr: [2238] SVDRP vdr1 > 127.0.0.1:55500 server created
Feb 14 16:27:13 vdr1 vdr: audio: 'alsa' output module used
Feb 14 16:27:13 vdr1 vdr: audio/alsa: supports pause: yes
Feb 14 16:27:13 vdr1 vdr: audio: 44100Hz supports 1 2 3 4 5 6 7 8 channels
Feb 14 16:27:13 vdr1 vdr: audio: 48000Hz supports 1 2 3 4 5 6 7 8 channels
Feb 14 16:27:13 vdr1 vdr: audio: 192000Hz supports 1 2 3 4 5 6 7 8 channels
Feb 14 16:27:13 vdr1 vdr: video/vdpau: VDPAU API version: 1
Feb 14 16:27:13 vdr1 vdr: video/vdpau: VDPAU information: NVIDIA VDPAU Driver Shared Library 340.108 Wed Dec 11 14:31:24 PST 2019
Feb 14 16:27:13 vdr1 vdr: video/vdpau: high quality scaling unsupported
Feb 14 16:27:13 vdr1 vdr: video/vdpau: feature deinterlace temporal supported
Feb 14 16:27:13 vdr1 vdr: video/vdpau: feature deinterlace temporal spatial supported
Feb 14 16:27:13 vdr1 vdr: video/vdpau: attribute skip chroma deinterlace supported
Feb 14 16:27:13 vdr1 vdr: video/vdpau: 4:2:0 chroma format with 4096x4096 supported
Feb 14 16:27:13 vdr1 vdr: video/vdpau: 4:2:2 chroma format with 4096x4096 supported
Feb 14 16:27:13 vdr1 vdr: video/vdpau: 8bit BGRA format with 8192x8192 supported
Feb 14 16:27:13 vdr1 vdr: video/vdpau: 10bit RGBA format with 8192x8192 supported
Feb 14 16:27:13 vdr1 vdr: video/vdpau: created osd output surface 1920x1080 with id 0x00000009
Feb 14 16:27:14 vdr1 vdr: [2238] SVDRP vdr1 < 127.0.0.1:55500 connection closed
Feb 14 16:27:14 vdr1 vdr: [2238] SVDRP vdr1 < 127.0.0.1:55500 server destroyed
~ Markus
Autostart von vdr abschalten und manuell in der rc.local starten.
Oder doch die empfohlenen Methoden nehmen ...
Hi,
mal wieder getestet, und heute:
ZitatAlles anzeigenFeb 13 22:02:22 vdr1 vdr: [149130] SVDRP vdr1 < 127.0.0.1:44498 client connection accepted
Feb 13 22:02:22 vdr1 vdr: [149130] SVDRP vdr1 > 127.0.0.1:44498 server created
Feb 13 22:02:22 vdr1 vdr: [149130] SVDRP vdr1 < 127.0.0.1:44498 errno = 11, while reading, retrying
Feb 13 22:02:22 vdr1 vdr: message repeated 348 times: [ [149130] SVDRP vdr1 < 127.0.0.1:44498 errno = 11, while reading, retrying]
Feb 13 22:02:22 vdr1 vdr: [149130] SVDRP vdr1 < 127.0.0.1:44498 connection closed
Feb 13 22:02:22 vdr1 vdr: [149130] SVDRP vdr1 < 127.0.0.1:44498 server destroyed
11 ist EAGAIN, das leuchtet mir noch ein. Also, dieser Fehler passiert gelegentlich, sehr oft geht die Verbindung auch mit
ZitatFeb 13 22:02:23 vdr1 vdr: [149130] SVDRP vdr1 < 127.0.0.1:44500 client connection accepted
Feb 13 22:02:23 vdr1 vdr: [149130] SVDRP vdr1 > 127.0.0.1:44500 server created
Feb 13 22:02:23 vdr1 vdr: [149130] SVDRP vdr1 < 127.0.0.1:44500 connection closed
Feb 13 22:02:23 vdr1 vdr: [149130] SVDRP vdr1 < 127.0.0.1:44500 server destroyed
durch.
~ Markus
Hi,
Anbei ein neuer Patch.
r = 0 bedeutet laut manpage "If no process has the pipe open for writing, read() shall return 0 to indicate end-of-file." . Dies entspricht auch der Beobachtung von Klaus. Also wird bei r = 0 direkt "Close();" aufgerufen, wie ohne den Patch.
Bei r < 0 wird ein Eintrag ins syslog geschrieben, und nach einem Timeout abgebrochen.
Funktioniert hier super. Im Syslog steht dann gelegentlich:
ZitatAlles anzeigenFeb 11 21:23:02 vdr1 vdr: [143134] SVDRP vdr1 < 127.0.0.1:41328 client connection accepted
Feb 11 21:23:02 vdr1 vdr: [143134] SVDRP vdr1 > 127.0.0.1:41328 server created
Feb 11 21:23:02 vdr1 vdr: [143134] SVDRP vdr1 < 127.0.0.1:41328 errno = 9, while reading, retrying
Feb 11 21:23:02 vdr1 vdr: message repeated 1202 times: [ [143134] SVDRP vdr1 < 127.0.0.1:41328 errno = 9, while reading, retrying]
Feb 11 21:23:02 vdr1 vdr: [143134] SVDRP vdr1 < 127.0.0.1:41328 connection closed
Feb 11 21:23:02 vdr1 vdr: [143134] SVDRP vdr1 < 127.0.0.1:41328 server destroyed
errno = 9 bedeutet EBADF, also "The fildes argument is not a valid file descriptor open for reading." .
Bleibt die Frage: Warum ist der file descriptor 1202 mal ungültig, und danach auf einmal gültig? Und außerdem: 2 Zeilen vor dem read wird ja mit "file.Ready(false)" überprüft, ob der file descriptor OK ist.
~ Markus
Und meinem Patch fehlt außerdem der Timeout.
Ich werde noch eine Runde testen und dann einen neuen Patch posten.
Hi,
Wird auch Raspi 3 unterstützt?
~ Markus
Hi,
> The O_NONBLOCK flag is set for the file descriptor and the process would be delayed.
Ist das sinnvoll? Wäre es nicht besser, O_NONBLOCK nicht zu setzten?
~ Markus
Anbei ein verbesserter Patch
Hallo Klaus,
Ich sehe durchaus, dass mein Patch verbessert werden sollte.
Ich habe einfach nur verhindert, dass "Close" aufgerufen wird, obwohl kein Verbindungsfehler vorliegt.
Bleibt die Frage: wie kann ich zuverlässig prüfen, ob ein Fehler vorliegt?
Ich habe mal auf https://linux.die.net/man/3/read geschaut:
ZitatUpon successful completion, read() and pread() shall return a non-negative integer indicating the number of bytes actually read. Otherwise,
the functions shall return -1 and set errno to indicate the error.
Das würde für Deinen Patch sprechen. Aber darunter steht:
ZitatErrors
The read() and pread() functions shall fail if:
EAGAIN
The O_NONBLOCK flag is set for the file descriptor and the process would be delayed....
Die Frage ist, wie kann ich zuverlässig prüfen, ob die Verbindung wirklich nicht mehr da ist? Weil nur in diesem Fall "Close" aufgerufen werden sollte.
~ Markus
Hi,
Ist ein Bug in VDR. Der attachte Patch behebt den Fehler.
kls , kannst Du dir das bitte mal anschauen?
~ Markus
In der setup.conf muss: "DisplaySubtitles = 1" stehen.
Es werden aber nicht bei allen Sendern/Sendungen Untertitel mitgesendet.
Hi,
Wenn Puffer des VDR überlaufen, solltest Du einen Eintrag im Syslog finden.
~ Markus
Hi,
Es gibt jetzt Version 3.0.4.
Die Umlaute im OSD funktionieren jetzt auch auf einem RPI.
Außerdem habe ich diesen https://github.com/MarkusEh/vdr-plugin-live/pull/1 pullrequest integriert.
~Markus
Hi,
Was EPG angeht, ist VDR 2.4x auch nicht besser. Damit kann man nur Timer austauschen.
Egpsync müsste funktionieren.
~ Markus
Hi,
Es liegt an osd_status.cpp im live Plugin, Methode "std::string const OsdStatusMonitor::EncodeHtml(const std::string& html)":
td::string const OsdStatusMonitor::EncodeHtml(const std::string& html) {
std::ostringstream result;
std::string::const_iterator i;
for (i = html.begin(); i != html.end(); ++i) {
if (*i >= 128)
result << "&#" << static_cast<int>(*i) << ";";
else if (*i == '<')
result << "<";
else if (*i == '>')
result << ">";
else if (*i == '&')
result << "&";
else if (*i == '"')
result << """;
else
result << static_cast<char>(*i); // Copy untranslated
}
return result.str();
}
Alles anzeigen
Auf dem rpi ist bei "ä" *i:
Zitat$7 = 195 '\303'
$8 = 164 '\244'
Und wird encoded, und dann nicht mehr als ä dargestellt.
Auf dem Intel ist bei "ä" *i:
Zitat$7 = -61 '\303'
$8 = -92 '\244
Und wird nicht encoded (da -61 < 129), und damit korrekt dargestellt.
Vermutlich der Unterschied zwischen "signed char" und "unsigned char".
~Markus
Hi,
Ich habe extra ein "<meta charset="UTF-8">" in den "<head>" geschrieben. Hat aber nichts geändert.
Es ist mir auch unklar, warum der Browser bei der Einen URL ein anderes Encoding wählen sollte als bei der anderen URL.
~ Markus
Hi,
locale (auf RPI4)
LANG=de_DE.UTF-8
LANGUAGE=de_DE.UTF-8
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_MESSAGES="de_DE.UTF-8"
LC_PAPER="de_DE.UTF-8"
LC_NAME="de_DE.UTF-8"
LC_ADDRESS="de_DE.UTF-8"
LC_TELEPHONE="de_DE.UTF-8"
LC_MEASUREMENT="de_DE.UTF-8"
LC_IDENTIFICATION="de_DE.UTF-8"
LC_ALL=de_DE.UTF-8
Alles anzeigen
locale (auf Intel)
LANG=de_DE.UTF-8
LANGUAGE=de_DE
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_MESSAGES="de_DE.UTF-8"
LC_PAPER="de_DE.UTF-8"
LC_NAME="de_DE.UTF-8"
LC_ADDRESS="de_DE.UTF-8"
LC_TELEPHONE="de_DE.UTF-8"
LC_MEASUREMENT="de_DE.UTF-8"
LC_IDENTIFICATION="de_DE.UTF-8"
LC_ALL=
Alles anzeigen
Aus dem Syslog, beim Start des VDR:
Jan 30 16:58:33 rpi4 vdr: [32567] VDR version 2.4.6 started
Jan 30 16:58:33 rpi4 vdr: [32567] switched to user 'vdr'
Jan 30 16:58:33 rpi4 vdr: [32567] codeset is 'UTF-8' - known
Jan 30 16:58:33 rpi4 vdr: [32567] override character table is 'ISO-8859-9' - known
Jan 30 16:58:33 rpi4 vdr: [32567] found 28 locales in /usr/share/locale
Und
Jan 30 14:39:39 vdr1 vdr: [12399] VDR version 2.4.6 started
Jan 30 14:39:39 vdr1 vdr: [12399] switched to user 'vdr'
Jan 30 14:39:39 vdr1 vdr: [12399] codeset is 'UTF-8' - known
Jan 30 14:39:39 vdr1 vdr: [12399] override character table is 'ISO-8859-9' - known
Jan 30 14:39:39 vdr1 vdr: [12399] found 28 locales in /usr/share/locale