No, non c'è magia, o come in tutte le magie... c'è il trucco: |
Si deve considerare il fatto che il compressore ha la possibilità di tenere in memoria più frame contemporaneamente e quindi di poter confrontare una frame con le precedenti o successive. |
Prendendo come esempio una frame di tipo P, l'immagine viene analizzata per blocchi
di 16×16 pixel, detti Macro-Blocchi, per ricercare, nell'area corrispondente
o limitrofa della precedente frame di tipo I o P, un blocco simile.
Trovatolo, viene salvato il valore dello scostamento e la differenza fra i pixel dei due
blocchi, che tenderanno ad avere valori bassi, o addirittura zero per le scene statiche,
rendendo molto efficiente la compressione DCT della frame pre-trattata in questo modo.
Se non si trova un blocco simile a distanza ragionevole, quel blocco verrà trattato come
per le frame di tipo I. Il decompressore copia dalla precedente frame I/P i blocchi simili di riferimento, e somma ad essi le differenze decompresse. |
Le frame di tipo B subiscono un trattamento analogo, con l'aggiunta del fatto che ogni blocco può usare come riferimento la più conveniente fra le frame I/P precedente o successiva. |