AndreasSchrankel EntwurfeinerBibliothekzurAuswertungderServiceInformationeninDVBSystemen Diplomarbeit TechnischenUniversit¨atIlmenauFachgebietProzessinformatik

DVB-S Serviceinfo Bibliothek

Dokumentinformationen

Autor

Andreas Schrankel

instructor Prof. Dr.-Ing. habil. Ilka Philippow
Schule

Technische Universität Ilmenau

Fachrichtung Prozessinformatik
Dokumenttyp Diplomarbeit
Ort Ilmenau
Sprache German
Format | PDF
Größe 437.21 KB

Zusammenfassung

I.Analyse bestehender DVB Implementierungen

Die meisten Implementierungen des DVB-Standards (Digitales Fernsehen) nutzen die Service Information Tables (SIT) und andere MPEG-2 Tabellen wie die Network Information Table (NIT), Event Information Table (EIT), Time Date Table (TDT) und Program Association Table (PAT) nur teilweise. Einfache Anwendungen beschränken sich auf die Suche nach Sendern oder die Generierung des Electronic Program Guide (EPG). Komplexere Anwendungen, oft für Set-Top-Boxen oder PC-Applikationen entwickelt, nutzen den Standard umfassender. Ein Großteil des Codes ist proprietär; Ausnahmen bilden Implementierungen für Linux.

1. Umfang der Nutzung von Service Information Tables SIT

Der vorliegende Abschnitt analysiert die existierenden Implementierungen des DVB-Standards im Hinblick auf ihre Nutzung der Service Information Tables (SIT). Es wird festgestellt, dass die meisten Implementierungen die SIT nicht vollständig nutzen, sondern nur Teile davon, um spezifische Aufgaben zu erfüllen. Als Beispiele werden einfache Anwendungen wie die Sendersuche oder die Generierung eines Electronic Program Guide (EPG) genannt. Komplexere Anwendungen, die einen größeren Teil der SIT-Funktionalitäten verwenden, sind meist für Set-Top-Boxen oder als Teil von TV- oder Datenanwendungen für PCs konzipiert. Ein entscheidender Aspekt ist die geschlossene Natur des Quellcodes der meisten Implementierungen. Die einzige Ausnahme bilden Implementierungen für Linux, die offen zugänglich sind. Diese Beobachtung unterstreicht die Notwendigkeit einer umfassenderen und flexibleren Bibliothek zur Verarbeitung der SIT-Daten, wie sie in dieser Arbeit angestrebt wird. Die beschränkte Nutzung der SIT in vielen bestehenden Implementierungen verdeutlicht das Potenzial für Verbesserungen in Bezug auf Funktionalität und Flexibilität. Eine vollständigere Ausnutzung der SIT-Informationen würde zu leistungsfähigeren und vielseitigeren Anwendungen führen. Der Mangel an Open-Source-Lösungen für viele Implementierungen hemmt zudem die Weiterentwicklung und den Austausch von Wissen in diesem Bereich.

2. Arten von DVB Anwendungen und deren Komplexität

Die Analyse differenziert zwischen einfachen und komplexen Anwendungen des DVB-Standards. Einfache Anwendungen beschränken sich auf grundlegende Funktionen wie die Sendersuche oder die Erstellung eines EPGs (Electronic Program Guide). Diese nutzen lediglich einen kleinen Teil der in den Service Information Tables (SIT) und anderen MPEG-2 Tabellen enthaltenen Informationen. Im Gegensatz dazu stehen komplexe Anwendungen, die einen weitaus größeren Umfang an Daten aus den SIT und anderen relevanten Tabellen verarbeiten. Diese komplexen Anwendungen finden sich vor allem in Set-Top-Boxen und PC-basierten TV- und Datenanwendungen. Die Komplexität der Anwendungen korreliert also direkt mit der Ausnutzung der vollständigen Funktionalität der DVB-Spezifikation. Der Unterschied in der Komplexität und der Ausnutzung der Datenstrukturen verdeutlicht den Bedarf an einer robusten und anpassungsfähigen Bibliothek. Eine solche Bibliothek sollte sowohl einfachen als auch komplexen Anwendungen die effiziente Verarbeitung der Daten ermöglichen, ohne dass diese auf den kompletten Funktionsumfang des Standards angewiesen sind. Die Unterscheidung zwischen einfachen und komplexen Anwendungen zeigt zudem, dass die Bedürfnisse von Entwicklern unterschiedlich sind und eine flexible und skalierbare Lösung notwendig ist.

