nav-Datei - Fehlerhafte Aufnahmen erkennen

Computer, Software und der Topf
Benutzeravatar
Homer
ToppiHolic gefährdet
ToppiHolic gefährdet
Beiträge: 9728
Registriert: Sa 11. Mär 2006, 12:08
Receivertyp: TF5200PVRc (seit 25. März 2006) CRP-2401CI+ (seit 26. Mai 2011) Uno 4K
Receiverfirmware: Dec 06 2006,
Mar 9 2011
Wohnort: 669..
Kontaktdaten:

nav-Datei - Fehlerhafte Aufnahmen erkennen

#1

Beitrag von Homer » Di 25. Apr 2017, 14:03

Ist es möglich, durch die Analyse der originalen nav-Datei (und ggf. auch der inf-Datei) eine fehlerhafte Aufnahme zu erkennen? Ich vermute, dass es auf den jeweiligen Fall ankommt. Ich denke zunächst an die folgenden Fehler:
  1. Klötzchenbildung
  2. Senderausfall von ca. 2 Minuten mitten in der Aufnahme
  3. vorzeitiges Aufnahmeende wegen voller Festplatte
  4. vorzeitiges Aufnahmeende wegen Einfrierens
  5. vorzeitiges Aufnahmeende wegen eines Reboots
Welche Infos sind in der nav enthalten? Wo finde ich eine Beschreibung der Struktur, um selbst ein Programm schreiben zu können?

Viele Grüße
Homer
rettet-das-freetv.de Project Euler 2401 Urban Priol ist ein smarter Androide und kann keine TAPs.

TF5200PVRc (HA250JC)
TAPs: BootMenu - UsbAccelerator - [thread=49960]acaderc_5k[/thread] - RemoteSwitch - Automove V1.9 final [90] (18.04.2008) - TF5000Display - 3PG - IdleHDD

CRP-2401CI+ (ST3500312CS,MZ-75E500B)
TAPs: XStartTap_TMS - AutoReboot - RemoteSwitch_TMS - RescueRecs - SmartEPG_TMS - RebuildNAV - Automove V2.0 beta 13 (24.05.2011) - StartFTPd - TMSRemote - NiceDisplay

KabelBW Unitymedia (free to air)

Benutzeravatar
FireBird
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru
Beiträge: 28912
Registriert: Fr 9. Dez 2005, 09:59
Receivertyp: SRP-2401CI+ TFIR
vu+ Duo 4k
Wohnort: Wien

AW: nav-Datei - Fehlerhafte Aufnahmen erkennen

#2

Beitrag von FireBird » Di 25. Apr 2017, 17:55

3 bis 5 lassen sich relativ leicht überprüfen. Die Aufnahmen enthalten einen PCR (Program Clock Reference). Das ist ein Zähler, der vom Studiotakt getaktet wird und aus der Differenz des letzten und des ersten PCR lässt sich die genaue Laufzeit der Aufnahmen berechnen. Vielleicht vom Ende der Datei etwas Abstand lassen, für den Fall dass dort Datenmüll liegt.

Die .nav enthält Pointer auf Picture-Start und andere Strukturen in der .rec. Aus dieser direkt wird man keine Rückschlüsse ziehen können. Da ich aber gerade im Ausland bin, habe ich keinen direkten Zugriff auf die nav-Details.

Benutzeravatar
Homer
ToppiHolic gefährdet
ToppiHolic gefährdet
Beiträge: 9728
Registriert: Sa 11. Mär 2006, 12:08
Receivertyp: TF5200PVRc (seit 25. März 2006) CRP-2401CI+ (seit 26. Mai 2011) Uno 4K
Receiverfirmware: Dec 06 2006,
Mar 9 2011
Wohnort: 669..
Kontaktdaten:

AW: nav-Datei - Fehlerhafte Aufnahmen erkennen

#3

Beitrag von Homer » Di 25. Apr 2017, 18:59

