SVDRP-Befehl MOVR verändert Nummern der Aufzeichnungen

  • Die Beschreibung des SVDRP-Befehls MOVR könnte man zumindest so verstehen, dass er die Nummer einer Aufzeichnung nicht verändert:

    Code
    1. MOVR <number> <new name>
    2. Move the recording with the given number. Before a recording can be
    3. moved, an LSTR command must have been executed in order to retrieve
    4. the recording numbers. The numbers don't change during subsequent MOVR
    5. commands.

    Das scheint aber bei mir (VDR 2.2.0 unter Debian Stretch, u.a. mit Plugin distributedvideodir) nicht so zu laufen. Wenn ich in einem Skript zunächst die Nummern der Aufzeichnungen identifiziere, die ich umbennen will, zum Beispiel 1001, 1002, 1003, 1004, und dann Aufzeichnung 1001 mit MOVR umbenenne, geschieht zweierlei: Die umbenannte Aufzeichnung erhält eine neue, sehr hohe Nummer (meine Vermutung ist, sie wird zur "letzten" Aufzeichnung). Und die Aufzeichnungen, die vorher auf die 1001 folgten, rücken eins auf, d.h. die Aufzeichnung 1002 ist nun die Aufzeichnung, die vor MOVR die Nummer 1003 war. Ist das mein Fehler, Absicht, unvermeidlich, Seiteneffekt eines Plugins, ...?
     

  • Danke für die Klärung. Kann ich mich denn darauf verlassen, dass sich VDR 2.1.2 bis VDR 2.3.3 so verhalten, wie ich es zu beschreiben versucht habe: Die umbenannte Aufnahme erhält die höchste Nummer und die Nummern aller Aufnahmen, die eine höher Nummer als die umbenannte Aufnahme hatten, werden dekrementiert? Das im Skript zu integrieren und wäre vermutlich immer noch effizienter als ein erneuter Abruf aller Aufnahmen für jede, die umbenannt werden soll. Zumindest bei meiner Anzahl von Aufnahmen... :-)


    maf

  • Gilt denn andersherum die "Garantie" für konstante Nummern ab VDR 2.3.4 auch für Kanäle und Timer? Oder sind es tatsächlich IDs wie bei den Kanälen, die unabhängig von der Nummerierung in SVDRP sind?


    maf

  • Für Timer gilt dies bereits seit Version 2.3.1.


    Channel-IDs sind "absolute" Konstanten. D.h. sie gelten "immer", egal ob VDR neu startet oder nicht.


    Timer- und Recording-IDs sind "relative" Konstanten. D.h. sie gelten so lange, wie die entsprechende VDR-Instanz läuft. Wenn VDR neu startet, fängt die Generierung der IDs wieder bei 1 an. Während der gesamten Laufzeit eines VDR hat ein Timer bzw. eine Aufnahme immer

    eine konstante ID. Da man inzwischen SVDRP-Sessions beliebig lange offen halten kann, kann man während einer offenen SVDRP-Session also immer davon ausgehen, dass Timer- und Recording-IDs eindeutig und konstant sind.


    Klaus