3. Problematik des geschlossenen Quellcodes und die Ausnahme Linux

Ein wesentliches Problem, welches im Kontext der Analyse bestehender DVB-Implementierungen hervorgehoben wird, ist die weit verbreitete Verwendung von geschlossenem Quellcode. Die meisten Implementierungen des DVB-Standards sind nicht öffentlich zugänglich, was die Weiterentwicklung, den Austausch von Wissen und die Anpassung an neue Anforderungen erschwert. Diese proprietäre Natur des Codes behindert die Transparenz und die Möglichkeit zur gemeinschaftlichen Verbesserung und Optimierung der DVB-Technologie. Nur wenige Implementierungen basieren auf offenem Quellcode, insbesondere die für Linux. Dieser Aspekt unterstreicht die Bedeutung von Open-Source-Lösungen für die Förderung von Innovation und den Aufbau einer lebendigen Community von Entwicklern. Die geschlossene Natur der meisten Implementierungen schränkt die Möglichkeiten ein, die bestehenden Lösungen zu untersuchen, zu verbessern und an spezifische Bedürfnisse anzupassen. Eine offene und transparente Entwicklungsumgebung würde hingegen den Fortschritt und die Verbreitung von innovativen Anwendungen deutlich fördern. Der Mangel an öffentlich zugänglichen Implementierungen behindert die Entwicklung und Verbreitung von innovativen DVB-Lösungen. Die Ausnahme von Linux-Implementierungen verdeutlicht die Vorteile von Open-Source-Ansätzen.

II.TechnoTrend AG Firmenprofil

Die TechnoTrend AG, gegründet 1990 mit Sitz in Erfurt-Bindersleben und ca. 50 Mitarbeitern, ist ein mittelständisches Unternehmen, das sich auf die Hardwareentwicklung für den Empfang von digitalem Fernsehen (DVB) spezialisiert hat. Das Unternehmen entwickelt Geräte für Breitbandkabel, Satellit und terrestrische Antennen, sowohl Set-Top-Boxen als auch PC-Karten. Neben der Hardwareentwicklung und der zugehörigen Softwareentwicklung (inkl. PC-Applikationen und Treiber für MS Windows) umfasst die Firma ein Testlabor, ein Hardwarelabor und die kaufmännische Abteilung.

1. Unternehmensbeschreibung und Gründungsdaten

Die TechnoTrend AG ist ein mittelständisches Unternehmen, das im Jahr 1990 gegründet wurde und seinen Sitz in Erfurt-Bindersleben hat. Derzeit beschäftigt das Unternehmen etwa 50 Mitarbeiter. Die Kernkompetenz der TechnoTrend AG liegt in der Entwicklung von Hardwarelösungen für den Empfang von digitalem Fernsehen (DVB). Dies beinhaltet die Entwicklung von Geräten für alle Arten der digitalen Sendetechnik, einschließlich Breitbandkabel, Satellit und terrestrische Antennen. Das Produktportfolio umfasst sowohl Set-Top-Boxen, die als Zusatzgeräte an Fernseher angeschlossen werden, als auch PC-Karten zum Empfang digitaler Fernsehsignale. Diese umfassende Abdeckung verschiedener Empfangswege und Gerätetypen unterstreicht die breite Expertise des Unternehmens im Bereich der DVB-Technologie. Die Fokussierung auf Hardwarelösungen für den digitalen Fernsehbereich positioniert die TechnoTrend AG als einen wichtigen Akteur in dieser Branche. Die Unternehmensgröße mit ca. 50 Mitarbeitern deutet auf ein mittelständisches Unternehmen mit einer etablierten Marktpräsenz hin.

2. Abteilungsstruktur und Geschäftsfelder