[quote="FireBird"]3 bis 5 lassen sich relativ leicht überprüfen. Die Aufnahmen enthalten einen PCR (Program Clock Reference). Das ist ein Zähler, der vom Studiotakt getaktet wird und aus der Differenz des letzten und des ersten PCR lässt sich die genaue Laufzeit der Aufnahmen berechnen. Vielleicht vom Ende der Datei etwas Abstand lassen, für den Fall dass dort Datenmüll liegt.[/quote]Das bedeutet ein Lesen der rec nur am Anfang und am Ende. Das wäre machbar.
[quote="FireBird"]Die .nav enthält Pointer auf Picture-Start und andere Strukturen in der .rec. Aus dieser direkt wird man keine Rückschlüsse ziehen können. Da ich aber gerade im Ausland bin, habe ich keinen direkten Zugriff auf die nav-Details.[/quote]Die Klötzchenbildung geht immer einher mit Sprüngen durch eine zu kleine nav. Die fehlenden Pointer müsste man erkennen können, da die Ziele der vorhandenen Pointer in diesem Fall springen, d. h. Lücken aufweisen.

Im Fall 2, der vergangene Nacht auftrat, ist eine solche Lücke nicht vorhanden. Wenn die Pointer keinen (senderseitigen) Zähler haben (laufende Nr. oder Zeit), könnte man auch erst durch Zugriff auf die rec diesen Fehler durch einen Laufzeitunterschied (Ende minus Anfang > Aufnahmedauer in inf) erkennen. Und um dann die Stelle zu finden (Vorlauf, Werbung, Nachlauf oder Film) müsste man die rec sequentiell lesen.

Dann warte ich auf die nav-Details. Zuvor will ich noch das TopfAutoRename für die falsch benannten nav-Dateien fertig schreiben.

Viele Grüße
Homer
rettet-das-freetv.de Project Euler 2401 Urban Priol ist ein smarter Androide und kann keine TAPs.

TF5200PVRc (HA250JC)
TAPs: BootMenu - UsbAccelerator - [thread=49960]acaderc_5k[/thread] - RemoteSwitch - Automove V1.9 final [90] (18.04.2008) - TF5000Display - 3PG - IdleHDD

CRP-2401CI+ (ST3500312CS,MZ-75E500B)
TAPs: XStartTap_TMS - AutoReboot - RemoteSwitch_TMS - RescueRecs - SmartEPG_TMS - RebuildNAV - Automove V2.0 beta 13 (24.05.2011) - StartFTPd - TMSRemote - NiceDisplay

KabelBW Unitymedia (free to air)

chris86
Moderator
Moderator
Beiträge: 1171
Registriert: Sa 4. Jun 2011, 22:35
Receivertyp: 2x SRP-2410, CRP-2401CI+
Receiverfirmware: SRP: 2011Sep29 / 2013Jan10 (RC) / 2013Dez19
CRP: 2013Feb05
Kontaktdaten:

AW: nav-Datei - Fehlerhafte Aufnahmen erkennen

#4

Beitrag von chris86 » Di 25. Apr 2017, 23:55

Die nav-Struktur kann ich dir schicken.
Was du da vorhast, wird aber so wohl nicht funktionieren. Der PCR läuft auch bei Unterbrechungen weiter, so dass Anfang und Ende in jedem Fall korrekt sind. Außer es fehlt das Ende der Aufnahme - das lässt sich durch Vergleich der PCR-Differenz von Anfang und Ende der rec gut ermitteln.
Störungen zwischendurch können durch große Zeitsprünge innerhalb der nav ermittelt werden. Aber wenn du es richtig machen willst, musst du eigentlich die gesamte rec scannen, und den fortlaufenden Paket-Counter überprüfen.

Benutzeravatar
Homer
ToppiHolic gefährdet
ToppiHolic gefährdet
Beiträge: 9728
Registriert: Sa 11. Mär 2006, 12:08
Receivertyp: TF5200PVRc (seit 25. März 2006) CRP-2401CI+ (seit 26. Mai 2011) Uno 4K
Receiverfirmware: Dec 06 2006,
Mar 9 2011
Wohnort: 669..
Kontaktdaten:

AW: nav-Datei - Fehlerhafte Aufnahmen erkennen

#5

Beitrag von Homer » Mi 26. Apr 2017, 00:33

[quote="chris86"]Die nav-Struktur kann ich dir schicken.[/quote]Ja bitte.
[quote="chris86"]Was du da vorhast, wird aber so wohl nicht funktionieren. Der PCR läuft auch bei Unterbrechungen weiter, so dass Anfang und Ende in jedem Fall korrekt sind.[/quote]Im Fall 2 merkt der Topf das und schreibt eine kürzere Laufzeit in die inf (Istdauer). Die Solldauer ist gleich Ende minus Anfang und in diesem Fall größer als die Istdauer.
[quote="chris86"]Aber wenn du es richtig machen willst, musst du eigentlich die gesamte rec scannen, und den fortlaufenden Paket-Counter überprüfen.[/quote]Das möchte ich nur dann machen, wenn ich schon sicher weiß, dass der Fehler 2 aufgetreten ist, nur noch nicht wo (Film oder nicht Film).

