deze en volgende pagina als PDF

 

 
 

Videocompressie uitgelegd

 
 

- Waarom worden (video)files gecompresseerd

- Lossless / lossy compressie

- inter/intra compressie

- containers vs. codecs

 

 

 



 
 

Waarom worden (video)files gecompresseerd

Om een lang en technisch verhaal kort te houden : omdat niet gecompresseerde videofiles te groot worden. Dat geeft problemen bij opslag en (data)transport.
Vergelijk het met de ochtendfiles : vijftig mensen moeten van Gent naar Brussel. Elk neemt zijn eigen wagen, en staat uiteraard in de file, en er moet parkeerruimte gezocht worden voor vijftig auto's.
Stel dat we die mensenstroom "compresseren"; we zetten in elke auto vijf mensen, resultaat : 10 auto's op de baan en geen 50, en slechts 10 i.p.v. 50 parkeerplaatsen te zoeken.

Net zoals in het autovoorbeeld het comfort wordt opgegeven ten voordele van de snelheid, zal bij video compressie de kwaliteit omgekeerd evenredig zijn aan de compressie, m.a.w. hoe hoger de compressie, hoe lager de kwaliteit als we tenminste geen rekening houden met de kwaliteit en het doel van de compressor, zo kan je bv. Apple ProRes niet vergelijken met H.264, omdat beide systemen een totaal ander principe hanteren, en ook voor totaal verschillende doelen gebruikt worden).

Hieronder een rekenvoorbeeldje

 

 
 
formaat : 1920 x 1080 = 2073600 Pixels
per RGB kleur x 3 = 6220800
bits per kleur x 8 = 49766400 bits
/1024 = 48600 Kb
/1024 = 47,4 Mb
x 25 fr/sec = 1186 Mb/sec
x 60 sec/min = 71160 Mb/min
69,5 Gb/min

Om één minuut beeldmateriaal op te slaan zou je dus een kleine 9 gigabyte opslagruimte moeten hebben.
Vergelijk dat even met de reële waarden van diverse gecompresseerde formaten hier

 
 

 

Lossless / lossy compressie

De meeste mensen zullen wel vertrouwd zijn met RAR en/of ZIP files. Dat zijn twee voorbeelden van lossless compressie. M;a.w. de data wordt gecompresseerd zonder dat de kwaliteiit gecompromiteerd wordt. De originele file en de gezipte/unzipte file zijn bit voor bit identiek. O.a. omdat deze operatie zeer CPU-intensief en dus relatief traag is, wordt dze vorm van compressie nagenoeg niet toegepast voor video.

 

Foto, uncompressed : 376 KB Dezelfde foto, gezipt : 276 KB, vervolgens terug ontzipped Weer dezelfde foto, gecompresserrd tot JPEG in hoge kwaliteit: 172 KB Weer dezelfde foto, gecompresserrd tot JPEG in lage kwaliteit: 120 KB
       
       
       

 

inter/intra compressie

De twee laatste foto's (JPEG compressie) zijn voorbeelden van intra-frame compressie, alle video codecs maken daar in een of andere vorm gebruik van. Om beter te begrijpen hoe dat soort compressie in zij werk gaat gebruik ik even een "taal" voorbeeld.

 

 

probeer de zinnen hieronder te reconstrueren, maak daarbij gebruik van een aantal regels die van tevoren zijn vastgelegd, namelijk

 
 
    1. de taal is Nederlands
    2. de grammatica is Nederlands
    3. de woorden worden van mekaar gescheiden door een underscore
    4. elke lijn is een nieuwe zin
    5. als een lijn begint met + wordt de vorige lijn herhaald en de woorden na + toegevoegd (met inachtname van regels 1 en 2)
 
 




 
 

 

d_koe_stt_in_d_wei
+bruine
+groene
+t_grzen
     
           
  Deze regels kunnen we zien als de codec (= samentrekking van CODing en DECoding): een set van afspraken die gemaakt zijn i.v.m. de gebruikte manier van coderen, zodat we diezelfde regels kunnen toepassen bij het decoderen. Net zoals je hier een aantal andere regels kan gebruiken (bv. de taal is engels, we laten alle klinkers weg, spaties worden weggelaten, ...) zullen we ook in video-compressie verschillende codecs tegenkomen (MPEG-1, MPEG-2, H.264, DivX, DV-pal, ....) waarbij de ene codec al efficiënter zal zijn dan de andere.
Het mag duidelijk zijn dat we niet kunnen decoderen als we niet over de juiste codec beschikken. Stel dat we ons niet bewust zijn van regel één : " de taal is nederlands", dan zal het nagenoeg onmogelijk zijn om bovenstaande informatie te interpreteren.
     
         
  voor de oplossing en de verdere uitleg klik hier