Die TechnoTrend AG ist in verschiedene Abteilungen gegliedert, wobei die Hardwareentwicklung mit der zugehörigen hardwarenahen Softwareentwicklung den größten und wichtigsten Bereich darstellt. Ein weiterer wichtiger Bereich ist die Softwareentwicklung für PCs, einschließlich der Entwicklung von Applikationen und Treibern für MS Windows. Zusätzlich verfügt das Unternehmen über ein Testlabor zur Verifizierung der Produkte und ein Hardwarelabor, in dem Prototypen erstellt und repariert werden. Schließlich gibt es auch eine kaufmännische Abteilung, die für die betriebswirtschaftlichen Aspekte des Unternehmens verantwortlich ist. Diese strukturierte Aufteilung der Abteilungen ermöglicht eine effiziente Arbeitsorganisation und Spezialisierung auf verschiedene Aufgabenbereiche. Die Schwerpunkte auf Hardware und Softwareentwicklung unterstreichen die technologische Ausrichtung des Unternehmens. Die zusätzlichen Abteilungen (Testlabor, Hardwarelabor, kaufmännische Abteilung) zeigen eine umfassende Organisation mit Fokus auf Qualitätssicherung, Produktentwicklung und wirtschaftliche Steuerung.

3. Fokus auf DVB Technologie und Hardware

Das Hauptgeschäftsfeld der TechnoTrend AG ist die Entwicklung von Hardwarelösungen für den Empfang von digitalem Fernsehen (DVB). Das Unternehmen entwickelt Geräte für alle gängigen Arten der digitalen Sendetechnik: Breitbandkabel, Satellit und terrestrische Antennen. Die Produktpalette umfasst sowohl Set-Top-Boxen, die an Fernseher angeschlossen werden, als auch PC-Karten zum Empfang von DVB-Signalen. Diese breite Abdeckung verschiedener Empfangstechnologien und -geräte unterstreicht die Expertise und das Engagement des Unternehmens im Bereich des digitalen Fernsehens. Die Konzentration auf Hardwarelösungen positioniert TechnoTrend AG als einen wichtigen Anbieter von Empfangstechnik für den DVB-Standard. Die Entwicklung von Geräten für verschiedene Übertragungspfade (Kabel, Satellit, terrestrisch) zeugt von der Anpassungsfähigkeit und der Fähigkeit des Unternehmens, sich an die verschiedenen Marktbedürfnisse anzupassen. Die Entwicklung sowohl von Set-Top-Boxen als auch von PC-Karten deutet auf die Berücksichtigung verschiedener Kundensegmente hin.

III.Zielsetzung Entwicklung einer vollständigen SIT Bibliothek

Diese Arbeit zielt auf den Entwurf einer Bibliothek ab, die die Service Information Tables (SIT) und andere DVB Tabellen vollständig auswertet. Die Bibliothek soll flexibel sein und zukünftigen Erweiterungen und Änderungen des Standards anpassbar sein. Ein besonderes Augenmerk liegt auf der effizienten Verarbeitung von DVB Tabellen und der Bereitstellung einer benutzerfreundlichen Schnittstelle für den Zugriff auf die Daten des Electronic Program Guide (EPG), Near-Video-on-Demand (NVOD) und Mosaic Dienste.

1. Hauptziel Vollständige Verarbeitung der Service Information Tables SIT

Das zentrale Ziel dieser Arbeit ist die Entwicklung einer Bibliothek zur Verarbeitung der Service Information Tables (SIT) im Kontext des DVB-Standards. Im Gegensatz zu bestehenden Implementierungen, die die SIT oft nur unvollständig nutzen, soll diese Bibliothek eine vollständige und effiziente Auswertung der SIT-Daten ermöglichen. Die umfassende Verarbeitung der SIT-Informationen soll die Grundlage für leistungsfähigere und flexiblere Anwendungen im Bereich des digitalen Fernsehens bilden. Die Fokussierung auf die SIT resultiert aus der Erkenntnis, dass eine vollständige Auswertung dieser Tabellen essentiell für den Zugriff auf umfassende Programm- und Serviceinformationen ist, wie sie beispielsweise für einen erweiterten Electronic Program Guide (EPG) oder komplexe Anwendungen im Bereich Pay-TV benötigt werden. Die Entwicklung einer solchen Bibliothek dient der Verbesserung der bestehenden DVB-Implementierungen und ermöglicht neue Anwendungen, die bisher aufgrund der unvollständigen Nutzung der SIT-Daten nicht realisierbar waren. Die Bibliothek soll somit als Grundlage für zukünftige Entwicklungen im Bereich der DVB-Technologie dienen.

