BuiltWithNOF
Frequenzlisten optimieren

Nur für Experten!

Frühere DVB.NET Versionen führten die Aktualisierung der Liste der Quellen (dort als Sendersuchlauf bezeichnet) auf Basis fester Frequenzlisten aus.

Für den Satellitenempfang der Astra 1 Gruppe etwa gab es eine bestimmte Liste von Frequenzen, die nacheinander abgesucht wurden. Das geht so lange gut, wie keine neuen Frequenzen freigeschaltet oder Frequenzen abgeschaltet werden. Letzteres führt nur zu einer längeren Laufzeit der Aktualisierung, neue Frequenzen wurden aber gar nicht erfasst und die darauf angebotenen Quellen konnten nicht genutzt werden.

Nun werden mit der Ausstrahlung der DVB Nutzdaten wie Bild und Ton auch eine ganze Reihe von Steuerinformationen an den Empfänger übermittelt. Ein Satz von Steuerinformationen sind die Netzwerkinformationen (NIT), die von unterschiedlicher Qualität und Quantität sind. Bei Astra 1 reicht es zum Beispiel, die Netzwerkinformationen einer Frequenz [präzise: einer Quellgruppe (früher Transponder genannt), aber das ist hier nur am Rande interessant, da es um das Prinzip geht] auszuwerten, da diese die gesamte Frequenzliste der Satellitengruppe enthält.

Die aktuelle Frequenzliste für Astra 1 enthält tatsächlich nur eine einzige Quellgruppe, das ist aber schon ein sehr positiv zu erwähnender Sonderfall. Bei anderen Empfangsarten wie etwa dem terrestrischen Empfang kann es sein, dass die Netzwerkinformationen gar keine weiteren Frequenzen enthalten.

Ziel der neuen Frequenzlisten ist es, möglichst wenige, zuverlässige Frequenzen zu definieren, aus deren Netzwerkinformationen alle Quellgruppen für die Aktualisierung ermittelt werden können. Daraus ergibt sich dann hoffentlich eine automatische Anpassung an Änderungen der Frequenzlisten.

Eine solche Optimierung kann nur per Frequenzliste erfolgen: mir persönlich steht etwa nur der Satellitenempfang von Astra 1 und Astra 2 / EuroBird zur Verfügung. Integriert in das Administrationswerkzeug ist eine Operation, die es jedem DVB.NET Anwender erlaubt, diese Optimierung für seine Konfiguration zu erstellen - und vielleicht an mich und damit andere Anwender weiterzugeben. Für meinen Fall angewendet kommen zwei Frequenzlisten mit einer respektive zwei Quellgruppen heraus.

Nehmen wir einmal an, es wird ein Geräteprofil verwendet, dass mindestens eine nicht optimierte Frequenzliste verwendet - zurzeit sind das fast alle, da diese blind aus der Vorgängerversion konvertiert wurden. Zur Erstellung einer optimierten Fassung würde man die entsprechende Operation in der DVB.NET Administration und Konfiguration auswählen.

Nach der Auswahl des Geräteprofils kann auf dem abschliessenden Arbeitsschritt die Optimierung gestartet werden.

DVB.NET wählt nun jede Frequenz der Liste an und untersucht die Netzwerkinformationen. Bedingt durch die DVB Spezifikationen kann es mehr als 10 Sekunden dauern, bis diese vollständig empfangen wurden. Damit dadurch die Laufzeit der Optimierung nicht extreme Werte annimmt, werden die ermittelten Frequenzlisten ausgewertet und die darin enthaltenen Frequenzen aus der Ursprungsliste entfernt. Für den Satellitenempfang ist das eine relativ effiziente Methode, für den Kabel- und insbesondere terrestrischen Empfang ist allerdings mit einer längeren Laufzeit der Optimierung zu rechnen - Erfahrungswerte liegen im Bereich von einer Stunde und mehr für den Kabelempfang.

Am Ende bietet das Administrationswerkzeug an, eine entsprechend optimierte Frequenzliste zu speichern. Dies sollte im Scan Locations Unterverzeichnis des DVB.NET Installationsverzeichnisses erfolgen - die vorhandene Datei BuiltIn.dss darf dabei nicht überschrieben werden.

Für den Satellitenempfang wird für jede konfigurierte Antenne eine separate optimierte Fassung zum Speichern angeboten. Nach dem Speichern sollte das Administrationswerkzeug geschlossen und neu gestartet werden. Ruft man nun die Konfiguration der Aktualisierung der Liste der Quellen auf, so sollte die eigene Frequenzliste zur Auswahl angeboten werden.

Die eigentliche Aktualisierung nutzt die Frequenzliste - ob optimiert oder nicht - wie folgt: die Liste wird von vorne nach hinten abgearbeitet. Für eine Frequenz von der ursprünglichen Liste werden die Netzwerkinformation ermittelt und alle darin enthaltenen Frequenzen an die Liste angehängt. Die möglicherweise sehr zeitaufwendige Suche nach den Netzwerkinformationen findet nicht statt, wenn die Frequenz bereits in der Netzwerkinformation einer vorher bearbeiteten Frequenz gemeldet wurde. Dieser Mechanismus soll sicher stellen, dass die Netzwerkinformationen so selten wie möglich angefordert werden.

Für den Kabelempfang wird sich vermutlich eher die Variante anbieten, die Frequenzlisten manuell zu pflegen - es handelt sich um XML Textdateien. Die automatisch übernommenen Listen der Vorgängerversion basierten auf einem Probierverfahren mit mehreren freien Parametern (Symbolrate, Spektrale Inversion, Modulation, Bandbreite), die zu einer riesigen Zahl an potentiellen Frequenzen führen kann. Ich weiss nicht, ob die beschriebene Optimierung während einer Aktualisierung dies wirklich ausgleichen kann. Sinnvoll ist eher eine Optimierung der Frequenzliste, möglicherweise ergänzt um eine manuell Nachbearbeitung.

Ganz übel dran sind im Moment die Anwender mit terrestrischem Empfang. Da die Netzwerkinformationen eigentlich immer nur eine Frequenz zu enthalten scheinen, sind die automatisch konvertierten ursprünglichen Listen mit extremer Laufzeit der Aktualisierung verbunden. Die Optimierung der Listen sollte diese zumindest auf die tatsächlich verwendeten Frequenzen reduzieren - das sind oft nur 5 bis 10 von 60 oder mehr. Es ist zu prüfen, ob die Auswertung der Netzwerkinformation für den terrestrischen Empfang deaktiviert werden kann. Die aktuelle Version von DVB.NET erlaubt dies nicht.