Index

Aus VDR Wiki
Wechseln zu: Navigation, Suche

Die Indexdatei index.vdr wird automatisch vom VDR für jede Aufzeichnung erstellt. Über diese Indexdatei spult der VDR vor- und rückwärts oder führt Schnitte aus. Soll die Indexdatei neu erstellt werden, hilft das Tool genindex.

Die Datei index.vdr ist eine Lookup-Tabelle der Speicherpositionen der Frames in den VDR-Stream Dateien (00x.vdr). Die Datei selber ist ein flaches Array vieler Indexeinträge mit folgender Struktur des jeweiligen Indexeintrages. Jeder Indexeintrag hat die Gesamtgröße von acht Bytes.

struct tIndex 
{ int offset;      //(signed 32bit/4byte)   Speicherposition des Frame, relativ zum Dateianfang der jeweiligen Datei
   uchar type;     //(8bit/1byte)           Type des Frames (I, P, B) nur an I-Frames kann geschnitten oder können beim Spulen ansprungen werden.
   uchar number;   //(8bit/1byte)           Nummer der Datei (00x.vdr) in der das Frame zu finden ist.
   short reserved; //(16bit/2byte) 
};

Bedingt durch die vorzeichenbehaftete Definition der Variablen offset ergibt sich eine Größenbegrenzung der VDR-Stream-Dateien (00x.vdr) von max. 2^31, also 2.147.483.648 Bytes (2GB).


Beispiel einer zusätzlichen Anwendung:

  • Dateigröße der index.vdr / 8 Byte = Anzahl der Frames der Aufnahme
  • Anzahl der Frames der Aufnahme / 25 = Länge der Aufnahme in Sekunden
  • Größe der index.vdr in Bytes / 12000 = Länge der Aufnahme in Minuten

Probleme

Diese Größenberechnung funktioniert allerdings nicht für Radioaufnahmen. Denn nur in Videoaufnahmen finden sich die I-Frames, für die die obigen Berechnungen gelten. Deshalb ist die angegebenen Spieldauer und damit auch die Spulgeschwindigkeiten bei vdr falsch.

Als Korrektur hilft aktuell nur das Patch Audioindexer damit auch Radioaufnahmen mit korrigierter index.vdr erstellt werden.