[gelöst] Fehler beim Resume einer Aufzeichnung mit Sonderzeichen und vfat-Ersetzung

  • Hallo,
    ich habe gerade versucht die Wiedergabe einer Aufzeichnung nach dem Neustart des Rechners fortzusetzen. Die Besonderheit bei der Aufnahme ist, dass der Name mit einem Sonderzeichen endet und ich die Ersetzung der vfat-inkompatiblen Zeichen aktiviert habe.


    Der Pfad für die Aufnahme lautet:

    Code
    1. /srv/vdr/video.00/VDR/House_of_Lies/Was_würde_Clooney_tun#3F/2013-03-06.23.13.41-0.rec


    Wenn ich jetzt die Wiedergabe beende und den Rechner neu starte und die Wiedergabe über die Play-Taste fortsetzen lassen möchte passiert das:
    Im Log:


    In der setup.conf stand dabei:

    Code
    1. LastReplayed = /srv/vdr/video.00/House_of_Lies/Was_würde_Clooney_tun


    Der VDR 1.7.41 (testing-PPA von yaVDR) läuft mit VDR_LANG=de_DE.UTF-8 und VDR_CHARSET_OVERRIDE=ISO-8859-9 und wurde mit "--vfat" gestartet:

    Code
    1. /usr/bin/vdr --lirc=/var/run/lirc/lircd -v /srv/vdr/video.00 -c /var/lib/vdr -L /usr/lib/vdr/plugins -r /usr/lib/vdr/vdr-recordingaction -s /usr/lib/vdr/vdr-shutdown.wrapper -E /var/cache/vdr/epg.data -u vdr -g /tmp --port 6419 -w 0 --vfat -Psofthddevice -D -Pfritzbox -Pyaepghd -Pxvdr -t 10 -Psundtek -Pconflictcheckonly -Pskinnopacity --epgimages=/var/cache/vdr/epgimages -Pskinsoppalusikka --logodir=/usr/share/vdr-xpmlogos -Pepgsearchonly -Pmarkad -Prestfulapi --port=8002 --ip=0.0.0.0 --epgimages=/var/cache/vdr/epgimages --channellogos=/usr/share/vdr-channellogos -Pdevstatus -Pepgsearch -f /usr/bin/svdrpsend -Pmenuorg -Pstreamdev-server -Pskinpearlhd --epgimages=/var/cache/vdr/epgimages -Plive --port=8008 --ip=0.0.0.0 --log=INFO --epgimages=/var/cache/vdr/epgimages -Pdbus2vdr --shutdown-hooks=/usr/share/vdr/shutdown-hooks --shutdown-hooks-wrapper=/usr/share/vdr-plugin-dbus2vdr/shutdown-wrapper --network --upstart -Pskinenigmang --logodir=/usr/share/vdr-enigmang-icons --epgimages=/var/cache/vdr/epgimages -Pchannellists -Pquickepgsearch -Pskinelchi -Pfemon -Pvnsiserver3 -Pdynamite


    Auf einem zweiten VDR 1.7.41 unter Arch Linux mit VDR_LANG=de_DE.UTF-8 und --dirnames=,,1 verhält sich der VDR genau so.


    Beim Laden der setup.conf gibt es im Log keine Meldungen für den Wert LastReplayed:

    Code
    1. Mär 22 19:29:36 vdr4arch vdr[416]: [416] loading /var/lib/vdr/setup.conf
    2. Mär 22 19:29:36 vdr4arch vdr[416]: [416] ERROR: unknown config parameter: filebrowser.BaseDir = /media/ftp
    3. Mär 22 19:29:36 vdr4arch vdr[416]: [416] ERROR: unknown config parameter: skinnopacity.menuWidthNarrow = 30
    4. Mär 22 19:29:36 vdr4arch vdr[416]: [416] ERROR: unknown config parameter: tvm2vdr.MaxImageWidthOrHeight = 0
    5. Mär 22 19:29:36 vdr4arch vdr[416]: [416] ERROR: unknown config parameter: yaepghd.HideMenuEntry = 0


    Interessanterweise steht der Pfad für die Aufzeichnung im laufenden Betrieb (also nach dem Stoppen der Wiedergabe oder nach einem Restart des VDR über das Einstellungs-Menü) korrekt in der setup.conf, nach einem Neustart des Rechners ist er aber verkürzt:

    Code
    1. # Direkt nach dem schreiben der setup.conf und auch nach einem "internen" Neustart des VDR:
    2. LastReplayed = /srv/vdr/video/VDR/House_of_Lies/Was_würde_Clooney_tun#3F/2013-03-06.23.13.41-0.rec
    3. #Nach Reboot:
    4. LastReplayed = /srv/vdr/video/VDR/House_of_Lies/Was_würde_Clooney_tun


    Kann das jemand nachvollziehen? Ich könnte mir vorstellen, dass der Parser für die setup.conf da Kommentare rauswirft und den Pfad dabei abschneidet...

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

    The post was edited 1 time, last by seahawk1986 ().

  • Moin!


    Die Stelle sieht so aus:

    Code
    1. Setup.Load(AddDirectory(ConfigDirectory, "setup.conf"));


    Die Funktionsdeklaration so:

    Code
    1. bool Load(const char *FileName = NULL, bool AllowComments = false, bool MustExist = false)


    Eigentlich sollte er # also nicht als Kommentarzeichen werten.


    Lars.

  • Der Fehler liegt in config.c:


    Klaus

  • Ja, das war es, vielen Dank.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)