2. Anforderung an Flexibilität und Zukunftsfähigkeit

Ein wichtiger Aspekt der Zielsetzung ist die Flexibilität und Zukunftsfähigkeit der zu entwickelnden Bibliothek. Sie soll so konzipiert sein, dass sie sich an zukünftige Erweiterungen und Änderungen der DVB-Spezifikation anpassen lässt. Diese Anpassungsfähigkeit ist besonders wichtig, da sich der DVB-Standard ständig weiterentwickelt und neue Tabellen und Descriptortypen hinzugefügt werden können. Die Bibliothek muss daher so modular aufgebaut sein, dass neue Funktionalitäten einfach integriert werden können, ohne die bestehende Struktur zu beeinträchtigen. Die Flexibilität der Bibliothek manifestiert sich in ihrer Fähigkeit, sich an verschiedene Hard- und Softwareumgebungen anzupassen. Die Zukunftsfähigkeit wird durch die Möglichkeit gewährleistet, neue Tabellen und Descriptortypen ohne größeren Aufwand einzubinden. Ein wichtiger Aspekt ist dabei die modulare Architektur der Bibliothek, die eine einfache Erweiterung und Anpassung ermöglicht. Die Einbindung neuer Funktionalitäten sollte so einfach wie möglich sein, um die Entwicklung neuer Anwendungen auf Basis der Bibliothek zu beschleunigen.

3. Fokus auf vollständige Nutzung der SIT Daten

Die angestrebte Bibliothek konzentriert sich explizit auf die vollständige und effiziente Verarbeitung der Service Information Tables (SIT). Im Gegensatz zu bisherigen Implementierungen, die oft nur Teilbereiche der SIT-Daten nutzen, soll diese Bibliothek alle relevanten Informationen auswerten und bereitstellen. Dies ermöglicht ein umfassenderes Verständnis der im DVB-Stream enthaltenen Daten und erweitert die Möglichkeiten für Anwendungen, die auf diesen Informationen basieren. Die vollständige Nutzung der SIT-Daten ist essentiell für die Bereitstellung erweiterter Funktionen, wie z.B. einem detaillierten EPG, der Informationen über mehrere Tage hinweg anzeigt oder Funktionen für Pay-TV-Anwendungen. Eine vollständigere Auswertung der SIT-Daten ermöglicht es, die in den verschiedenen MPEG-2 Tabellen enthaltenen Informationen optimal zu nutzen und so die Grundlage für verbesserte und erweiterte Anwendungen zu schaffen. Die Fokussierung auf die vollständige Nutzung der SIT-Daten ist ein entscheidender Faktor für die Leistungsfähigkeit und den Funktionsumfang der geplanten Bibliothek. Sie stellt sicher, dass alle verfügbaren Informationen effizient genutzt werden und ein vollständiges Bild des DVB-Streams bereitgestellt wird.

IV.Herausforderungen bei der DVB Datenverarbeitung

Probleme bei der Verarbeitung von DVB-Tabellen entstehen durch fehlerhafte Implementierungen (z.B. falsche Längenangaben) und unvollständige Implementierungen (fehlende Informationen zu Zusatzdiensten wie Teletext oder EPG). Hersteller-spezifische Erweiterungen und die dynamische Natur von DVB stellen zusätzliche Herausforderungen dar. Die Verarbeitung von unvollständigen Transportströmen erfordert besondere Aufmerksamkeit. Das Verständnis und die korrekte Handhabung der Section-Struktur und der darin enthaltenen Descriptors sind entscheidend.

1. Fehlerhafte Implementierungen und deren Folgen

Ein wesentlicher Punkt im Abschnitt über die Herausforderungen bei der DVB-Datenverarbeitung befasst sich mit fehlerhaften Implementierungen. Falsche Längenangaben, insbesondere bei nicht genutzten Descriptorloops, führen zu Problemen bei der Verarbeitung der eingehenden Daten. Eine mögliche Folge ist ein Absturz der Software, der sich zwar durch geeignete Fehlerbehandlungsmechanismen abfangen lässt. Viel gravierender ist jedoch der potentielle Datenverlust. Falsch zugeordnete oder verlorengegangene Informationen über Netzwerke, Services oder Events sind die Folge. Für den Nutzer äußert sich dies in Form von fehlenden oder falsch dargestellten Programmen im Electronic Program Guide (EPG). Die fehlerhafte Datenverarbeitung kann zu erheblichen Störungen im Betrieb von Anwendungen führen und erfordert robustere Fehlerbehandlungsmechanismen. Die Identifizierung und Korrektur von Fehlern in der Datenverarbeitung ist daher eine wesentliche Herausforderung bei der Entwicklung von DVB-Anwendungen. Die Auswirkungen fehlerhafter Implementierungen betreffen nicht nur die Funktionalität, sondern auch die Zuverlässigkeit und die Benutzerfreundlichkeit der Anwendungen.

