MPEG-2 és az MPEG-4 AVC videó kódolás összehasonlítása Miért jobb a H.264/AVC videó kódolás?
Kódolási hatékonyság Kommunikáció (Adat, kép) minőség Bitsebesség Optimális kompromisszum Forrás kódoló Komlexitás Késleltetés
MPEG Videó kódolás - 1 Nagy tömörítési arány ® veszteséges Hibrid kódolási eljárás Differenciális + mozgáskompenzáció (időben) Transzformációs + kvantálás (térben) Entrópia kódolás
MPEG Videó kódolás - 2 A kódolás és dekódolás aszimmetrikus Csak a szintaxis és a dekódolás definiált Megvalósítás alkalmazkodhat a követelményekhez Minőség, ár, idő, komplexitás Előfeldolgozás Tömörítés Kitömörítés Utófeldolgozás Hibajavítás
MPEG-2 MPEG-2 : ISO/IEC 13818 (1994) MPEG-1 kompatibilitás Általános célú mozgókép és hang tömörítés. MPEG-1 kompatibilitás Váltott soros videó (!) 4:2:0, 4:2:2, 4:4:4 formátum Skálázható Profil, Level definíció Legelterjedtebb SDTV, HDTV, -T, -S, -C, DVD, HD-DVD,…
H.264 / MPEG-4 AVC Video Coding Experts Group (VCEG) H.26L (1998) Cél: 2-szeres tömörítési hatékonyság Moving Pictures Expert Group (MPEG) MPEG-4 Part 10 AVC (Advanced Video Coding) Joint Video Team (JVT) H.264 / AVC (2001)
Kép ábrázolás Szín tér Szín felbontás Y (világosság), Cb, Cr (szín) 4:2:0 Emberi szem érzékenyebb a világosság információra mint a színre 4:2:2, 4:4:4
Kép típusok – MPEG-2
Kép típusok – H.264 Nincs jelentős különbség Megjelenítési, átviteli, referencia sorrend rugalmas Több referencia kép (nem csak 2) 1 blokkhoz: P ® 1 MV, B ® 2 MV Nem kell időben korábban és később lenniük Memória a korlát IDR kép a szekvencia hozzáférési pontja Korábbi kép IDR után nem lehet referencia Nem minden I kép IDR (instantaneous decoding refresh)
Mozgásbecslés Jobb ® hatékonyabb kódolás ® komplexitás Különböző blokkméretekkel 16x16 ® 4x4 pixel ½ ® ¼ pixeles pontosság Mozgásvektor képen kívülre is mutathat Bármelyen típusú kép lehet referencia Súlyozott predikció I képen belüli
Transzformáció Új transzformáció Hatékonyabb entrópia kódolás Kisebb blokkméreten (4x4) Kevésbé hatékony, de a jobb mozgásbecslés miatt elég, Moszkító zaj kisebb, Illeszkedik a mozgásbecslés legkisebb egységéhez 16 bites aritmetikával számítható Pontos inverz transzformáció ® nincs drift Hatékonyabb entrópia kódolás CAVLC (context-adaptive variable-length code) CABAC (context-adaptive binary arithmetic coding)
Deblocking szűrő Kódolási hurokban Szűrés utáni kép a referencia
Általános kódoló Transzformáció Q Entrópia kódolás Q-1 Dekóder Inverz Mozgás kompenzáció Deblocking szűrő Mozgás becslés
Szelet – MPEG-2 Legkisebb szinkronizációs egység Makroblokkokból áll Nem lapolódhat át Egy sor
Szelet – H.264 16x16 pixeles makroblokkokból áll Több sor is lehet Rugalmas makroblokk sorrend (FMO) Kép ® szelet csoport ® szelet Bármelyik makroblokk bármelyik szelet csoporthoz Kiemelt terület, hibatűrés
Szerkezet – MPEG-2 Hierarchikus Szekvencia Képcsoport Kép Szelet Makroblokk Blokk B P B B I B B P B B P B B I B B P Y0 Y1 Y3 Y2 U V
Szerkezet – H.264 NAL (Network Abstraction Layer) struktúra Átviteli közeghez illesztést segíti RTP/IP, file formátumok, MPEG-2 TS, … VCL (Video Coding Layer) Eddigi szabványokban csak ez volt Non-VCL NAL unit Parameter set – nem fejlécek sequence parameter set picture parameter set Kiegészítő információk RTP/IP MPEG-2 TS NAL Stb… VCL
Összefoglalva Hatékonyabb mozgásbecslés Kis blokkméretű pontos transzformáció Deblocking szűrő a kódolási hurokban Hatékonyabb entrópia kódolás Tömörítés 8–10 –szer komplexebb mint MPEG-2 Kitömörítés kb. 3 –szor komplexebb mint MPEG-2
Bitsebesség - képminőség
Köszönjük a figyelmüket! www.cableworld.hu