Viele Grüße
Homer
rettet-das-freetv.de Project Euler 2401 Urban Priol ist ein smarter Androide und kann keine TAPs.

TF5200PVRc (HA250JC)
TAPs: BootMenu - UsbAccelerator - [thread=49960]acaderc_5k[/thread] - RemoteSwitch - Automove V1.9 final [90] (18.04.2008) - TF5000Display - 3PG - IdleHDD

CRP-2401CI+ (ST3500312CS,MZ-75E500B)
TAPs: XStartTap_TMS - AutoReboot - RemoteSwitch_TMS - RescueRecs - SmartEPG_TMS - RebuildNAV - Automove V2.0 beta 13 (24.05.2011) - StartFTPd - TMSRemote - NiceDisplay

KabelBW Unitymedia (free to air)

Benutzeravatar
jkIT
TFtool-Guru
TFtool-Guru
Beiträge: 3194
Registriert: Sa 10. Dez 2005, 18:26
Receivertyp: TF4000 & TF5000MP & SRP-2410

AW: nav-Datei - Fehlerhafte Aufnahmen erkennen

#6

Beitrag von jkIT » Mi 26. Apr 2017, 17:08

[quote="Homer"]Das bedeutet ein Lesen der rec nur am Anfang und am Ende. Das wäre machbar.[/quote]
Was man auch probieren könnte, wäre eine Prüfung über die Größe der nav-Datei.
1 Frame, also 40ms, verbraucht bei SD-NAVs 32 Byte und bei HD-NAVs 64 Byte.
Eine signifikante Abweichung zur erwarteten Aufnahmelänge wäre evtl. ein Indiz.
Gruß jkIT

CRP-2401; SRP-2410 (aD); TF5000MP (aD); TF4000PVR (aD); TFtool, aTMSremote (Autor)

chris86
Moderator
Moderator
Beiträge: 1171
Registriert: Sa 4. Jun 2011, 22:35
Receivertyp: 2x SRP-2410, CRP-2401CI+
Receiverfirmware: SRP: 2011Sep29 / 2013Jan10 (RC) / 2013Dez19
CRP: 2013Feb05
Kontaktdaten:

AW: nav-Datei - Fehlerhafte Aufnahmen erkennen

#7

Beitrag von chris86 » Mi 26. Apr 2017, 18:26

Die nav-Strukturen (für SD und HD sind sie unterschiedlich):

Code: Alles auswählen

typedef struct
{
  dword                 SHOffset:24; // = (FrameType shl 24) or SHOffset
  dword                 FrameType:8;
  byte                  MPEGType;
  byte                  FrameIndex;
  word                  iFrameSeqOffset;
//  byte                  Zero1;
 [b] dword                 PHOffsetHigh;
  dword                 PHOffset;[/b]

  dword                 PTS2;
  dword                 NextPH;
[b]  dword                 Timems;[/b]
  dword                 Zero5;
} tnavSD;

typedef struct
{
  dword                 SEIPPS:24;
  dword                 FrameType:8;
  byte                  MPEGType;
  byte                  FrameIndex;
  word                  PPSLen;
//  byte                  Zero1;
[b]  dword                 SEIOffsetHigh;
  dword                 SEIOffsetLow;[/b]
  dword                 SEIPTS;
  dword                 NextAUD;
[b]  dword                 Timems;[/b]
  dword                 Zero2;

  dword                 SEISPS;
  dword                 SPSLen;
  dword                 IFrame;
  dword                 Zero4;

  dword                 Zero5;
  dword                 Zero6;
  dword                 Zero7;
  dword                 Zero8;
} tnavHD; 
Die fett gedruckten Werte könnten für dich nützlich sein... dort einfach auf ungewöhnlich große Sprünge testen.
Zuletzt geändert von chris86 am Mi 26. Apr 2017, 18:28, insgesamt 2-mal geändert.

Antworten

Zurück zu „Computer und Topfield“