dvb
 
telewizja cyfrowa eon skystar
System przesyłowy sygnału cyfrowego DVB
 
 
 
 
 

 

Licznik odwiedzin

 

 

W koderze standardu MPEG-2 - rys. 5.1 skompresowane sygnały wizji, fonii i dodatkowych danych (np. teletekstu) są łączone w jeden sygnał cyfrowy. Na wyjściu kodera wizji i fonii znajdują się układy, które dzielą strumienie danych na pakiety elementarne PES (Packetized Elementary Streams). Podział na pakiety elementarne PES - rys. 5.2 - może być dokonany w sposób prawie dowolny: w przypadku stu mienia wizji początek pakietu nie musi pokrywać się z początkiem zakodowanego obrazu Jedynym ograniczeniem jest maksymalna długość pakietu wynosząca 64 kB. Długość elementarnego pakietu jest różna i zależy od charakteru kodowanych danych.

 

Rys. 5.1. Koder standardu MPEG-2

 

Rys. 5.2. Podział elementarnego strumienia na pakiety PES

 

Rys. 5.3. Nagłówek pakietu elementarnego PES

 

Pakiet PES jest rozpoznawany na podstawie swojego nagłówka - rys. 5.3, który zawiera:

  • 3-bajtową sekwencję startową (00 00 01 hex)
  • 1-bajtowy identyfikator strumienia do którego należy pakiet, liczba identyfikatorów strumieni została ograniczona do 32 dla fonii i 16 dla wizji; dzięki temu zagwarantowane jest, że w strumieniu danych nie powtórzy się sekwencja bajtów startowych na główka pakietu PES i identyfikatora strumienia,
  • 2 bajty określające długość pakietu (stąd ograniczenie długości pakietu do 64 kB),
  • 2 bajty flag sygnalizujących występowanie w nagłówku pól dodatkowych, z których najważniejsze są: znacznik czasu prezentacji PTS (Presentation Time Stamp) i znacznik czasu dekodowania (Decoding Time Stamp). Pola te są wykorzystywane do synchronizacji dekodowania poszczególnych strumieni danych,
  • 1 bajt określający długość nagłówka,
  • pola dodatkowe, jeśli zostało to zaznaczone w bajtach flag.

 

Bezpośrednio po nagłówku znajdują się dane przesyłane w tym pakiecie.
Standard MPEG-2 przewiduje stosowanie dwóch rodzajów multiplekserów: programowego (Program Multiplexer) i transportowego (Transport Multiplekser).

Strumień programowy (Program Stream) jest tworzony przez zwykłe przeplatanie elementarnych pakietów danych należących do jednego programu telewizyjnego. Pakiety mogą być multipleksowane w dowolnej kolejności, wymagane jest jedynie zachowanie porządku chronologicznego w ramach poszczególnych strumieni elementarnych (wizji, fonii, danych). Zaletą strumienia programowego jest mała nadmiarowość danych - elementarne pakiety z reguły są dość długie, a ich nagłówki stosunkowo krótkie. W przypadku strumienia programowego nie ma możliwości zabezpieczenia pakietów przed błędami transmisji, gdyż pakiety te są różnej długości, a kody protekcyjne wymagają pakietów o stałej długości. Dlatego też ten sposób multipleksowania elementarnych pakietów danych może być stosowany przy przesyłaniu kanałem o niskim poziomie zakłóceń, np. w sieciach komputerowych albo zapisie na dyskach magnetycznych lub optycznych.

 

Strumień transportowy (Transport Stream) tworzony jest w inny sposób - elementarne pakiety danych PES są dzielone na mniejsze pakiety o stałej długości równej 184 bajty, przy czym w strumieniu transportowym mogą być umieszczane elementarne pakiety danych pochodzące z różnych programów telewizyjnych.

 

