Simon, der verrückte Wissenschaftler präsentiert:



Methoden zur Verkürzung der Umschaltzeiten beim digitalen TV


Meine Masterarbeit. Note: 1,3.
DOWNLOAD:
Masterarbeit

Worum geht's?
Schneller Zappen! Beim digitalen Fernsehen muss man viel länger warten bis das Programm umgeschaltet wird als beim analogen Fernsehen.
Durchschnittswerte:
Analog: 0,25 Sekunden
Digital SD: 1,2 Sekunden
Digital HD: 1,9 Sekunden

Was hab ich geschafft?
Die Umschaltzeit kann bis auf 1 Einzelbild (0,04 Sekunden oder weniger) reduziert werden, wenn schneller als alle 0,8 Sekunden das Programm gewechselt wird, entstehen gelegentlich Artefakte, die Nebenprodukte von weiteren, komplizierteren Beschleunigungsvorgängen sind: Frame-Wiederherstellung und Intra-Block-Interpolation.
Im schlimmsten Fall wird der Umschaltvorgang (bei SD) 0,14 Sekunden betragen. Bei HD kann diese Zeit durch die höhere Bildwiederholrate durchaus geringer sein.

Wie habe ich das geschafft?
Trivial ist das Puffern von Programmen auf gleicher Frequenz, sowohl für den Programmierer als auch für den Fernseher. Durch mehrere Tuner kann diese Möglichkeit garantiert werden, funktioniert jedoch in 3/4 der Fälle auch mit nur einem Tuner (bei DVB-T. Bei DVB-C und -S steigt die Wahrscheinlichkeit auf bis zu 7/8). Warum das noch nicht gemacht wird, geht mir nicht in den Kopf. Unitymedia benutzt zwar 2 Tuner, um die Umschaltzeiten zu verkürzen, scheint aber nicht zu puffern, andernfalls würde sich die Rest-Umschaltzeit von knapp 1 Sekunde nicht erklären lassen. (ohne zweiten Tuner würde der Receiver jedoch knapp 2 Sekunden brauchen)
Frame-Wiederherstellung ermöglicht die Betrachtung von I-Frames, deren Header verpasst wurde, kann also in 1/4 aller Fälle den Worst Case (0,6375 Sekunden) zum Best Case machen (der aufgrund der 0,14 Sekunden Übertragungszeit des I-Frame zum neuen Worst Case wird). Informationen am oberen Bildrand, die verpasst wurden, gehen jedoch verloren. Der Rest des Bildes ist jedoch betrachtbar.
Intra-Block-Interpolation erlaubt es, Zwischenbilder sichtbar zu machen. Dies reduziert die Umschaltzeit ohne Puffern auf bis zu 0,03 Sekunden, jedoch sieht man auf diesen Bildern, wenn man Pech hat, nur sehr wenig, und selbst, wenn man Glück hat, nur Konturen. Aus diesen kann man jedoch auf Objekte schließen, die erkannt werden können. Das menschliche Gehirn leistet dabei ganz erstaunliche Arbeit.
(alle sagen, Digital ist besser als Analog. Ich sorge dafür, dass das auch wirklich so wird! Bisher finde ich Analog immer noch besser!)


Gammel-Engine


Programm zur Simulation von Verfall auf Texturen
Dies ist ein sehr leichtgewichtiges Programm zur Erzeugung von Schimmel, Flecken, Rost oder ähnlichem auf Texturen. Die Gammelengine verwendet einen angepassten Langton's-Ameise-Algorithmus (Langton's Ameise findet sich auf Wikipedia), was dazu führt, dass dieses Programm mit erstaunlich wenigen Ressourcen (auf dem C64 läuft es zwar nicht mehr in Echtzeit, aber lange muss man trotzdem nicht warten) erstaunlich realistische Ergebnisse produzieren kann. Gut, der Rost sieht net so toll aus, aber Schimmel und Flecken überzeugen. Es lief auf meinem 300 MHz Pentium 2 jedenfalls ganz passabel. Üblicherweise braucht man einen Vierkernprozessor im Gigahertzbereich, um vergleichbare Resultate zu erlangen.
Textur + Langton's Ameise mit spezifischem Verhaltensstring + Farb- und Deckungs-LUT = Vergammelte Textur.

Simulierter Fleck (undichtes Dach+eklige Materialien in der Decke)

Simulierter Rost (weniger realistisch. Man kann den Realismus erhöhen, indem man mehr Ameisen spawnt).