Premiere entschlüsseln, aber richtig
Warum nicht gleich so
Premiere läßt sich dank der Pal-Plus Statuszeile noch viel schneller entschlüsseln. Die Theorie ist denkbar einfach und stammt diesmal aus eigenem Hause. Die Pal-Plus Statuszeile besteht aus einigen Bits, in denen Informationen über das Bildformat des Filmes u.ä. übertragen werden. Premiere verschlüsselt diese Zeile mit. Entgegen anderslautender Behauptungen lässt sich diese Zeile unheimlich schnell finden. Sie befindet sich innerhalb der ersten 32 Zeilen eines codierten ungeraden Fields, die ja jeweils am Ende des vorherigen Fields ausgestrahlt werden. Man sieht sie, wenn man sich mal das verschlüsselte Fernsehbild anschaut am unteren Bildschirmrand auf und ab flackern. Drei verschiedene Verfahren diese Zeile zu finden werden hier beschrieben:
1. FFT über jede der 32 Zeilen. Die mit dem größten Hochfrequenzanteil sollte es sein.
2. Aufsummieren der Differenzen zu einem Nullwert: Da die Punkte entweder sehr hell oder sehr dunkel, aber nichts dazwischen sind, hilft eine Funktion, die für helle Punkte und für dunkle Punkte sehr grosse, für alles dazwischen aber kleine Ergebnisse bringt. Wenn die Summe über n Punkt einen Schwellwert übersteigt ist die Zeile die gesuchte.
1
Sum ( abs(Yn-0.5)) Y= Helligkeitswert
nAchtung! Man muss vorher ganz weiße oder ganz schwarze Zeilen (bei Breitwandfilmen) ausschließen.
3. Man kennt den binären Innhalt der Zeile und sucht nach ihm (sicher die beste Methode). Dazu muss man aber wissen wie sie aufgebaut ist. Das findet man zum Glück im Internet unter http://iiit.swan.ac.uk/~iisteve/palplus.html . oder man dekodiert das Bild einmal auf herkömmliche Art. Da isses dann ja die erste Zeile, die man als Referenz nimmt.
Hat man diese Zeile gefunden kennt man somit den ersten Wert der PRNG (pseudo random number generator) Sequenz und muß nur noch in 1024 Permutationen und nicht mehr in 32768 suchen. Das geht natürlich 32 mal schneller und führt auch logischerweise zu viel besseren Ergebnissen, weil nicht so viele ähnliche Permutationen zu bewerten sind.
Als kleines Abfallprodukt kann man den Inhalt der Zeile auswerten und weiss dann, ob es sich um einen Breitwandfilm handelt. Da kann man dann die schwarzen Balken weglassen.
Schade ist nur, daß nicht beide Fields die Statuszeile haben, sonst könnte man sicher komplette Frames in voller Auflösung decodieren.
Eine Testimplementierung folgt in Kürze. Erste Ergebnisse sind aber seeeehr vielversprechend.
Viel Spaß beim nachbauen wünscht Steini, CCC-Berlin