Apple Video - Apple Video
Apple Video je ztrátový algoritmus komprese a dekomprese videa (kodek ) vyvinutý společností Apple Inc. a poprvé vydána jako součást QuickTime 1.0 v roce 1991.[1] Kodek je také známý jako Video QuickTime, podle jeho FourCC RPZA a jméno Road Pizza.[2][3] (Kódové označení „Road Pizza“ je odkaz na myšlenku, že „když přejdete zvíře, v zásadě ho na dálnici komprimujete“.[4]) Při použití v AVI kontejner, FourCC AZPR je také používán.[3]
Formát bitového toku Apple Video byl zpětně analyzován a do projektů byl implementován dekodér XAnim a libavcodec.[2][5]
Technické údaje
Kodek pracuje na 4 × 4 blocích pixelů v RGB barevný prostor. Každý snímek je segmentován do 4 × 4 bloků v pořadí rastrového skenování. Každý blok je kódován v jednom ze čtyř režimů kódování: přeskočit, jednobarevný, čtyřbarevný nebo 16 barev.[3] Barvy jsou reprezentovány 16 bity s a bitová hloubka 5 bitů pro každou ze tří složek červenou, zelenou a modrou, formát známý jako RGB555.[3] Protože Apple Video pracuje v obrazové doméně bez kompenzace pohybu, dekódování je mnohem rychlejší než MPEG -styl kodeky, které používají kompenzace pohybu a provést kódování v a přeměnit doména. Jako kompromis je výkon komprese Apple Video nižší.
Přeskočit režim
Režim přeskočení je realizován podmíněné doplňování. Pokud je blok kódován v režimu přeskočení, je obsah bloku na stejném místě v předchozím snímku zkopírován do aktuálního snímku.[3] Spuštění bloků přeskočení jsou kódovány v a kódování délky běhu schéma, umožňující vysoký kompresní poměr ve statických oblastech obrazu.[3]
Režim jedné barvy
V režimu jedné barvy jsou všechny pixely v bloku dekódovány stejnou barvou.[3] To lze interpretovat jako a paleta s jednou barvou.
Čtyři barevný režim
Ve čtyřbarevném režimu je každý pixel v bloku dekódován jako jedna ze čtyř barev, které jsou specifikovány v paletě.[3] Pro výběr jedné ze čtyř položek se do bitového proudu zapisují 2 bity na pixel. Stejná paleta se používá pro běh délky mezi jedním a 32 bloky.[3] Ze čtyř barev jsou dvě explicitně zapsána do bitového proudu, zatímco další dvě jsou v dekodéru vypočítány pomocí lineární interpolace v barevném prostoru RGB pomocí následujících rovnic:
kde color0 a color3 jsou dvě barvy, které jsou zapsány v bitovém proudu.[3] Čtyři barvy lze interpretovat tak, že leží ve stejné vzdálenosti od sebe na úsečce v trojrozměrném vektorovém prostoru se třemi složkami červenou, zelenou a modrou. Koncové body tohoto řádku jsou zapsány v bitovém proudu. Podobné barevné interpolační schéma se používá v Komprese textury S3.
Vyloženo jako vektorové kvantování, je trojrozměrný vektor s komponentami červenou, zelenou a modrou kvantováno pomocí číselníku se čtyřmi položkami.
16 barevný režim
V 16barevném režimu je barva každého pixelu v bloku explicitně zapsána do bitového proudu.[3] Tento režim je bezztrátový a ekvivalentní raw PCM bez jakékoli komprese.
Viz také
- Indexovaná barva
- Kvantování barev
- Blokové zkrácené kódování, podobná technika kódování obsahu ve stupních šedi
- Komprese barevných buněk, podobná technika kódování barevného obsahu, založená na blokovém zkrácení kódování
- Microsoft Video 1, kodek založený na podobném designu
- Grafika QuickTime, kodek založený na podobném designu
- Smacker video, kodek založený na podobném designu
- Komprese textury S3, formát komprese textury založený na podobném designu
Reference
- ^ Guillermo A. Ortiz (léto 1991). „QuickTime 1.0:“ Měli byste být v obrazech"" (PDF). Počítač Apple. Citováno 14. dubna 2013.
- ^ A b "Dokumentace FFmpeg". FFmpeg. Citováno 4. dubna 2013.
- ^ A b C d E F G h i j k „Apple RPZA“. MultimediaWiki. 11. prosince 2008. Citováno 4. dubna 2013.
- ^ „CHM Live: The Origins of QuickTime“. Muzeum počítačové historie. Citováno 27. března 2018.
- ^ Mark Podlipec (10. prosince 1997). „xanim.2.70.6.4.2 README“. XAnim. Archivovány od originál dne 28. prosince 2015. Citováno 4. dubna 2013.