So,... wollte mal schreiben was ich durch hexdump und Vergleich der obigen zusaetzlichen Files des TF7700HDPVR interessantes rausfinden konnte:
1. ADD-File:
Ist 2636 Bytes lang und beginnt mit 8Byte Binaerdaten (leicht veraenderlich, ev. die Zeit?), danach folgen Nullen bis byte 0x2ea und dann der Filename (incl. Pfad). Die anschliessenden Daten koennten dann ev Service-Informationen enthalten bis an Byte 1040 (0x410) die Bookmarks folgen.
Diese sind als unsigned 32bit Integer kodiert und enthalten die Zeit in Sekunden (die entspr. Fileposition erhaelt man dann ueber das Indexfile, s.u.). Im Vergleich zu den alten Headern ist die byte-Reihenfolge invertiert (ev. wg. der internen ext2-Disk?) und der Platz reicht auch nur fuer 48 Bookmarks! An Stelle 0x4d0 steht dann ein alter Bekannter, naemlich die Topfield-Headerkennung 'TFrc' (0x54467263) gefolgt von Sendername und EPG-Daten (current & next Event?).
Uebrigens liest DVBcut ab SVN-Revison 105 die Bookmarks aus .add-Files aus, sofern dieses am gleichen Ort wie das REC-File steht!
2. IDX-File:
Tja,... zur besseren/schnelleren/genaueren Navigation gehoert zu jeder Aufnahme (die aus vielen 1.5GB chunks bestehen kann: *.rec, *.001, *.002,...) EIN entpr. Indexfile, was Framenummern bzw. PresentationTimeStamps (PTS) mit Filepositionen korreliert. Das ist recht praktisch (viele Bearbeitungs-Tools erstellen sowas), allerdings ist die Umsetzung von Topfield recht...aehmmmm... "seltsam" (ev. hat das aber auch mit den Interna des verwendeten MPEG-Chips zu tun?).
Normalerweise enthalten solche Files naemlich ensprechende Daten zu jedem einzelnen Frame (also bei PAL alle 40ms mit 1/90ms Auflosung) oder zu jedem I-Frame (also fuer jede GOP bzw. sequence, ca. 10-30 frames bei MPEG2). Beim Topfield IDX-File passiert das jedoch nur alle 100ms, was weder bei PAL noch bei NTSC ein Vielfaches des Bilderabstandes ist (PAL: 3600/90, NTSC: 3003/90... ok bei NTSC passt es fast)!
Man weiss also erstmal nicht auf welches Bild sie sich beziehen... etwa das naechstliegende? Oder grundsaetzlich nur auf jedes I- oder P- Frame (was in etwa auch hinkommen koennte)?
Zusaetzlich wird das noch dadurch erschwert, dass der Abstand sporadisch auch mal nur 99ms betragen kann?!?

Bug :ups: oder Feature

?
So,... fuer jeden Eintrag in das Indexfile werden 128bit mit 4 unsigned integers geschrieben:
32bit: PTS in Millisekunden (nur ein Eintrag alle 100 bzw. manchmal auch nur 99ms?!?)
16bit: seltsame laufende Nummer (wird alle 1-3s (SD) bzw. 0.5-2s (HD) erhoeht und pro File zurueckgesetzt )???
16bit: laufende Nummer des REC-Files (bei 0 beginnend!)
64bit: Fileposition auf 188byte gerundet (also Nummer des TS-Paketes!)
Meine Versuche so ein Files nachtraeglich zu reproduzieren scheiterten bisher. Hab aber auch kein 7700er zum probieren, ev. muss man es ja auch nicht so exakt treffen.... ahemm...
3. IFO-File:
Damit hab ich mich noch gar nicht befasst... scheinen immer 4340 Bytes lang zu sein. Sind diese vom Format identisch zu den von DVDs bekannten IFO-Files? Was enthalten diese (gibt kaum infos im Web dazu)? Navigationsinfos bei welchen Sektoren einer DVD man was findet (Menues / Trailer / Haupfilm / MakingOf) dachte ich bisher, oder? Was hat sowas bei TS-Files verloren?
So, das war es... vielleicht schafft es ja damit jemand ein altes 4000/5000er File 7700-kompatibel zu machen. Die Umsteiger von den alten Receivern wuerden sich bestimmt freuen. Ich fuer meinen Teil wollte eh nur die Bookmarks mit DVBcut auslesen koennen und das kann ich ja nun...
Ach ja,... Topfield verwendet intern nun wohl eine ext2-formatierte Festplatte, d.h. Linux-Anwender duerften sich freuen nach Ausbau der Platte diese direkt auslesen/beschreiben zu koennen. Aber wer will das schon bei LAN/USB-Anbindung des Topfes... ahemm...