2. Herausforderungen durch herstellerspezifische Erweiterungen

Ein weiterer Aspekt, der die Verarbeitung von DVB-Daten erschwert, sind herstellerspezifische Erweiterungen. Oft werden 'reserved future use' oder 'private' Felder verwendet, um Informationen in selbstdefinierten Formaten zu übertragen. Diese Felder stören zwar die Verarbeitung der allgemein bekannten Felder nicht, führen aber dazu, dass Informationen übersehen werden. Das Problem liegt in der Schwierigkeit, vom Sender genaue Angaben über die Lage und das Format dieser Daten zu erhalten. Hersteller-spezifische Spezifikationen ändern sich zudem häufig und erfordern einen hohen Aufwand, um immer auf dem neuesten Stand zu bleiben. Die Inkonsistenz und die Dynamik dieser herstellerspezifischen Erweiterungen stellen eine Herausforderung bei der Entwicklung generischer und zukunftsfähiger DVB-Lösungen dar. Eine generische Bibliothek muss daher in der Lage sein, diese herstellerspezifischen Erweiterungen zu erkennen und zu verarbeiten oder zumindest zu ignorieren, ohne den normalen Funktionsbetrieb zu stören. Die Herausforderung liegt darin, ein Gleichgewicht zwischen der Berücksichtigung dieser Erweiterungen und der Aufrechterhaltung der Kompatibilität mit dem internationalen Standard zu finden.

3. Unvollständige Implementierungen und fehlende Zusatzdienste

Die Verarbeitung von DVB-Daten wird auch durch unvollständige Implementierungen erschwert. Hierbei fehlen notwendige Informationen, die jedoch nicht die Kernfunktionen Audio und Video, sondern Zusatzdienste wie Teletext, den Electronic Program Guide (EPG) oder einfache Sender- und Bouquetnamen betreffen. Obwohl diese Abweichungen die Verarbeitung der Tabellendaten an sich nicht stören und aus technischer Sicht kein Problem darstellen, schränken sie die Funktionalität der Anwendungen ein und können die Benutzerfreundlichkeit beeinträchtigen. Die Anforderung, auch diese Zusatzdienste vollständig zu unterstützen, stellt eine weitere Herausforderung bei der Entwicklung umfassender DVB-Lösungen dar. Die Notwendigkeit, mit unvollständigen Datenströmen umgehen zu können, und gleichzeitig die fehlenden Informationen zu kompensieren, stellt eine besondere Herausforderung dar. Eine robuste Bibliothek sollte in der Lage sein, mit diesen unvollständigen Datenströmen umzugehen und die fehlenden Informationen durch alternative Methoden zu ergänzen, um die Funktionalität der Anwendungen zu gewährleisten.

V.Architektur der geplanten Bibliothek

Die Bibliothek soll eine mehrschichtige Architektur aufweisen: Eine SectionLayer kümmert sich um den Empfang und die Dekodierung von Sections. Die TableLayer vereint die Sections zu vollständigen DVB Tabellen (z.B. NIT, SIT, EIT). Die ApplicationLayer bietet anwendungsbezogene Schnittstellen und Zugriff auf die Daten, z.B. für die Generierung von Transponderlisten oder die Anzeige des EPG. Hilfsklassen für Descriptors unterstützen die Decodierung spezifischer Datenfelder. Die Zwischenspeicherung empfangener Daten (Caching) ist essentiell für eine schnelle Antwortzeit auf Benutzeranfragen. Die Datenstruktur basiert auf verketteten Listen für effizientes Verwalten der DVB Tabellen.

1. Mehrschichtige Architektur SectionLayer TableLayer ApplicationLayer

