Colección de bibliotecas C y herramientas de línea de comandos para decodificar, codificar, convertir, filtrar y transmitir audio, video y subtítulos.
leandromoreira/digital_video_introduction
Introducción práctica y accesible al video digital para principiantes: explica el color, los tipos de fotogramas, codecs como H.264, H.265, VP9 y AV1, y el streaming con ejemplos de FFmpeg.
- Estrellas
- 16,379
- Forks
- 1,380
- Issues abiertos
- 19
- Último commit
- ayer
¿Qué es?
Esta guía práctica y accesible explica cómo funciona el video digital. Está dirigida a desarrolladores de software, pero está escrita para que cualquiera pueda seguirla. Recorre términos básicos como píxeles, resolución, relación de aspecto y tasa de bits, y luego explica cómo se comprime el video eliminando redundancia en el color, el tiempo y el espacio.
La guía aborda el submuestreo de croma, los fotogramas I, P y B, la estimación de movimiento, la predicción intra, las transformadas, la cuantización y la codificación entrópica. Muestra cómo funciona un codec genérico y en qué se diferencian H.264, H.265, VP9 y AV1. Una sección posterior trata el streaming en línea, incluidas la descarga progresiva, la transmisión adaptativa y la protección de contenido.
Muchas secciones incluyen ejemplos ejecutables. Se usan comandos de FFmpeg y mediainfo en contenedores, además de notebooks de Jupyter que visualizan matrices de imágenes, coeficientes DCT y vectores de movimiento. El proyecto está traducido a varios idiomas.
Funciones clave
- 01Explica conceptos fundamentales como los modelos de color, YCbCr, el submuestreo de croma y la tasa de bits.
- 02Describe los tipos de fotogramas I, P y B, y cómo la predicción inter e intra elimina redundancia.
- 03Recorre las principales etapas de un codec genérico, desde la partición hasta el formato del bitstream.
- 04Compara H.264, H.265, VP9 y AV1, y explica su historia.
- 05Incluye ejemplos prácticos con FFmpeg y Jupyter para inspeccionar archivos de video.
Casos de uso
- Facilitar la incorporación de ingenieros que trabajan en reproductores de video, streaming o pipelines multimedia.
- Aprender cómo los ajustes del codec, como el intervalo entre keyframes y los B-frames, afectan al tamaño del archivo.
- Impartir un taller o curso sobre los fundamentos de la compresión de video.
Inicio rápido
- 1
Clona el repositorio
git clone https://github.com/leandromoreira/digital_video_introduction.git - 2
Entra en la carpeta del proyecto
cd digital_video_introduction - 3
Ejecuta el script de configuración (requiere Docker)
./setup.sh
Antes de usarlo
- Las secciones prácticas requieren tener Docker instalado.
- Es una guía de aprendizaje, no una biblioteca de software ni una herramienta.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es digital_video_introduction?
- Introducción práctica y accesible al video digital para principiantes: explica el color, los tipos de fotogramas, codecs como H.264, H.265, VP9 y AV1, y el streaming con ejemplos de FFmpeg. Esta guía práctica y accesible explica cómo funciona el video digital. Está dirigida a desarrolladores de software, pero está escrita para que cualquiera pueda seguirla. Recorre términos básicos como píxeles, resolución, relación de aspecto y tasa de bits, y luego explica cómo se comprime el video eliminando redundancia en el color, el tiempo y el espacio.
- ¿digital_video_introduction es gratuito? ¿Qué licencia tiene?
- digital_video_introduction es open source bajo la licencia BSD-3-Clause. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿digital_video_introduction sigue mantenido?
- Mantenimiento activo. El último commit de digital_video_introduction fue el 5 nov 2026.
- ¿Para qué puedo usar digital_video_introduction?
- Facilitar la incorporación de ingenieros que trabajan en reproductores de video, streaming o pipelines multimedia. Aprender cómo los ajustes del codec, como el intervalo entre keyframes y los B-frames, afectan al tamaño del archivo. Impartir un taller o curso sobre los fundamentos de la compresión de video.
- ¿Cómo se instala digital_video_introduction?
- Clona el repositorio: git clone https://github.com/leandromoreira/digital_video_introduction.git Entra en la carpeta del proyecto: cd digital_video_introduction Ejecuta el script de configuración (requiere Docker): ./setup.sh
- ¿Dónde consigo digital_video_introduction?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/leandromoreira/digital_video_introduction
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Transcodificador de video de código abierto para Linux, Mac y Windows que convierte videos existentes a MP4, MKV o WebM para teléfonos, televisores, consolas y navegadores.
Interfaz gráfica multiplataforma para FFmpeg que permite cortar, recortar y remultiplexar archivos de video y audio sin volver a codificarlos.
Software de videovigilancia CCTV de código abierto para Linux que captura, analiza, graba y monitoriza cámaras IP, USB y analógicas.
Brotli es un formato de compresión sin pérdida de propósito general y una biblioteca de referencia, especificados en RFC 7932, con ratios de compresión comparables a los de los mejores métodos generales.
Streaming de escritorio remoto web de baja latencia en Rust, que envía H.264 por WebSocket a un navegador que lo decodifica con WebCodecs.