d_koe_stt_in_d_wei
+bruin
+groen
+t_grzen

     
           
   

met een beetje geluk heb je gevonden :

de koe staat in de wei
de bruine koe staat in de wei
de bruine koe staat in de groene wei
de bruine koe staat in de groene wei te grazen

   
   

 

Wat heeft die koe in de wei nu met videocompressie te maken ?

Als we een reeks video (of film) frames bekijken stellen we twee dingen vast :


1) binnen één frame zijn een groot deel van de pixels "voorspelbaar", nl. hetzelfde als de hun omringende pixels, of als de omringende pixels bekend zijn door middel van een reeks algoritmes (afspraken, maar in dit geval mathematische) te berekenen of te voorspellen.

2) Van het ene frame naar het volgende blijft een heel deel van de informatie hetzelfde , slechts een klein deel van de beeldinhoud zal ook effectief veranderd zijn, en ook de beweging is vaak voorspelbaar.

vergelijken we dat met onze koe :

d_koe_stt_in_d_wei

door de gemaakte afspraken (codec) weten we hoe de tekst gecodeerd is, en kunnen we hem ook decoderen. Meteen zie je ook dat deze "codec" ruimte laat voor foute interpretaties :

de koe staat in de wei / die koe staat in de wei

De essentie staat er, maar details gaan mogelijk verloren. Ook hier gaat de vergelijking met de video-codec op. Hoe meer informatie wordt "weggelaten" hoe groter het kwaliteitsverlies bij codering/decodering.

Beschouwen we vier zinnen als vier mekaar opvolgende frames, waar telkens een deel van de informatie verandert, maar de rest onveranderd blijft, dan komen we tot:

de koe staat in de wei
de bruine koe staat in de wei
de bruine koe staat in de groene wei
de bruine koe staat in de groene wei te grazen

Nu zou het kunnen dat er een groene koe in de bruine wei staat (kunstenaar aan het werk) , met onze codec valt dat niet te ontcijferen want we gaan er van uit dat een groene koe niet bestaat.

Onze codec is dus ontoereikend voor sommige, heel specifieke situaties, maar in het overgrote deel van de mogelijkheden wel juist.
Ook hier zien we dus weer dat de kwaliteit van de codec bepalend is voor het eindresultaatL

Laten we nu onze winst uittellen :

als we alle letters (inclusief spaties) in de originele versie optellen komen we voor de vier zinnen tot :

 

 
   

de koe staat in de wei
de bruine koe staat in de wei
de bruine koe staat in de groene wei
de bruine koe staat in de groene wei te grazen

totaal :

22
29
36
46

133

hierboven dus het tekst equivalent voor een "uncompressed" file. Alle informatie wordt onbewerkt opgeslagen.


hieronder dezelfde tekst, gebruik makend van "intra-frame compression" (een video equivalent daarvan zou DV-pal of Apple ProRes zijn). Per zin proberen we zoveel mogelijk "overbodige" informatie weg te halen, evenwel zonder dat we het risico lopen dat de zin achteraf niet, of slecht gedecodeerd zou worden.
In video, elk frame wordt als zelfstandige "foto" gecompresseerd.

d_koe_stt_in_d_wei
d_bruin_koe_stt_in_d_wei
d_bruin_koe_stt_in_d_groen_wei
d_bruin_koe_stt_in_d_groen_wei_t_grzen

totaal :

18
24
30
38

110

En nogmaals dezelfde tekst, maar ditmaal gebruik makend van "inter-frame compression" (een video equivalent daarvan zou HDV , AVCHD of H.264 zijn). Idem zoals hierboven, maar bovendien beschrijven we per zin alleen die elementen die veranderd zijn t.o.v. de vorige zin.
In video : een reeks frames wordt opgedeeld in GOP's (Group Of Pictures). In die GOP heb je een i-frame : een frame dat volledig beschreven wordt, en P en B frames : frames waarin de veranderingn t.o.v. het i-fame beschreven worden. Een meer gedetaileerde en juistere uitleg hier.

d_koe_stt_in_d_wei
+bruin
+groen
+t_grzen

totaal :

18
6
6
8

38

een voorbeeld uit de echte wereld hier

 

 

Dit is ook het moment om een veel voorkomend misverstand uit de wereld te helpen.

Je hebt codecs (DV, MPEG2,MPEG4, AVC, AVCHD, Apple ProRes, H.264, ....) en je hebt containers (Flash Video, QuickTime, Real Media, Windows Media, ...). Een container kan verschillende, maar niet noodzakelijk alle codecs bevatten en bepaalde codecs kunnnen in verschillende containers verpakt worden. Het belangrijkste wat je hieruit moet onthouden is het volgende : converteren van één codec naar een andere betekent dat de video gedecodeerd moet worden, en terug gecodeerd met een andere codec. Bij het veranderen van container (bv. van .mov naar .mxf) blijft je videomateriaal onveranderd, maar wordt het gewoon in een andere verpakking gestoken.

 

meer, nog meer

TERUG