Die Architektur der geplanten Bibliothek ist mehrschichtig aufgebaut und gliedert sich in drei Hauptkomponenten: die SectionLayer, die TableLayer und die ApplicationLayer. Die SectionLayer ist die unterste Schicht und ist für den Empfang und die anfängliche Dekodierung der Sections zuständig. Sie empfängt die Rohdaten und dekodiert den Sectionheader. Die TableLayer übernimmt die Aufgabe, die über mehrere Sections verteilten Daten zu einer vollständigen Tabelle zusammenzufügen. Sie sortiert und vereint die empfangenen Sections und filtert bereits verarbeitete Daten heraus. Die oberste Schicht, die ApplicationLayer, implementiert die eigentliche Anwendungslogik und stellt eine Schnittstelle für den Benutzer bereit. Diese Schicht greift auf die von der TableLayer aufbereiteten Daten zu und führt anwendungsspezifische Aufgaben aus. Die Trennung in Schichten ermöglicht eine modulare und flexible Gestaltung der Bibliothek. Jede Schicht hat klar definierte Aufgaben und kann unabhängig von den anderen Schichten entwickelt und gewartet werden. Diese Architektur erleichtert die Wartung, Erweiterung und Anpassung der Bibliothek an zukünftige Anforderungen.

2. Descriptor Klassen zur Datendecodierung

Zur Unterstützung der Datenverarbeitung werden Hilfsklassen, sogenannte Descriptor-Klassen, eingesetzt. Diese Klassen implementieren die Datenstrukturen und Funktionen zur Decodierung der verschiedenen Descriptoren. Die TableLayer greift auf diese Hilfsklassen zu, um die in den Sections enthaltenen Descriptoren zu verarbeiten. Eine enge Verknüpfung zwischen den Descriptor-Klassen und der TableLayer ist vorhanden, jedoch wird eine Vereinigung beider Bereiche als nicht sinnvoll erachtet, da keine eindeutige Zuordnung zwischen Tabellentyp und Descriptortyp besteht. Die Verwendung von separaten Descriptor-Klassen erhöht die Modularität und Wartbarkeit des Codes. Die einzelnen Descriptor-Klassen können unabhängig voneinander entwickelt und gewartet werden. Diese Trennung verbessert die Übersichtlichkeit und reduziert die Komplexität des Gesamtdesigns. Die modulare Struktur vereinfacht die Integration neuer Descriptortypen und ermöglicht eine bessere Anpassung an zukünftige Anforderungen des DVB-Standards.

3. Datenstrukturen Zwischenspeicherung und verkettete Listen

Die Bibliothek basiert auf einer Datenstruktur, die das effiziente Speichern und Verarbeiten der empfangenen Daten ermöglicht. Ein wichtiger Aspekt ist die Zwischenspeicherung der empfangenen Sections, um schnelle Antwortzeiten auf Benutzeranfragen zu gewährleisten. Die Datenstruktur verwendet verkettete Listen, um die Kopfdaten aller empfangenen Sections zu speichern und den Zugriff auf die Informationen zu optimieren. Durch den Vergleich der Kopfdaten kann die Bibliothek feststellen, ob eine empfangene Section neu ist oder bereits verarbeitet wurde. Die Nutzdaten werden so lange in der Liste gehalten, bis alle Teile einer Tabelle vollständig vorliegen und dann an den Controller übergeben. Diese interne Datenhaltung ermöglicht schnelleren Zugriff auf die Daten als eine direkte Analyse der Rohdaten bei jeder Anfrage. Die Wahl der Datenstruktur (verkettete Listen) optimiert den Zugriff auf die Daten und ermöglicht eine effiziente Verarbeitung. Die Zwischenspeicherung (Caching) von Daten erhöht die Performance der Anwendung erheblich, insbesondere bei häufigem Zugriff auf die gleichen Daten.

VI.Anwendungsfälle und Funktionsumfang

Die Bibliothek soll verschiedene Anwendungsfälle unterstützen, darunter die Generierung von Transponderlisten (wichtig für den Satellitenempfang), die Verarbeitung von Regionalprogrammen (z.B. MDR) und die Unterstützung von Conditional Access (CA) Diensten. Die Bibliothek soll erweiterbar sein, um zukünftige Entwicklungen im DVB-Standard und neue Tabellentypen zu integrieren. Die minimale Wiederholrate von Tabellen wie TDT und TOT (30 Sekunden) wird berücksichtigt, um die Effizienz der Datenverarbeitung zu optimieren.

