En esta página

Creación de Qt Multimedia a partir de fuentes

En esta página se describe el proceso de configuración y compilación de FFmpeg a partir de fuentes. Qt Multimedia. Esta descripción asume la familiaridad con Building Qt Sources que especifica los requisitos de compilación para su plataforma, así como una visión general de Qt Configure Options. Para consideraciones específicas de la plataforma relacionadas con el módulo Qt Multimedia, consulte Notas sobre la plataforma más abajo.

Construir desde el código fuente

La compilación de Qt Multimedia con todas sus funciones depende de las cabeceras y librerías FFmpeg en la mayoría de las plataformas. Es posible compilar Qt Multimedia sin el backend multimedia FFmpeg Qt Multimedia, pero esto sólo se recomienda cuando se compila para plataformas en las que el backend FFmpeg no está soportado.

Las bibliotecas de desarrollo de FFmpeg necesarias para compilar Qt Multimedia pueden compilarse a partir de las fuentes o descargarse como paquetes binarios. Qt Multimedia puede utilizar el enlace estático o el enlace dinámico con las bibliotecas de FFmpeg. Recomendamos utilizar la misma versión principal de FFmpeg que aparece en las notas sobre la plataforma de destino y el backend. Para obtener información sobre cómo crear las bibliotecas de desarrollo de FFmpeg, consulta Creación de FFmpeg a partir del código fuente.

Para compilar Qt Multimedia con soporte FFmpeg, especifique la opción -ffmpeg-dir en la línea de comandos de configuración cuando compile Qt.

qt-source/configure -ffmpeg-dir <FFMPEG_DIR>

En este caso, <FFMPEG_DIR> es el directorio que contiene los directorios include, lib y bin de FFmpeg. Para compilar Qt Multimedia sin FFmpeg, omite la variable <FFMPEG_DIR> y especifica la opción configure -no-feature-ffmpeg.

Si prefieres no compilar todos los submódulos de Qt, puedes reducir los tiempos de configuración y compilación utilizando la opción -submodules configure. Esto configurará una construcción que sólo construye Qt Multimedia y sus dependencias.

qt-source/configure -submodules qtmultimedia -ffmpeg-dir <FFMPEG_DIR>

Si configuras Qt Multimedia contra FFmpeg construido con librerías compartidas (enlace dinámico), las librerías compartidas FFmpeg deben estar en la ruta de búsqueda del cargador de módulos para ejecutar pruebas o usar ejemplos.

Nota: Qt Multimedia requiere las bibliotecas FFmpeg avformat, avcodec, swresample, swscale y avutil durante el tiempo de ejecución para poder utilizar el backend multimedia FFmpeg. Si una o varias de estas bibliotecas dinámicas no se encuentran durante el inicio de la aplicación, el backend multimedia FFmpeg no se cargará y el sistema intentará cargar el backend nativo. Qt Multimedia no admite tantas funciones en los backends nativos.

Si aún no tienes estas librerías en path, especifica la opción de configuración -ffmpeg-deploy. Con esta opción activada, los binarios FFmpeg necesarios se copiarán en el directorio de instalación de Qt durante los pasos de compilación e instalación:

qt-source/configure -submodules qtmultimedia -ffmpeg-dir <FFMPEG_DIR> -ffmpeg-deploy

Después de configurar Qt Multimedia, revisa cuidadosamente el resumen de configuración (que se encuentra en el archivo config.summary). Puedes verificar que FFmpeg se encuentra en la sección "Plugin". A continuación, sigue los pasos habituales de compilación e instalación descritos en Compilación de fuentes Qt.

Notas sobre la plataforma

iOS

Linux

  • Al configurar Qt Multimedia con FFmpeg activado, se requiere el paquete de desarrollo pipewire o pulseaudio. Sin uno de estos paquetes, FFmpeg no será reconocido.
  • Si utilizas una versión de FFmpeg compatible con VAAPI, te recomendamos que crees Qt Multimedia también compatible con VAAPI para hacer posible la conversión de texturas por hardware. Para configurar Qt Multimedia con soporte VAAPI, las librerías de desarrollo VAAPI deben estar instaladas en tu sistema. Revisa el archivo config.summary para comprobar que la compatibilidad con VAAPI está activada en la sección "Hardware acceleration and features".
  • Al configurar Qt Multimedia con el backend GStreamer, GStreamer v1.20 es el requisito mínimo. Sin embargo, recomendamos utilizar la última versión estable de GStreamer si es posible.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.