Sposób podziału na pakiety strumienia transportowego jest ściśle określony (rys. 5.4):

  • początek obrazu w strumieniu wizji (lub bloku próbek w strumieniu fonii) musi być umieszczony na początku pakietu strumienia transportowego,
  • kolejne bajty danych pakietu elementarnego są umieszczane w kolejnych pakietach strumienia transportowego,
  • jeśli długość pakietu elementarnego nie jest wielokrotnością 184 (co jest mało prawdopodobne) ostatni pakiet strumienia transportowego, w którym znajdują się dane z pakietu elementarnego jest wypełniany danymi nadmiarowymi (pole adaptacyjne), tak aby zawierał w sumie 184 bajty.

 

Rys. 5.4. Podział pakietu elementarnego na pakiety strumienia transportowego

 

Każdy pakiet uzupełniany jest 4-bajtowym nagłówkiem - rys. 5.5 - zawierającym m.in.:

  • bajt synchronizacji (47 hex),
  • 13-bitowy identyfikator pakietu (Packet IDentification), umożliwiający stwierdzenie, z którego elementarnego pakietu pochodzą dane przesyłane w danym pakiecie strumienia transportowego,
  • 1-bitowy wskaźnik payload_unit_start_indicator, którego ustawienie sygnalizuje, że dany pakiet strumienia transportowego jest pierwszym pakietem wydzielonym z danego pakietu elementarnego PES,
  • 4-bitowy licznik pakietów (Continuity Counter), informujący, którym z kolei pakietem wydzielonym z elementarnego pakietu PES jest dany pakiet.

 

Rys. 5.5. Nagłówek pakietu strumienia transportowego

 

Zastosowanie w strumieniu transportowym krótkich pakietów o stałej długości pozwala na efektywne zabezpieczenie przed błędami transmisji. Typowo każdy pakiet jest zabezpieczany 16 bajtami kodu Reeda-Solomona, który umożliwi korekcję do 8 błędów w każdym pakiecie. Strumień transportowy może być więc stosowany wszędzie tam, gdzie poziom zakłóceń w kanale transmisyjnym jest wysoki, a więc w transmisji programów telewizyjnych poprzez radiodyfuzję satelitarną lub naziemną, lub w sieciach kablowych.

 

W strumieniu transportowym identyfikator pakietu PID ma długość 13 bitów, co pozwala na multipleksowanie ponad 8000 różnych elementarnych strumieni danych. Część pakietów zarezerwowano do transmisji informacji opisujących przesyłane w strumieniu transportowym programy (Program Specific Information - PSI). Spośród tych pakietów najważniejszy jest pakiet o numerze 0, który zawiera tablicę PAT (Program Association Table) z zapisaną informacją o wszystkich przesyłanych programach - rys. 5.6. Tablica PAT zawiera spis programów z wyszczególnionymi numerami pakietów, w których transmitowane są tablice z opisami poszczególnych programów (Program Map Tables - PMT). Przykładowo na rys. 5.6 opis programu nr l jest przesyłany w pakiecie o numerze 306, opis programu nr 3 w pakiecie o numerze 1127, itd. Na początku tablicy PAT wyszczególniony jest program nr O, pakiet opisuŹjący ten program (10 na rys. 5.6) zarezerwowano do przesyłania informacji o sieci nadającej dany zestaw programów (Network Information Table). W tablicach PMT wymienione są numery wszystkich pakieŹtów zawierających elementarne strumienie danych dla danego programu. Program nr 3 w omawianym przykładzie, którego tablica PMT jest zawarta w pakiecie nr 1127 - rys. 5.7 - składa się z sygnału wizyjnego transmitowanego w pakietach o numerach identyfikacyjnych 726, sygnałów fonicznych transmitowanych w pakietach o nr 57, 60, 1022. napisów dla niesłyszących (subtitle) w pakietach o nr 123. Do synchronizaŹcji dekodowania i wyświetlania programu nr 3 wykorzystywany jest sygnał zegarowy (Programme Clock Reference) w polach adaptacyjnych pakietów o nr 726. Sposób synchronizacji jest omówiony w następnym rozdziale.

