Context Adaptive Variable Length Coding

Context Adaptive Variable Length Coding (CAVLC, deutsch: Kontextadaptiver Code variabler Länge) beschreibt eine kontextabhängige Lauflängenkodierung und ist eine Art der verlustfreien Entropiekodierung. Ein Einsatzgebiet von CAVLC ist bei der Videokomprimierung MPEG-4/Part 10 (H.264/AVC). Der Entwurf des CAVLC wurde so ausgelegt, dass es möglichst viele Eigenheiten der MPEG-Quantisierung nutzen kann. Eigenheiten der MPEG-Quantisierung sind unter anderem:

  • Die Ausgangsmenge enthält hauptsächlich Nullen.
  • Die höchsten Werte stehen zu Beginn der Ausgangsmenge und werden zum Ende niedriger.
  • Die höchsten Werte in der Ausgangsmenge sind oft Sequenzen von 1 und −1.

Ein mit CAVLC komprimierter Datenstrom ist gegenüber einem mit dem rechenintensiveren Context-Adaptive Binary Arithmetic Coding (CABAC) komprimierten Datenstrom um etwa 10–20 % größer.

Literatur

  • Iain E. G. Richardson: H.264 and MPEG-4 Video Compression: Video Coding for Next-generation Multimedia. John Wiley & Sons, 2003, ISBN 0-470-84837-5 (englisch, theswissbay.ch [PDF; 4,6 MB; abgerufen am 20. April 2024]). 
  • Iain E. G. Richardson: H.264/AVC Context Adaptive Variable Length Coding (CAVLC) (englisch)
  • Jie Liang, Simon Fraser University: Course Materials for ENSC 424 Multimedia Communications Engineering – H.264 and CAVLC (englisch)
  • JVT Document JVT-C028, G. Bjøntegaard and K. Lillevold, “Context-Adaptive VLC Coding of Coefficients”, Fairfax, VA, Mai 2002 (.doc-Dokument; englisch)
  • Unterschiede in der Kodiereffizienz zwischen CABAC und CAVLC, dargestellt anhand eines Beispielbildes