Degradación Elegante: Estrategia WebM/MP4 para Core Web Vitals
Degradación Elegante: Cómo ganar la guerra de los formatos de vídeo
Meter 16 minutos y medio de vídeo HD en apenas 25 MB parece magia negra, pero en realidad es pura arquitectura Frontend. Optimizar el peso de los assets multimedia es uno de los mayores desafíos en la web moderna, especialmente cuando intentamos contentar tanto a las auditorías de rendimiento de Google (Lighthouse) como al restrictivo ecosistema de Apple.
El fuego cruzado: Google vs Apple
Durante años, el desarrollo web ha estado atrapado en medio de una guerra de formatos:
Por un lado, tenemos el WebM (impulsado por Google): una auténtica bestia de la compresión capaz de reducir el peso de un vídeo casi a la mitad manteniendo una calidad impoluta. Su kryptonita es que, históricamente, los dispositivos de Apple y Safari se han negado a reproducirlo.
Por otro lado, tenemos el MP4 (H.264/H.265): el estándar rey y universal. Funciona en el 100% de los dispositivos del planeta, y el hardware de Apple lo reproduce con los ojos cerrados. Su problema es que, al ser un algoritmo propietario y más antiguo, genera archivos notablemente más pesados para la web.
¿La solución? No elegir. Servir ambos.
El Patrón Fallback (Degradación Elegante)
En lugar de sacrificar a la mitad de nuestros usuarios o destrozar nuestro ancho de banda, la web moderna nos permite aplicar una estrategia llamada Degradación Elegante.
Aprovechando el inyectado en cascada de la etiqueta <video> de HTML5, podemos ofrecer primero el formato ultraligero (WebM) a los navegadores modernos que lo entienden, y mantener el formato universal (MP4) oculto como una red de seguridad infalible para los dispositivos de Apple o navegadores legacy.
El resultado es un sistema que ahorra decenas de megabytes de transferencia automática a los usuarios de Android y Chrome, mientras garantiza que ningún usuario de iPhone se encuentre con una pantalla en negro.
¿Quieres ver el código y el blindaje LCP?
Tener el formato correcto es solo la mitad de la batalla. Un vídeo insertado incorrectamente puede destruir tu puntuación de Largest Contentful Paint (LCP) o causar Cumulative Layout Shift (CLS).
He documentado la implementación exacta del código HTML5, junto con las directivas CSS para erradicar el CLS y la configuración de preload para garantizar un Lighthouse 100/100, en el nuevo cuadernillo técnico de la biblioteca.
👉 Estrategia implementada y validada exitosamente en el proyecto base de merci. Leer el cuadernillo técnico de arquitectura