Delta Encoding
Delta-Encoding ersetzt jedes Element einer Sequenz durch seine Differenz zum vorherigen Element und macht langsam veränderliche oder monoton steigende Sequenzen kompakter.
Zweck
Es komprimiert Ganzzahlsequenzen mit zeitlicher oder räumlicher Lokalität, etwa Zeitstempel, inkrementierende IDs und Audio-PCM-Samples.
Mechanismus
Das erste Element wird unverändert gespeichert und jedes folgende als x[i] - x[i-1]; beim Dekodieren werden die Differenzen akkumuliert, um die Originalsequenz zurückzugewinnen. Oft wird es mit Varint/ZigZag verkettet, um die Deltas weiter zu komprimieren.
Anwendungsfälle
- Kompression von Zeitstempelsequenzen
- Dokument-ID-Lücken in invertierten Indizes
- Differenzielles PCM-Audio