JPEG állókép kódolás
Állókép és videó kódolások
(Joint Photographic Experts Group )
1
2
Kiindulási paraméterek • Az első nemzetközi szabvány folytonos színtónusú állóképek digitális kódolására • A JPEG szabvány pontos azonosítása:
• sokféle képminőség • sokféle bitsebesség
ISO/CCITT 10918
• képminőség - bitsebesség kompromisszum
• Alapcélkitűzés: a legtöbb alkalmazás igényét kielégítő állókép tömörítési szabvány megalkotása úgy, hogy az adatcsere az alkalmazások között megoldható legyen
• különböző méretű képek alkalmazhatósága: – képméret, pixel- méretarány, színmérő-rendszer, stb. • csere-kompatibilitás
• Megkötések: – képméret maximum 65535 x 65535 (nem túl komoly!)
• egyszerű hardver igény
– komponensek száma maximum 255 (nem túl komoly)
• bal felső – jobb alsó szekvenciális kép felépítés • a kóder és dekóder szimmetrikus felépítésű
– a színmérő-rendszer nem specifikált 3
4
Megcélzott alkalmazások • fotóvideó text • kiadvány szerkesztés • színes fax • elektronikus újság • grafikai művészetek • orvosi rendszerek • képadatbázisok, stb. • többféle üzemmód • csak a DCT alapú szekvenciális kódolással foglalkozunk • de lehet pl. veszteségmentes DPCM kódolás
5
Feldolgozási lépések • Az át nem lapolódó 8x8-as blokkok DCT transzformációja • Az együtthatók kvantálása blokkonként egy felhasználó által definiált súlyozó mátrix és egy kvantálási tényező segítségével
⎡ X (k , l ) ⎤ X (k , l ) = ⎢ ⎥ ⎣W ( k , l ) ⋅ Q ⎦ ∗
• ahol W(k,l) a súlyozó mátrix (k,l)-dik eleme, Q a kvantálási tényező, [...] a kerekítési operátor • Többféle súlyozó mátrix • A DC együttható: az előző blokkhoz képesti különbség 7 kódolása (1-D veszteségmentes DPCM)
6
Feldolgozási lépések • Az AC együtthatók cikk-cakk-ba rendezése, futamhossz kódolt párok {0-ák futási hossza, nem zérus amplitúdó} képzése • A differenciális DC együtthatók és a futamhossz kódolt párok VLC kódolása • A képkomponensek (R/G/B, Y/CB/CB) függetlenül kódoltak • A rekonstruált kép minőségét a súlyozó mátrix, a kvantálási tényező és a DCT és IDCT pontossága határozza meg • A nem definiált kvantálási és Huffman táblákat a fejlécben kell továbbítani • Nincs tényleges bitsebesség vezérlés
8
MPEG (videó) kódolások MPEG: Motion Picture Experts Group
Az MPEG szabványok célja: a videó és audió digitális, bitsebesség csökkentett formában történő hatékony ábrázolása
9
A szabványok felépítése
10
MPEG fázisok és alkalmazások
• 1. rész a rendszer specifikáció: a kódolt videó, audió és adat összefűzésének szintaxisa a szinkronizált visszajátszáshoz
• MPEG-1 (ISO 11172 /1993/): Alacsony bitsebesség, multimédia, kb. 1,5 Mbit/s, LDTV minőség, csak progresszív
• 2. rész a videó specifikáció: a bitsebesség csökkentett videó bitfolyam szintaxisa és a videó modell dekóder specifikációja
• MPEG-2 (ISO 13818 /1994-95/):
• 3. rész az audió specifikáció: a bitsebesség csökkentett audió bitfolyam szintaxisa és az audió modell dekóder specifikációja • 4. rész a Conformance test (tesztelés/megfelelőség) • További részek egyéb kiegészítések (MPEG-4 esetében AVC) • A szabványok nem specifikálják a kódolókat! • Csak a kimeneti adatfolyamok bitszintaxisa és a modell 11 dekódoló specifikált
– Műsorszórás (DVB), 2-6 Mbit/s – Stúdiótechnika, 25-50 Mbit/s újrafeldolgozási minőség – Digital Versatile Disc (DVD), 3-7 Mbit/s PAL-nál jobb – Általában ITU-601 4:2:0, váltott-soros • MPEG-4 (ISO/IEC 14496): – Alacsony bitsebességű kódolások (nx64 kbit/s) szabványának indult (1994), de az interaktív multimédia 12 objektum orientált szabványává vált, később AVC
MPEG-1 szabvány felépítése
MPEG-2 szabvány felépítése ISO/IEC 13818
ISO/IEC 11172
• Information Technology; Generic Coding of Moving Pictures and Associated Audio Information
• Information technology; Coding of moving pictures and associated audio for digital storage media at up to about 1,5 Mbit/s
• ISO/IEC 13818-1, Systems • ISO/IEC 13818-2, Video
• ISO/IEC 11172-1, Systems
• ISO/IEC 13818-3, Systems
• ISO/IEC 11172-2, Video
• ISO/IEC 13818-4, Compliance testing
• ISO/IEC 11172-3, Audio
• ISO/IEC 13818-5, Software simulation
• ISO/IEC 11172-4, Conformance testing
• ISO/IEC 13818-6, DSM-CC
• ISO/IEC 11172-5, Software simulation
13
• ..
14
Az MPEG videókódolás rétegszerkezete
MPEG videókódolás
• 1. Szekvencia réteg: a kódolt szekvenciát azonosítja, a fejléc tartalmazza a rendszeradatokat (képméret, bitsebesség, stb.)
• DCT alapú mozgáskompenzációt használó hibrid kódolás • A kódolás és dekódolás számításigénye különböző, a rendszer tehát aszimmetrikus • MPEG videókódolás egyik legfontosabb jellemzője a réteges kódolási szerkezete
• 2. Képcsoport réteg (GOP=Group Of Pictures): legalább egy önmagában kódolt (I) képet tartalmazó, bizonyos számú kép együttese, a véletlen hozzáférés egysége • 3. Képréteg: egy kép kódolt adatait tartalmazza
• A rétegszerkezet 6 egymásba ágyazott egységet tartalmaz, melyekben az alsóbb rétegek általában nem dekódolhatók a felsőbb szintek nélkül
• 4. Szelet (slice) réteg: MB-ok sorfolytonos csoportja, az újraszinkronizáció egység, a legalsó szint, amelyen a dekóder még képes feléledni bithiba esetén
• A felső 4 egység egyedi startkóddal rendelkezik, így kezdetük dekódolás nélkül megtalálható
• 5. Makroblokk réteg: általában az Y 16x16-os, és a CR,CB 8x8 blokkjaiból áll, a mozgás-kompenzáció egysége
15
16 • 6. Blokk réteg: a MB 8x8-as blokkjai, a DCT kódolás egysége
17
MPEG képtípusok
• Az I képek a legkevésbé, a B képek a legjobban tömöríthetők • Tipikus értékek: I kép: 0,8 ... 1,2 bit/pixel
• I (Intra coded): önmagában kódolt kép, a dekódoláshoz szükséges minden adatot tartalmaz
P kép: 0,3 ... 0,5 bit/pixel B kép: 0,1 ... 0,3 bit/pixel
• P (Predictive coded): a múltból prediktiven kódolt kép, referenciája egy előző I vagy P kép, a dekódoláshoz a referencia szükséges
• A globálisan elérhető tömörítés 10 - 50 • B képek alkalmazásával növekszik a dekódoló oldalon a számítás- és memóriaigény, és a kódoló oldali a késleltetés
• B (Bidirectionally coded): két-irányból kódolt kép, referenciája az előző I/P (múltbeli referencia) és a következő I/P kép (jövőbeli referencia), a B kép nem lehet referencia • Az I képek a legkevésbé, B képek a legjobban tömöríthetők
18
• Az IPB struktúra nem specifikált, B képek használata nem kötelező, a szekvencia állhat csak I, vagy csak I és P képekből • Az I, P és B képek aránya kompromisszum kérdése: – Gyors véletlen hozzáférés : sok I kép – Nagy tömörítési fok: sok B, kevés I kép 19
– Alacsony késleltetés, alacsony hardverköltség: nincs B kép20
MPEG képsorrend • A műsorszórás gyakori kijelzési képsorrendjei: – Európa: IBBPBBPBBPBB (Long GOP) – Amerika: IBBPBBPBBPBBPBB (Long GOP) • Stúdiótechnika kijelzési sorrendje: csak I képek (only I)
MB típusok és MB szintű predikció • I képekben: minden MB önmagában kódolt, intra típusú • P képekben: a MB lehet önmagában, vagy prediktíven kódolt
21
• B képekben: a MB lehet csak a múltból, csak a jövőből, a múltból és a jövőből jósolt, illetve önmagában kódolt 22
A kódolás folyamata • A kvantáló mátrixok különböznek I és P MB-okra • I típusú MB-ra: HVS-nek megfelelő • Nem I típusú MB-ra: minden értéke azonos, mivel a hibablokk zajszerű • DC DCT együttható kódolása: differenciális veszteségmentes + VLC, de csak az I típusú MB-ra • AC DCT együtthatók kódolása: cikk-cakk rendezés, {0-k száma, értékes amplitúdó} párok képzése, gyakori párokhoz VLC rendelése
23
• Mozgásvektorok kódolása veszteségmentes DPCM, plusz VLC
24
A kódolás folyamata • Ha egy MB összes blokkja zérussá válik a kvantálás után, akkor azt nem kódoljuk • Gyakorlatilag "majdnem" 0 bittel írhatók le az úgynevezett kihagyott (skipped) MB-ok, amelyek definíciója az alábbi: – Kihagyott MB P képben: nem kódolt, és nem mozgáskompenzált, mozgásvektora zérus – Kihagyott MB B képben: nem kódolt, és az összes mozgásvektora az előző MB-éval egyezik meg • A MB típus meghatározása nem specifikált kódoló oldali feladat
25
26
27
28
Változó bitsebességű kódolás (VBR: Variable Bit Rate)
MPEG bitsebesség vezérlés Konstans bitsebességű kódolás (CBR)
• Két alapvető típusa létezik:
• A kódoló kimenetén egységnyi idő alatt keletkező bitek száma tág határok között változik, hiszen:
– nyílthurkú VBR: nincs puffer szabályzás – visszacsatolt VBR: van puffer szabályozás
– A különböző típusú képek (I, P, B) különböző bitszámmal kódolhatók még azonos minőség mellett is
• Nyílthurkú VBR, ha a bitfolyam olvasás vezérelhető eszközről (pl. DVD) történik, ekkor puffer végtelen nagy
– Egy képen belül is változhat a képtartalom, a bonyolultabb struktúrájú területek leírásához több bitre van szükség
• Kétféle nyílthurkú VBR, attól függően, hogy a kvantáló skálafaktort, vagy a szubjektív képminőséget tartjuk állandón
– A változó szóhosszúságú kódolás is szerepet játszik a pillanatnyi bitsebesség ingadozásában • A legtöbb átviteli csatorna konstans bitsebességű forrást igényel • A probléma pl. a kóder kimenetére helyezett pufferrel oldható meg, melyből a csatorna fix órajellel olvassa a biteket 29
– Konstans skálafaktorú kódolás a kvantálási zajt egyenletesen teríti a képen (nem feltétlenül a legjobb képminőség) – A képminőség konstanson tartásához a skálafaktort a 30 képtartalomhoz kell igazítani (DVD)
• A visszacsatolt VBR kódolás lényege, hogy a rendkívül változó pillanatnyi bitsebességet puffereléssel kisimítjuk mielőtt a bitfolyam a VBR csatornára kerül • Így a sebesség a definiált csúcssebesség alatt marad • A VBR kódolás kb. 20-30%-kal kisebb átlagos bitsebességet eredményez, mint az ugyanazon képminőségű CBR kódolás • Kifinomult CBR kódolással hatékonyságbeli különbség:
azonban
csökkenthető
a
– Előrecsatolt (feed-forward) bitsebesség szabályozás: globális (kép szintű) és lokális (MB szintű) szabályzás komplexitás analízissel. – Visszacsatolt (feed-backward) bitsebesség szabályozás: lokális szabályzás a buffer telítettség figyelésével. 31
32
MPEG-1 videókódolás alapparaméterei
MPEG-2 videókódolás • MPEG-2 videó: MPEG-1-re épül, vele felülről kompatibilis
• 4:2:0-ás mintastruktúra
• Legfontosabb jellemzői:
• Képfrekvenciák: 24, 25, 29.97, 30, stb. kép/sec
– Váltott-soros videó kezelés, kép/félkép alapú feldolgozás
• Képméret maximálisan 4095x4095
– Réteges és léptékelhető kódolási módok (mára nem fontos)
• Letölthető kvantálási mátrixok
– Profile - level szerkezet
• I, P, B képek
• Teljes képes (frame) kódoláskor két félképet együtt, míg félképes (field) kódoláskor a félképeket egymástól függetlenül dolgozza fel (DCT és mozgásbecslés is)
• SIF (352x288x25, vagy 352x240x30) méret ajánlott • Csak progresszív képek kódolása • Elérhető tömörítés jó minőségű kódolás esetén: 25-30
33
35
• Egy videó szekvencián belül a kép és félkép majdnem tetszőlegesen keverhető
34
36
Profile-level szerkezet • Az MPEG-2 különböző osztályokat definiál, melyek meghatározzák az adott bitfolyamok dekódolásához szükséges dekóder képességet és kapacitást • A profile-ok a mintavételi formátumokat, a képtípusokat, és az egyéb kódolási eszközöket definiálják és korlátozzák • A level-ek a képméretet, a bitsebességet, a képfrekvenciát definiálják és korlátozzák • A level-ek a következő alkalmazásokat célozzák meg: – Low
: videokonferencia
– Main
: SDTV
– 422P@ML
: stúdiótechnika
– High
: HDTV
37
38
39
40
41
42
AVC (Advanced Video Coding) • Lényegesen jobb videó minőség, javított és bővített kódolási eszközkészlettel, ami jelentős adat kompresszió és kódolási hatékonyság növekedést eredményezett – Nem csak fix méretű mozgáskompenzációs egység, hanem tartalom adaptív méret állítás (MPEG-2-ben nincs) – Képen belüli predikció (MPEG-2-ben nincs) – Nem csak két referencia képes időbeni predikció, hanem sok-képes predikció is – Blokkosodást gátló szűrés (MPEG-2-ben nincs) – Pontosabb mozgáskompenzáció – Kétféle javított (15%) hatékonyságú entrópia kódolás
43
44
45
46
47
48
49
50
Implementáció • Mivel az AVC lényegesen nagyobb bonyolultságú, mint a megelőző kódolási módok, ezért nagyobb feldolgozási teljesítményt is igényel a kódolás, és a dekódolás is • A következő táblázat tartalmaz egy összehasonlítást a megelőző és az AVC kódolási módok között a komplexitás és a hatékonyság tekintetében AVC profilok
Megcélzott alkalmazás
Dekóder felépítés MPEG-2-höz képest
MPEG-2-höz képesti kódolás hatékonyság
Baseline
Kis késleltetés (videótelefon, mobil)
150%-kal komplexebb
50%-kal jobb
Mobil, streaming
250%-kal komplexebb
75%-kal jobb
Váltott-soros videó, műsorszórás
300%-kal komplexebb
100%-kal jobb 52
Extended 51
Main
AVC új profil igénye
AVC új profiljai (High profile)
• Az AVC 2003-ban elfogadott videó kódolási szabványa minden előzőnél nagyobb kódolási hatékonyságot biztosított • A cél az SD és a kisebb felbontások támogatása
• High Profile (HP): 8 bites videó, 4:2:0 mintastruktúra, csúcs fogyasztói célokra, ha nem szükség a kiterjesztett szín mintastruktúra
• Így 8 bit/mintára, és 4:2:0 mintastruktúrára optimalizálták
• High 10 Profile (Hi10P): 4:2:0 mintastruktúra, 10 bit/minta
• Kezdetben 3 profil: Baseline, Main, és Extended
• High 4:2:2 Profile (H422P): 4:2:2 mintastruktúra, 10 bit/minta
• Részben időhiány miatt a professzionálisnak számító képminőségeket nem különösebben jól kezelték
• High 4:4:4 Profile (H444P): 4:4:4 mintastruktúra, 12bit/mintáig minden, járulékosan támogatható a hatékony veszteségmentes kódolás, és az integer transzformáció alapú színtér konverzió, mellyel a színtér transzformáció kerekítési hibája elkerülhető
• A szubjektív képminőség vizsgálatok szerint az objektíven mért javulással nem egyenesen arányos a szubjektív képminőség javulás (különösen HD filmekre) • Új megközelítés (pl. profil) kellett
53
54
AVC kódolási hatékonysága
A vizsgálatok szerint az SD/HDTV alkalmazásokban az AVC 4/9 –2/5-ére csökkenti az MPEG-2-höz képesti adatsebességet, de a csökkenés képtartalom függő
55
Az MPEG rendszer felépítése
56
57
58
59
60
Néhány előzetes fogalom
Néhány előzetes definíció
• ES: Elementary Stream: egyetlen komponens (audio, videó, adat) kódolt adatai • Csomagolás (packet) az a művelet, amelyben az ES jól definiált mennyiségű adatait fejléccel és esetleg hibavédelemmel látjuk el, ezzel az kapott csomag kezdete és tartalma pontosan detektálható és azonosítható lesz • PES: Packetized Elementary Stream, csomagolt ES adatfolyam, egyetlen komponens fejléccel és egyéb vezérlési információval ellátott adatait tartalmazza • PS: Program Stream, amely egyetlen program videó, audió és adat komponenseit tartalmazza, csomagolt formában • TS: Transport Stream, amely számos program és komponens 61 csomagolt adatait tartalmazza
• PU: Presentation Unit, a videó és az audió megjelenítési egysége (videó esetén egyetlen kép, audió esetén pedig jól definiált időtartamú audió minta) • AU: Access Unit, hozzáférési egység, amely általában a megjelenítési egység kódolt adatait tartalmazza • Időbélyeg (time stamp), valamilyen órajel adatfolyamba beültethető formában lévő adatait tartalmazza – PTS: Presentation Time Stamp, megjelenítési időbélyeg (PU) – DTS: Decoding Time Stamp, dekódolási időbélyeg (AU) – PCR: Program Clock Reference, program órajel referencia – SCR: System Clock Reference, rendszer órajel referencia 62
Csomagolt elemi adatfolyam (Packetized Elementary Stream – PES) • Egy elemi komponens kódolt adataiból létrehozott azonos azonosítóval rendelkező csomagok folyamatos sorozata a PES • A PES adatmezejét a komponens egymás utáni adat bájtjaiból, az eredeti sorrendet megtartva kell létrehozni • De tartalmaznia kell egyebek között az adatfolyam órajelét és a bitsebességét is • A PES csomagok változó hosszúságúak • A PES csomag elején a minimum 6 bájt hosszú fejléc található • A fejléc első 3 bájtja kezdet jelző „startkód előtag” (000001) 63
• A fejléc 4. bájtja az „adatfolyam-azonosító”, mely a típust azonosítja (pl. videó, audió, vagy egyéb adatfolyam)
64
PES Adatfolyam azonosító (célirányos részletek) 1011 11X1 1011 1110 110x xxxx 1110 xxxx 1111 000X
A kódolt adatfolyam tartalma Privát adatfolyam Töltelék bitfolyam (padding) MPEG-1,-2 audió adatfolyam (32 db.) MPEG-1,-2 videó adatfolyam (16 db.) Titkosítás adatfolyamai (ECM és EMM)
• Az adatfolyam azonosítót a 2 bájtos csomaghossz követi, amivel a legfeljebb 64 kilobájtos hasznos adattartalom adat mennyisége adható meg 65
66
A program adatfolyam (PS) • A PS egyetlen program, azonos időalappal rendelkező elemi adatfolyamainak kódolt adatait tartalmazza • Kis hibavalószínűségű tárolás, vagy átvitel céljaira • Azaz szoftver alkalmazások számára dolgozták ki • Maga a PS lehet változó és fix bitsebességű • Az alkotó elemek is lehetnek fix, vagy változó sebességűek • A PS sebességét az időalap bélyegének helye és tartalma, és az adatsebesség mező (mux_rate) határozza meg 67
68
Transzport adatfolyam (TS) • A TS-t zajos környezetre (fix méretű csomagok) tervezték • Egy vagy több program kódolt adatait tartalmazhatja • Lehet fix vagy változó adatsebességű • A komponensek is lehetnek fix vagy változó adatsebességűek • Minden programnak lehet független időalapja • TS előállítás kritikus, ha több egymástól független időalappal rendelkező programból kell kialakítani egyetlen konstans bitsebességű TS-t • TS-t előállítani tetszőlegesen lehet, ha az érvényes szintaxisú bitfolyamot eredményez • Az előállítás történhet PES-ből, vagy TS-ből
69
70
TS fejléc fontosabb részei • Szinkron bájt: értéke Hex. 47 • Átviteli hiba jelzés (1bit): jelzi, hogy a csomag átvitele során valahol a hibavédelmi eljárás nem volt képes minden hibát kijavítani, így a csomag tartalma figyelmen kívül hagyandó • Csomag azonosító (PID) (13bit): egy adott TS-ben minden komponens egyedi azonosítója • Feltételes hozzáférés jelzés (2bit): megadja, hogy a TS-csomag hasznos adatrésze titkosított-e vagy sem – Ha a két bit „00”: akkor a hasznos rész nincs titkosítva – Ha a két bit közül csak az egyik „1”: a hasznos adatrész titkosított, vagy helyi kódszavas, vagy vezérelt 71
– Ha a két bit „1”-es, akkor egyéb gond van
72
TS fontosabb részei • Csomag folytonossági számláló (4bit): minden azonos PID-ű TS csomagsorozat rendelkezik ezzel a 4 bites számlálóval, amely 0 és 15 között inkrementálódóan számol úgy, hogy 15 után a 0-t veszi fel, és minden azonos PID-ű beültetendő csomag esetében értéke eggyel nő, alkalmazása lehetővé teszi a vevő oldalon a csomagvesztés detektálását (ha értéke nem eggyel nő), program váltáskor értéke megszakadhat, amit az adaptációs mezőben jelezni kell • PCR (42bit): az adaptációs mező legfontosabb része, amely a kódoló oldalon a rendszer-órajel (27 MHz) periódusait 42 biten számlálja (kb. 26 óra körül fordulással), a vevőben a digitális óragenerátor PLL referenciáját szolgáltatja 73
74
75
76
Időzítés forrása • Az időzítési információ általában egy közös órajelből (STC: System Time Clock) származik • A TS esetében az órajel csak az audió, vagy a videó mintavételi frekvencia tört része lehet (27 MHz)
• Több elemi bitfolyam kódolásakor célszerű az egyes bitfolyamok kódolását egyetlen közös órajelhez kötni • Ezen órajel lehet valamelyik forrás órajele, de lehet külső is • De a TS programjai rendelkezhetnek saját időalappal is • A szinkronizáció eszköze a megjelenítési időbélyeg (PTS) • Ezért azok a TS és PES csomagokban is megtalálhatók
Szinkronizáció • A TS elemi komponensei közötti szinkronizáció alapja a különböző időbélyegek (Time Stamp) • Ezek az időbélyegek is valamilyen órajelből származnak • A leggyakoribb órajel típus a Program órajel (PCR)
77
79
• A szinkronizáció úgy biztosítható, hogy a kóder akkor generálja a PTS-t, amikor a kérdéses adategységet megkapta, és ezt a PTS-t az adategység megfelelő adatai közé beülteti • A dekóder a PTS-t kinyeri és a jelzett időben végzi a kijelzést 78
80
Az STC regenerálása • A TS programonként tartalmazza a PCR-t • A PCR az STC abban a pillanatban fellépő értéke, amikor a PCR maga belép a modell dekóderbe (így ültetjük be) • Tehát a PCR megadja a feltételezett és tervezett beérkezési idejét, feltéve, ha a rendszer órajel ismert és szinkronban van • A megfelelően konstruált MPEG-2 bitfolyam PCR értékei az PCR által hordozott időben érkeznek be a dekóderbe • Ha a dekóder és a kóder időalapja szinkronban jár, akkor a teljes konstans késleltetés a bemenet és a kimenet között, valamint a szinkron megjelenítés biztosított • Megjelenési gyakorisága a TS-ben 100, a PS esetében 700 ms, ezzel biztosítható az órajel regenerálás 81
82
• Ha a VCO szabadonfutó frekvenciája elég közel van a kódoló órajel frekvenciájához, akkor a dekóder STC-je az első PCR beérkezése után azonnal megfelelő lesz • Amíg a dekóder PLL nincs fáziszárban, folyamatos és elkerülhetetlen buffer foglaltság növekedés és csökkenés következik be, ami buffer alul/túlcsordulást eredményez • Ezért a dekóder STC frekvencia PLL zárási idejének áthidalására járulékos buffer méretet és késleltetést kell definiálni • Abban az esetben, ha a dekóder olyan PCR-eket vesz, melyek értéke és belépési ideje korrekten tartalmazza a kóder órajel értékeit, a „hiba” nulla értékhez konvergál a 83 PLL zárása után
84
TS felépítés jelzése • Egy TS feldolgozásához ismerni kell az adott TS-t alkotó program komponenseket és azok elérési címét (PID)
MPEG-PSI felépítése
• Tehát a TS felépítést továbbítani kell • Ehhez speciális PID-eket kell kijelölni, ahol a TS tényleges PID kiosztásától független a TS felépítés közölhető
Program specifikus információk
• Ezért a „0”-ás PID-et kijelölték a TS program tartalomjegyzék (PAT) továbbítására
(Program Specific Information)
85
TS felépítés jelzése
• A TS-t alkotó egyes programok felépítése nagyon bonyolult is lehet, ezért a fenti tartalomjegyzék nem a TS tényleges felépítést, hanem azokat az elérési címeket (PMT-PID) hordozza, ahol az egyes programok felépítése megtalálható86
A PSI-hez négy MPEG tábla tartozik • TS program hozzárendelési tábla:
• A PSI célja tehát azon információk biztosítása, melyek lehetővé teszik a TS demultiplexálását, a program komponensek megkeresését és azok azonosítását
– PAT: Program Association Table (PID: 0000)
• Egy TS sok elemi bitfolyamból áll, amelyek mindegyike egy, vagy több PID-del azonosítható • A dekóder ezeket figyeli és az adott műsorhoz megfelelően beállított PID-ű TS csomagokat továbbküldi az audió, videó, illetve rendszerinformációkat feldolgozó egységnek, a többit egyszerűen figyelmen kívül hagyja (ez a PID szűrés)
• Egyedi program térkép tábla: – PMT: Program Map Table • Hálózat információs tábla: – NIT: Network Table Information • Feltételes hozzáférés tábla: – CAT: Conditional Access Table (PID: 0001)
• Teljes program, vagy programok lehetnek titkosítottak is
• A kódolás részleteire nem térünk ki!
• De a PSI nem lehet titkosított 87
88
Általános rendszerek PSI struktúrája
A PSI táblák kapcsolata
• A műsorszórás sok TS adatfolyammal dolgozik • Ezekben a PSI táblák mindegyike megjelenik • A PAT/PMT tábláknak minden esetben komplettnek kell lennie és valamennyi komponensről teljes leírást kell adnia • Ha egy komponens hozzáférése vezérelt, akkor a CAT táblának is meg kell lennie • A PAT táblák adatait mindig a „0”-ás PID-ű, míg a CAT táblák adatait a „1”-es PID-ű TS csomagok hordozzák • A PMT táblákat hordozó TS csomagok PID-jei szolgáltató által definiáltak, mint PMT-PID, melyeket valamennyi programra a PAT tartalmaz 89
91
• A PAT-ban jelzett valamennyi programra teljes leírást kell adni • Ezt egyenként minden programra a PAT táblában megadott azonosítójú PMT táblákkal végezzük • A PAT megadja a kapcsolatot a programszám és az adott programszámú program definiálását biztosító adatokat hordozó TS csomagok PID-je (PMT_PID) között • A TS-en belüli program változást a PAT táblában kell jelezni 90
92
93