Componentes de código abierto y código fuente correspondiente
CineX basa su capacidad de procesar medios en software de código abierto. Esta página enumera los componentes que integramos, la licencia aplicable a cada uno y cómo obtener su código fuente.
Componentes de código abierto integrados
CineX incorpora, en forma de frameworks dinámicos, los 8 componentes siguientes (x264 y dav1d quedan enlazados de forma estática en libavcodec). Las versiones salen del propio producto: FFmpeg en sí es n6.0; 6.0.2 es el número del paquete de CocoaPods, no la versión de FFmpeg.
| Componente | Versión | Licencia |
|---|---|---|
| ffmpegkit | 6.0 | GPL-3.0 |
| libavcodec | FFmpeg n6.0 | GPL-3.0 |
| libavformat | FFmpeg n6.0 | GPL-3.0 |
| libavfilter | FFmpeg n6.0 | GPL-3.0 |
| libavutil | FFmpeg n6.0 | GPL-3.0 |
| libavdevice | FFmpeg n6.0 | GPL-3.0 |
| libswresample | FFmpeg n6.0 | GPL-3.0 |
| libswscale | FFmpeg n6.0 | GPL-3.0 |
| x264 | ffmpeg-kit 6.0.LTS integrado | GPL-2.0-or-later |
| dav1d | ffmpeg-kit 6.0.LTS integrado | BSD-2-Clause |
Qué aporta cada componente
ffmpegkit(GPL-3.0) — la capa de envoltura de FFmpeg, que ofrece una interfaz de llamada por comandos.
libavcodec(GPL-3.0) — la biblioteca de códecs (x264 y dav1d quedan enlazados de forma estática en esta).
libavformat(GPL-3.0) — lectura, escritura y parseo de formatos de contenedor.
libavfilter(GPL-3.0) — procesamiento del grafo de filtros.
libavutil(GPL-3.0) — funciones comunes de utilidad.
libavdevice(GPL-3.0) — entrada y salida del dispositivo.
libswresample(GPL-3.0) — remuestreo de audio y conversión de la disposición de canales.
libswscale(GPL-3.0) — conversión del espacio de color y del formato de píxeles del video.
x264(GPL-2.0-or-later) — codificador de software H.264; es lo que diferencia la compilación full-gpl de la LGPL. Cada uno de sus archivos fuente dice “either version 2 … or (at your option) any later version”, así que puede distribuirse junto a FFmpeg bajo GPL-3.0.
dav1d(BSD-2-Clause) — decodificador AV1. Licencia permisiva que no cambia la condición de licencia del conjunto; como va enlazado de forma estática, su fuente es parte de la fuente correspondiente.
Cómo obtener la fuente correspondiente (GPLv3, §6)
Los 8 frameworks anteriores se licencian bajo GPL-3.0 (x264 bajo GPL-2.0 o posterior, dav1d bajo BSD-2-Clause; los tres pueden distribuirse combinados). Según el artículo 6 de GPL-3.0, al distribuir en forma binaria debe poder obtenerse el código fuente correspondiente. Puedes obtenerlo por estas vías:
Paquete de la fuente correspondiente (recomendado, todo en uno)
https://getcinex.app/cinex-corresponding-source.tar.gz
Incluye la fuente completa de ffmpeg-kit 6.0.LTS, FFmpeg n6.0, x264 y dav1d, además de las recetas y listas de compilación de ambas plataformas (tar.gz, 18,6 MiB).
ffmpeg-kit (el envoltorio y la compilación usados realmente en este proyecto)
https://github.com/arthenica/ffmpeg-kit
El proyecto quedó archivado (el autor dejó de mantenerlo), pero el repositorio sigue público y se puede descargar toda la fuente y los scripts de compilación. ⚠️ La oferta de fuente del upstream solo cubre los binarios que el propio autor publica; las piezas integradas en CineX las compilamos nosotros, así que la obligación de la fuente correspondiente es nuestra: la referencia es la descarga de arriba.
FFmpeg en sí
https://ffmpeg.org/download.html
Sitio oficial de la fuente del upstream; permite bajar la fuente de n6.0 por número de versión.
x264
https://www.videolan.org/developers/x264.html
Sitio oficial de fuente de VideoLAN.
dav1d
https://code.videolan.org/videolan/dav1d
Repositorio oficial de VideoLAN.
Si necesitas que, con la versión integrada en CineX, la configuración de compilación o el paquete de fuente guarde total correspondencia, escribe a support@getcinex.app y te lo facilitaremos en un plazo razonable.
Texto completo de la licencia
El texto completo de la licencia se reparte junto con la app: cada framework integrado trae en su bundle su LICENSE (libavcodec incluye también LICENSE.X264 y LICENSE.DAV1D). La página «Cuenta → Componentes de código abierto y fuente correspondiente» dentro de la app lista estos textos tal cual: los lee en tiempo de ejecución del framework real de tu dispositivo, así que la página y los archivos del paquete no pueden diferir.
Notas relacionadas
Las restricciones de ingeniería inversa de los Términos de Servicio no se aplican a los componentes anteriores autorizados por una licencia de código abierto; para esos componentes, prevalecen las condiciones de la licencia de código abierto aplicable. Consulta Términos de Servicio, sección «Alcance de la licencia».
Cómo tratamos tus datos: mira Política de Privacidad。