1. Anwendungsfälle der ApplicationLayer

Der Abschnitt beschreibt den Funktionsumfang der Bibliothek anhand von Anwendungsfällen, die jeweils durch eine oder mehrere Klassen in der ApplicationLayer implementiert werden. Jeder Anwendungsfall erhält Zugriff auf die internen Speicherstrukturen und stellt seine Funktionalität über eine definierte Schnittstelle zur Verfügung. Die konkrete Implementierung der Anwendungsfälle wird nicht detailliert beschrieben, aber es wird deutlich gemacht, dass jeder Anwendungsfall die Daten der TableLayer nutzt und die eigentliche Anwendungslogik beinhaltet. Die Modularität der ApplicationLayer ermöglicht die einfache Erweiterung der Bibliothek um neue Funktionalitäten, ohne den Kern der Datenverarbeitung zu beeinträchtigen. Durch die klare Trennung von Datenverarbeitung (TableLayer) und Anwendungslogik (ApplicationLayer) wird eine hohe Flexibilität und Erweiterbarkeit der Bibliothek sichergestellt. Die Implementierung der Anwendungsfälle in separaten Klassen erhöht die Wartbarkeit und ermöglicht eine unabhängige Entwicklung und Testung der einzelnen Komponenten.

2. Generierung von Transponderlisten für Satellitenempfang

Ein spezifischer Anwendungsfall ist die Generierung von Transponderlisten für Satellitenempfänger. Satellitenempfänger benötigen diese Listen, um die im Netzwerk verfügbaren Datenströme zu finden. Die Transponderlisten bestehen aus einer Datei pro Satellitennetzwerk. Jede Datei enthält im ersten Teil die Satelliten-ID (abgeleitet aus der Orbitalposition) und den Netzwerknamen. Der zweite Teil beinhaltet weitere Informationen wie Frequenz, Polarisation und Symbolrate. Die Schnittstelle zum Benutzer ist kompakt gestaltet und umfasst lediglich eine Methode zur Festlegung des Speicherpfades und eine parameterlose Methode zum Starten des Speichervorgangs. Die eigentliche Verarbeitung erfolgt intern. Die Ausgabe besteht aus den generierten Dateien. Dieser Anwendungsfall verdeutlicht die Fähigkeit der Bibliothek, komplexe Daten aus verschiedenen Tabellen zu verarbeiten und in ein benutzerfreundliches Format umzuwandeln. Die Automatisierung der Transponderlistengenerierung vereinfacht die Konfiguration von Satellitenempfängern und verbessert die Benutzerfreundlichkeit.

3. Verarbeitung von Regionalprogrammen und dynamischen Ereignissen

Ein weiteres Beispiel für den Funktionsumfang der Bibliothek ist die Verarbeitung von Regionalprogrammen. Viele Sender bieten regionale Programme an, die sich zeitweise von dem Hauptprogramm unterscheiden. Am Abend vereinigen sich die Regionalprogramme wieder zum gemeinsamen Hauptprogramm. Ein konkretes Beispiel ist der MDR mit seinen Regionalprogrammen in Thüringen, Sachsen und Sachsen-Anhalt. Um Netzwerkkapazitäten zu sparen, wird nicht für jedes Regionalprogramm ein separater Datenstrom gesendet, sondern nur einer für das Hauptprogramm, auf den alle Regionalprogramme verweisen. Nur in den Zeiträumen mit eigenständigen Regionalprogrammen werden separate Datenströme verwendet. Der Wechsel zwischen gemeinsamen und regionalen Programmen wird dynamisch über Events signalisiert, was einen Wechsel der Video- und Audio-PIDs innerhalb des Multiplexes zur Folge hat. Die Bibliothek soll in der Lage sein, diese dynamischen Veränderungen zu erkennen und zu verarbeiten, um eine korrekte Darstellung der Programme zu ermöglichen. Diese Fähigkeit, dynamische Änderungen zu verarbeiten, ist ein wesentlicher Aspekt der Funktionalität der Bibliothek und verbessert die Robustheit und Zuverlässigkeit der Anwendungen.