Dekodowanie strumienia transportowego MPEG-2 rozpoczyna się od wydzielenia z całego strumienia tablicy PAT. Na jej podstawie dekoder określa numery pakietów składające się na program, który ma być w tej chwili odbierany. Następnie ze strumienia transportowego wybiera tylko pakiety o odpowiednich numerach, pomijając wszystkie należące do innych programów - rys. 5.8. Pakiety odpowiadające poszczególnym strumieniom, z których składa się dobierany program, są grupowane w odpowiedniej kolejności, tak aby odtworzyć elementarne pakiety danych PES.

 

Rys. 5.6. Tablica PAT opisująca programy zawarte w strumieniu transportowym

 

Rys. 5.7. Tablica PMT opisująca program nr 3 zawarty w strumieniu transportowym z rys.5.6

 

Rys. 5.8. Demultipleksowanie strumienia transportowego

 

. 5.9. Dodawanie znaczników czasu do pakietów elementarnych w koderze MPEG-2

 

Synchronizacja

W nagłówkach pakietów elementarnych PES mogą znajdować się dwa znaczniki czasu PTS i DTS. Znaczniki te są nadawane przez koder w trakcie multipleksowania pakietów. W koderze znajduje się 42-bitowy licznik taktowany sygnałem zegarowym o częstotliwości 27 MHz. Licznik ten jest zegarem dla transmitowanego programu, przy czym zegar nie musi być w żaden sposób związany z czasem obowiązującym w danym kraju. Koder - rys. 5.9 - przetwarzając kolejno obrazy zawarte w strumieniu wizyjnym wpisuje do znaczników czasu prezentacji PTS poszczególnych pakietów 33 najbardziej znaczące bity licznika zegarowego określające czas, w którym obraz transmitowany w tym pakiecie powinien być wyświetlony. Drugi ze znaczników - znacznik czasu dekodowania DTS - jest nadawany w przypadku nadawania obrazów typu B. Jak wcześniej opisano do zdekodowania obrazu typu B konieczne są dwa obrazy odniesienia - jeden znajdujący się przed nim w sekwencji obrazów i jeden znajdujący się po nim. Dlatego też musi być zmieniona kolejność nadawania obrazów: najpierw nadawane są obrazy odniesienia, potem sam obraz typu B. Drugi, późniejszy obraz odniesienia musi być dodatkowo oznaczony znacznikiem czasu dekodowania, określającym czas, w którym ten obraz powinien być zdekodowany i przeniesiony z bufora dekodera do tymczasowej pamięci. Znacznik DTS zabezpiecza przed przepełnieniem bufora dekodera, zawsze występuje razem ze znacznikiem PTS i zawsze ma wartość mniejszą (najpierw obraz musi być zdekodowany, dopiero później wyświetlany) od znacznika PTS. W analogiczny sposób nadawane są znaczniki czasu dla pakietów fonii i innych danych transmitowanych w danym programie telewizyjnym.

 

Dekoder - rys. 5.10 - ma także swój zegar taktowany sygnałem 27 MHz. Dekoder wydziela z całkowitego sygnału cyfrowego pakiety wizji, fonii i ewentualnie innych danych i odtwarza pakiety elementarne PES. Porównując znaczniki czasu prezentacji PTS poszczególnych pakietów ze stanem licznika zegarowego koder może określić moment, w którym dany pakiet powinien być odtworzony. Ponieważ znacznik PTS zawiera 33 najbardziej znaczące bity zegara więc dokładność synchronizacji odtwarzania pakietów jest równa 1/90 kHz = 11,1 ?s. Do poprawnej pracy dekodera konieczna jest oczywiście synchronizacja jego zegara z zegarem kodera. Do tego celu służy sygnał zegarowy (Programme Clock Reference) wyszczególniony w tablicy PMT (rys. 5.7) każdego transmitowanego programu. Sygnał zegarowy zawiera aktualny stan (42-bity) licznika zegarowego w koderze. Stan zegara musi być przesyłany w strumieniu transportowym nie rzadziej niż co 0,1 s, a w strumieniu programowym nie rzadziej niż co 0,7 s. Dekoder na podstawie wartości sygnału zegarowego ustawia swój zegar i ewentualnie podstraja generator sygnału zegarowego 27 MHz, aby zachować pełen synchronizm z zegarem kodera. W strumieniu programowym każdy z transmitowanych programów może mieć swój własny zegar ale dopuszczalne jest także wykorzystywanie tego samego zegara przez kilka lub wszystkie programy.

 

5.10. Synchronizacja dekodowania i prezentacji pakietów elementarnych w dekoderze MPEG-2

 

Wykorzystanie kompresji MPEG-2 w projekcie DVB

Prace badawcze nad cyfrową transmisją sygnału wizyjnego prowadzono na długo przed opublikowaniem standardu MPEG-2. Pierwsze próby transmisji cyfrowych w roku 1990, udowodniły, że całkowicie cyfrowy telewizyjny system transmisyjny jest możliwy do realizacji przy ówczesnym poziomie techniki. Powszechnie uważano wtedy, że przyszłość telewizji należy do analogowo-cyfrowych standardów rodziny MAC. W roku 1991 zawiązała się grupa - European Launching Group - złożona z przedstawicieli stacji telewizyjnych, producentów sprzętu elektronicznego i organizacji standaryzacyjnych, której zadaniem była koordynacja prac badawczych dotyczących telewizji cyfrowej na obszarze Europy. W roku 1993 grupa ta przyjęła nową nazwę - Digital Video Broadcasting (DVB). Jej celem stało się opracowanie cyfrowych standardów telewizyjnych, które umożliwiłyby cyfrową transmisję programów telewizyjnych w sieciach naziemnych (DVB-T), satelitarnych (DVB-S) i kablowych (DVB-C). Standardy te miały być możliwie najbardziej zbliżone do siebie, aby zmniejszyć koszty ich opracowywania i ułatwić wymianę programów. Przyjęto, że we wszystkich opracowywanych przez DVB standardach wykorzystywana będzie metoda kompresji wizji i fonii określona w standardzie MPEG-2. Do transmisji wykorzystywany będzie strumień transportowy MPEG-2, w którym blok informacji o przekazywanych programach (PSI) uzupełniono dodatkowym blokiem informacyjnym (Service Information - SI). Blok SI umożliwia m.in. opracowanie jednolitego systemu szyfrowania nadawanych programów telewizyjnych. We wszystkich standardach stosowane będzie zabezpieczenie kodem Reeda-Solomona w pierwszym (zewnętrznym) stopniu zabezpieczenia przed błędami transmisji. Poszczególne standardy (rys. 5.11) różnią się natomiast metodą modulacji i drugim (wewnętrznym) stopniem zabezpieczenia przed błędami transmisji. W standardzie satelitarnym DVB-S stosowana jest modulacja QPSK, w kablowym DVB-C 16-, 32- lub 64-stanowa modulacja QAM, a w naziemnym DVB-T modulacja OFDM z 1704 (2K) lub 6816 (8k) nośnymi. W standardach DVB-S i DVB-T dodatkowo stosowane będzie przeplatanie bitów i zabezpieczenie kodem splotowym przed błędami transmisji. W standardzie kablowym DVB-C drugi (wewnętrzny) poziom zabezpieczenia nie będzie musiał być stosowany.

 

5.11. Schematy blokowe emisji w standardzie DVB

 



O stronie:

Stronka poświęcona szeroko pojętej tematyce telewizyjnej. Zawarte informacje pomogą w zrozumieniu wielu zagadnień związanych z satelitarna telewizja cyfrowa DVB, zarówno teoretycznie, jak i praktycznie.

 

Ciekawe linki:

dvb-board-pl-com

satkurier.pl

happysat.org

dvbpl.com

dvbzone.prv.pl