Un mapa de profundidad se serializa como un conjunto de propiedades XMP. Como parte del proceso de serialización, el mapa de profundidad se convierte primero en un formato de imagen tradicional. La canalización de codificación contiene tres pasos (consulta la Figura 2):
- Convierte del formato de entrada (p.ej., valores de coma flotante o int32) a un formato de imagen en escala de grises de números enteros, p.ej., bytes (8 bits) o palabras (16 bits).
- Comprimir con un códec de imagen estándar, p. ej., JPEG o PNG
- Se serializa como una propiedad XMP de cadena base64.

La canalización puede ser sin pérdida o con pérdida, según la cantidad de bits del mapa de profundidad original y la cantidad de bits que se usan para almacenarlo, p.ej., 8 bits para un códec JPEG y 8 o 16 bits para un códec PNG.
Actualmente, se admiten dos formatos diferentes: RangeLinear y RangeInverse. RangeInverse es el formato recomendado si el mapa de profundidad perderá precisión cuando se codifique, p.ej., cuando se convierta de flotante a 8 bits. Asigna más bits a los valores de profundidad cercanos y menos bits a los valores lejanos, de manera similar a cómo funciona el búfer Z en las tarjetas de GPU.
Si el mapa de profundidad tiene un mapa de confianza adjunto, este también se convierte a un formato de imagen tradicional con una canalización similar a la que se usa para la profundidad. El mapa de confianza siempre se codifica con el formato RangeLinear, y se supone que el rango de confianza es [0, 1].
RangeLinear
Sea d la profundidad de un píxel, y near y far los valores de profundidad mínimos y máximos considerados. Primero, el valor de profundidad se normaliza en el rango [0, 1] de la siguiente manera:
RangeInverse
Sea d la profundidad de un píxel, y near y far los valores de profundidad mínimos y máximos considerados. Primero, el valor de profundidad se normaliza en el rango [0, 1] de la siguiente manera: