Documentación de ffplay
1 Sinopsis
ffplay [options] [input_url]
2 Descripción
FFplay es un reproductor multimedia muy simple y portátil que utiliza las bibliotecas de FFmpeg y la biblioteca SDL. Se usa sobre todo como banco de pruebas para las distintas APIs de FFmpeg.
3 Opciones
Todas las opciones numéricas, salvo que se indique lo contrario, aceptan como entrada una cadena que representa un número, que puede ir seguida de uno de los prefijos de unidad del SI, por ejemplo: ’K’, ’M’ o ’G’.
Si se añade ’i’ al prefijo de unidad del SI, el prefijo completo se interpreta como un prefijo de unidad para múltiplos binarios, basados en potencias de 1024 en lugar de potencias de 1000. Añadir ’B’ al prefijo de unidad del SI multiplica el valor por 8. Esto permite usar, por ejemplo, ’KB’, ’MiB’, ’G’ y ’B’ como sufijos numéricos.
Las opciones que no toman argumentos son opciones booleanas y ponen el valor correspondiente en true. Se pueden poner en false anteponiendo "no" al nombre de la opción. Por ejemplo, usar "-nofoo" pondrá en false la opción booleana llamada "foo".
Las opciones que toman argumentos admiten una sintaxis especial en la que el argumento indicado en la línea de comandos se interpreta como la ruta al archivo del que se carga el valor real del argumento. Para usar esta funcionalidad, añada una barra ’/’ justo antes del nombre de la opción (después del guión inicial). Por ejemplo,
ffmpeg -i INPUT -/filter:v filter.script OUTPUT
cargará la descripción de un filtergraph desde el archivo llamado filter.script.
3.1 Especificadores de flujo
Algunas opciones se aplican por flujo, por ejemplo la tasa de bits o el codec. Los especificadores de flujo se usan para indicar con precisión a qué flujo o flujos pertenece una opción determinada.
Un especificador de flujo es una cadena que normalmente se añade al nombre de la opción separada de este por dos puntos. Por ejemplo, -codec:a:1 ac3 contiene el especificador de flujo a:1, que coincide con el segundo flujo de audio. Por lo tanto, seleccionaría el codec ac3 para el segundo flujo de audio.
Un especificador de flujo puede coincidir con varios flujos, de modo que la opción se aplica a todos ellos. Por ejemplo, el especificador de flujo en -b:a 128k coincide con todos los flujos de audio.
Un especificador de flujo vacío coincide con todos los flujos. Por ejemplo, -codec copy o -codec: copy copiaría todos los flujos sin recodificar.
Las formas posibles de los especificadores de flujo son:
stream_index
Coincide con el flujo de este índice. Por ejemplo, -threads:1 4 fijaría en 4 el número de hilos del segundo flujo. Si stream_index se usa como especificador de flujo adicional (véase más abajo), selecciona el flujo número stream_index de entre los flujos coincidentes. La numeración de los flujos se basa en el orden en que libavformat los detecta, salvo cuando también se indica un especificador de grupo de flujos o un ID de programa, en cuyo caso se basa en el orden de los flujos dentro del grupo o del programa.
stream_type[:additional_stream_specifier]
stream_type es uno de los siguientes: ’v’ o ’V’ para vídeo, ’a’ para audio, ’s’ para subtítulos, ’d’ para datos y ’t’ para adjuntos. ’v’ coincide con todos los flujos de vídeo; ’V’ solo coincide con los flujos de vídeo que no son imágenes adjuntas, miniaturas de vídeo o carátulas. Si se usa additional_stream_specifier, coincide con los flujos que tienen este tipo y además coinciden con additional_stream_specifier. En caso contrario, coincide con todos los flujos del tipo indicado.
g:group_specifier[:additional_stream_specifier]
Coincide con los flujos que están en el grupo con el especificador group_specifier. Si se usa additional_stream_specifier, coincide con los flujos que forman parte del grupo y además coinciden con additional_stream_specifier. group_specifier puede ser uno de los siguientes:
group_index
Coincide con el flujo de este índice de grupo.
#group_id o i:group_id
Coincide con el flujo de este id de grupo.
p:program_id[:additional_stream_specifier]
Coincide con los flujos que están en el programa con id program_id. Si se usa additional_stream_specifier, coincide con los flujos que forman parte del programa y además coinciden con additional_stream_specifier.
#stream_id o i:stream_id
Coincide con el flujo por su id de flujo (por ejemplo, el PID en un container MPEG-TS).
m:key[:value]
Coincide con los flujos cuya etiqueta de metadatos key tiene el valor indicado. Si no se da value, coincide con los flujos que contienen la etiqueta dada con cualquier valor. El carácter de dos puntos ’:’ en key o en value debe escaparse con una barra invertida.
disp:dispositions[:additional_stream_specifier]
Coincide con los flujos que tienen la disposición o disposiciones indicadas. dispositions es una lista de una o más disposiciones (tal como las muestra la opción -dispositions) unidas con ’+’.
u
Coincide con los flujos que tienen una configuración utilizable: el codec debe estar definido y debe estar presente la información esencial, como las dimensiones del vídeo o la frecuencia de muestreo del audio.
Tenga en cuenta que en ffmpeg la coincidencia por metadatos solo funciona correctamente para los archivos de entrada.
3.2 Opciones genéricas
Estas opciones se comparten entre todas las herramientas ff*.
-L, -license
Muestra la licencia.
-h, -?, -help, --help [arg]
Muestra la ayuda. Se puede indicar un parámetro opcional para mostrar la ayuda de un elemento concreto. Si no se especifica ningún argumento, solo se muestran las opciones básicas (no avanzadas) de la herramienta.
Los valores posibles de arg son:
long
Muestra las opciones avanzadas de la herramienta además de las opciones básicas.
full
Muestra la lista completa de opciones, incluidas las opciones compartidas y privadas de encoders, decoders, demuxers, muxers, filtros, etc.
decoder=decoder_name
Muestra información detallada sobre el decoder llamado decoder_name. Use la opción -decoders para obtener la lista de todos los decoders.
encoder=encoder_name
Muestra información detallada sobre el encoder llamado encoder_name. Use la opción -encoders para obtener la lista de todos los encoders.
demuxer=demuxer_name
Muestra información detallada sobre el demuxer llamado demuxer_name. Use la opción -formats para obtener la lista de todos los demuxers y muxers.
muxer=muxer_name
Muestra información detallada sobre el muxer llamado muxer_name. Use la opción -formats para obtener la lista de todos los muxers y demuxers.
filter=filter_name
Muestra información detallada sobre el filtro llamado filter_name. Use la opción -filters para obtener la lista de todos los filtros.
bsf=bitstream_filter_name
Muestra información detallada sobre el filtro de bitstream llamado bitstream_filter_name. Use la opción -bsfs para obtener la lista de todos los filtros de bitstream.
protocol=protocol_name
Muestra información detallada sobre el protocolo llamado protocol_name. Use la opción -protocols para obtener la lista de todos los protocolos.
-version
Muestra la versión.
-buildconf
Muestra la configuración de compilación, una opción por línea.
-formats
Muestra los formatos disponibles (incluidos los dispositivos).
-demuxers
Muestra los demuxers disponibles.
-muxers
Muestra los muxers disponibles.
-devices
Muestra los dispositivos disponibles.
-codecs
Muestra todos los codecs que conoce libavcodec.
Tenga en cuenta que, a lo largo de esta documentación, el término ’codec’ se usa como forma abreviada de lo que, más correctamente, se denomina formato de bitstream multimedia.
-decoders
Muestra los decoders disponibles.
-encoders
Muestra todos los encoders disponibles.
-bsfs
Muestra los filtros de bitstream disponibles.
-protocols
Muestra los protocolos disponibles.
-filters
Muestra los filtros de libavfilter disponibles.
-pix_fmts
Muestra los pixel format disponibles.
-sample_fmts
Muestra los sample format disponibles.
-layouts
Muestra los nombres de canal y las disposiciones de canales estándar.
-dispositions
Muestra las disposiciones de flujo.
-colors
Muestra los nombres de color reconocidos.
-sources device[,opt1=val1[,opt2=val2]...]
Muestra las fuentes detectadas automáticamente del dispositivo de entrada. Algunos dispositivos pueden ofrecer nombres de fuente dependientes del sistema que no se pueden detectar automáticamente. No se puede asumir que la lista devuelta sea siempre completa.
ffmpeg -sources pulse,server=192.168.0.4
-sinks device[,opt1=val1[,opt2=val2]...]
Muestra los destinos detectados automáticamente del dispositivo de salida. Algunos dispositivos pueden ofrecer nombres de destino dependientes del sistema que no se pueden detectar automáticamente. No se puede asumir que la lista devuelta sea siempre completa.
ffmpeg -sinks pulse,server=192.168.0.4
-loglevel [flags+]loglevel | -v [flags+]loglevel
Establece el nivel de registro y los flags que usa la biblioteca.
El prefijo opcional flags puede constar de los siguientes valores:
‘repeat’
Indica que la salida de registro repetida no debe condensarse en la primera línea, por lo que se omitirá la línea "Last message repeated n times".
‘level’
Indica que la salida de registro debe añadir un prefijo [level] a cada línea de mensaje. Puede usarse como alternativa al coloreado del registro, por ejemplo al volcar el registro a un archivo.
‘time’
Indica que las líneas de registro deben llevar como prefijo información de la hora.
‘datetime’
Indica que las líneas de registro deben llevar como prefijo información de fecha y hora.
Los flags también se pueden usar solos añadiendo un prefijo ’+’/’-’ para activar/desactivar un único flag sin afectar a los demás ni cambiar loglevel. Al establecer flags y loglevel a la vez, se espera un separador ’+’ entre el último valor de flags y loglevel.
loglevel es una cadena o un número con uno de los siguientes valores:
‘quiet, -8’
No muestra nada en absoluto; permanece en silencio.
‘panic, 0’
Muestra solo los errores fatales que podrían hacer que el proceso se bloquee, como un fallo de aserción. Actualmente no se usa para nada.
‘fatal, 8’
Muestra solo los errores fatales. Son errores tras los cuales el proceso no puede continuar en absoluto.
‘error, 16’
Muestra todos los errores, incluidos aquellos de los que se puede recuperar.
‘warning, 24’
Muestra todas las advertencias y errores. Se mostrará cualquier mensaje relacionado con eventos posiblemente incorrectos o inesperados.
‘info, 32’
Muestra mensajes informativos durante el procesamiento. Esto se añade a las advertencias y los errores. Es el valor predeterminado.
‘verbose, 40’
Igual que info, pero más detallado.
‘debug, 48’
Muestra todo, incluida la información de depuración.
‘trace, 56’
Por ejemplo, para habilitar la salida de registro repetida, añadir el prefijo level y establecer loglevel en verbose:
ffmpeg -loglevel repeat+level+verbose -i input output
Otro ejemplo que habilita la salida de registro repetida sin afectar al estado actual del flag de prefijo level ni de loglevel:
ffmpeg [...] -loglevel +repeat
De forma predeterminada, el programa registra en stderr. Si el terminal admite color, se usan colores para marcar errores y advertencias. El coloreado del registro se puede deshabilitar con la variable de entorno AV_LOG_FORCE_NOCOLOR, o forzar con la variable de entorno AV_LOG_FORCE_COLOR.
-report
Vuelca la línea de comandos completa y la salida de registro a un archivo llamado program-YYYYMMDD-HHMMSS.log en el directorio actual. Este archivo puede ser útil para informes de errores. También implica -loglevel debug.
Establecer la variable de entorno FFREPORT con cualquier valor produce el mismo efecto. Si el valor es una secuencia de pares key=value separados por ’:’, estas opciones afectarán al informe; los valores de las opciones deben escaparse si contienen caracteres especiales o el delimitador de opciones ’:’ (véase la sección “Quoting and escaping” del manual ffmpeg-utils).
Se reconocen las siguientes opciones:
file
establece el nombre de archivo que se usará para el informe; %p se expande al nombre del programa, %t se expande a una marca de tiempo, %% se expande a un simple %
level
establece el nivel de detalle del registro con un valor numérico (véase -loglevel).
Por ejemplo, para escribir un informe en un archivo llamado ffreport.log con un nivel de registro 32 (alias del nivel de registro info):
FFREPORT=file=ffreport.log:level=32 ffmpeg -i input output
Los errores al analizar la variable de entorno no son fatales y no aparecerán en el informe.
-hide_banner
Suprime la impresión del banner.
Normalmente, todas las herramientas de FFmpeg muestran un aviso de copyright, las opciones de compilación y las versiones de las bibliotecas. Esta opción se puede usar para suprimir la impresión de esta información.
-cpuflags flags (global)
Permite establecer y borrar flags de CPU. Esta opción está pensada para pruebas. No la use a menos que sepa exactamente lo que hace.
ffmpeg -cpuflags -sse+mmx ...
ffmpeg -cpuflags mmx ...
ffmpeg -cpuflags 0 ...
Los flags posibles de esta opción son:
‘x86’
‘mmx’ ‘mmxext’ ‘sse’ ‘sse2’ ‘sse2slow’ ‘sse3’ ‘sse3slow’ ‘ssse3’ ‘atom’ ‘sse4.1’ ‘sse4.2’ ‘avx’ ‘avx2’ ‘xop’ ‘fma3’ ‘fma4’ ‘3dnow’ ‘3dnowext’ ‘bmi1’ ‘bmi2’ ‘cmov’ ‘ARM’
‘armv5te’ ‘armv6’ ‘armv6t2’ ‘vfp’ ‘vfpv3’ ‘neon’ ‘setend’ ‘AArch64’
‘armv8’ ‘vfp’ ‘neon’ ‘PowerPC’
‘altivec’ ‘Procesadores específicos’
‘pentium2’ ‘pentium3’ ‘pentium4’ ‘k6’ ‘k62’ ‘athlon’ ‘athlonxp’ ‘k8’ -cpucount count (global)
Sobrescribe la detección del número de CPU. Esta opción está pensada para pruebas. No la use a menos que sepa exactamente lo que hace.
ffmpeg -cpucount 2
-max_alloc bytes
Establece el límite máximo de tamaño para reservar un bloque en el heap mediante la familia de funciones malloc de ffmpeg. Actúe con extrema precaución al usar esta opción. No la use si no comprende del todo las consecuencias de hacerlo. El valor predeterminado es INT_MAX.
3.3 AVOptions
Estas opciones las proporcionan directamente las bibliotecas libavformat, libavdevice y libavcodec. Para ver la lista de AVOptions disponibles, use la opción -help. Se dividen en dos categorías:
generic
Estas opciones se pueden establecer para cualquier container, codec o dispositivo. Las opciones genéricas se listan bajo AVFormatContext options para containers/dispositivos y bajo AVCodecContext options para codecs.
private
Estas opciones son específicas del container, dispositivo o codec dado. Las opciones privadas se listan bajo su container/dispositivo/codec correspondiente.
Por ejemplo, para escribir una cabecera ID3v2.3 en lugar de la ID3v2.4 predeterminada en un archivo MP3, use la opción privada id3v2_version del muxer de MP3:
ffmpeg -i input.flac -id3v2_version 3 out.mp3
Todas las AVOptions de codec son por flujo, por lo que se les debe adjuntar un especificador de flujo:
ffmpeg -i multichannel.mxf -map 0:v:0 -map 0:a:0 -map 0:a:0 -c:a:0 ac3 -b:a:0 640k -ac:a:1 2 -c:a:1 aac -b:2 128k out.mp4
En el ejemplo anterior, un flujo de audio multicanal se mapea dos veces para la salida. La primera instancia se codifica con el codec ac3 y una tasa de bits de 640k. La segunda instancia se reduce a 2 canales y se codifica con el codec aac. Para esta se indica una tasa de bits de 128k usando el índice absoluto del flujo de salida.
Nota: la sintaxis -nooption no se puede usar con AVOptions booleanas; use -option 0/-option 1.
Nota: la antigua forma no documentada de especificar AVOptions por flujo anteponiendo v/a/s al nombre de la opción está obsoleta y se eliminará pronto.
3.4 Opciones principales
-x width
Fuerza el ancho mostrado.
-y height
Fuerza el alto mostrado.
-fs
Inicia en modo de pantalla completa.
-an
Deshabilita el audio.
-vn
Deshabilita el vídeo.
-sn
Deshabilita los subtítulos.
-ss pos
Busca hasta pos. Tenga en cuenta que en la mayoría de los formatos no es posible buscar con exactitud, por lo que ffplay buscará el punto de búsqueda más cercano a pos.
pos debe ser una especificación de duración temporal; véase (ffmpeg-utils)la sección Time duration del manual ffmpeg-utils(1).
-t duration
Reproduce duration segundos de audio/vídeo.
duration debe ser una especificación de duración temporal; véase (ffmpeg-utils)la sección Time duration del manual ffmpeg-utils(1).
-bytes
Busca por bytes.
-seek_interval
Establece un intervalo personalizado, en segundos, para buscar con las teclas izquierda/derecha. El valor predeterminado es 10 segundos.
-nodisp
Deshabilita la visualización gráfica.
-noborder
Ventana sin bordes.
-alwaysontop
Ventana siempre en primer plano. Disponible en: X11 con SDL >= 2.0.5, Windows con SDL >= 2.0.6.
-volume
Establece el volumen de inicio. 0 significa silencio, 100 significa sin reducción ni amplificación del volumen. Los valores negativos se tratan como 0 y los valores superiores a 100 se tratan como 100.
-f fmt
Fuerza el formato.
-window_title title
Establece el título de la ventana (de forma predeterminada es el nombre del archivo de entrada).
-left title
Establece la posición x del borde izquierdo de la ventana (de forma predeterminada la ventana se centra).
-top title
Establece la posición y del borde superior de la ventana (de forma predeterminada la ventana se centra).
-loop number
Repite la reproducción de la película
-showmode mode
Establece el modo de visualización que se va a usar. Los valores disponibles para mode son:
‘0, video’
muestra el vídeo
‘1, waves’
muestra las ondas de audio
‘2, rdft’
muestra la banda de frecuencia del audio mediante RDFT (transformada discreta de Fourier real (inversa))
El valor predeterminado es "video"; si no hay vídeo presente o no se puede reproducir, se selecciona automáticamente "rdft".
Puede recorrer de forma interactiva los modos de visualización disponibles pulsando la tecla w.
-vf filtergraph
Crea el filtergraph especificado por filtergraph y lo usa para filtrar el flujo de vídeo.
filtergraph es una descripción del filtergraph que se aplicará al flujo y debe tener una única entrada de vídeo y una única salida de vídeo. Dentro del filtergraph, la entrada se asocia a la etiqueta in y la salida a la etiqueta out. Consulte el manual ffmpeg-filters para más información sobre la sintaxis de filtergraph.
Puede indicar este parámetro varias veces y recorrer los filtergraphs especificados junto con los modos de visualización pulsando la tecla w.
-af filtergraph
filtergraph es una descripción del filtergraph que se aplicará al audio de entrada. Use la opción "-filters" para mostrar todos los filtros disponibles (incluidos fuentes y sumideros).
-i input_url
Lee input_url.
3.5 Opciones avanzadas
-stats
Muestra varias estadísticas de reproducción; en concreto, la duración del flujo, los parámetros del codec, la posición actual en el flujo y la desviación de sincronización entre audio y vídeo. Se muestra de forma predeterminada, salvo que el nivel de registro sea inferior a info. Su visualización se puede forzar especificando esta opción manualmente. Para deshabilitarla, debe especificar -nostats.
-fast
Optimizaciones que no cumplen la especificación.
-genpts
Genera pts.
-sync type
Establece el reloj maestro en audio (type=audio), vídeo (type=video) o externo (type=ext). El valor predeterminado es audio. El reloj maestro se usa para controlar la sincronización entre audio y vídeo. La mayoría de los reproductores multimedia usan el audio como reloj maestro, pero en algunos casos (streaming o difusión de alta calidad) es necesario cambiarlo. Esta opción se usa principalmente con fines de depuración.
-ast audio_stream_specifier
Selecciona el flujo de audio deseado mediante el especificador de flujo indicado. Los especificadores de flujo se describen en el capítulo "Especificadores de flujo". Si no se especifica esta opción, se selecciona el "mejor" flujo de audio dentro del programa del flujo de vídeo ya seleccionado.
-vst video_stream_specifier
Selecciona el flujo de vídeo deseado mediante el especificador de flujo indicado. Los especificadores de flujo se describen en el capítulo "Especificadores de flujo". Si no se especifica esta opción, se selecciona el "mejor" flujo de vídeo.
-sst subtitle_stream_specifier
Selecciona el flujo de subtítulos deseado mediante el especificador de flujo indicado. Los especificadores de flujo se describen en el capítulo "Especificadores de flujo". Si no se especifica esta opción, se selecciona el "mejor" flujo de subtítulos dentro del programa del flujo de vídeo o audio ya seleccionado.
-autoexit
Sale cuando termina la reproducción del vídeo.
-exitonkeydown
Sale si se pulsa cualquier tecla.
-exitonmousedown
Sale si se pulsa cualquier botón del ratón.
-codec:media_specifier codec_name
Fuerza una implementación de decoder específica para el flujo identificado por media_specifier, que puede tomar los valores a (audio), v (vídeo) y s (subtítulos).
-acodec codec_name
Fuerza un decoder de audio específico.
-vcodec codec_name
Fuerza un decoder de vídeo específico.
-scodec codec_name
Fuerza un decoder de subtítulos específico.
-autorotate
Rota el vídeo automáticamente según los metadatos del archivo. Habilitado de forma predeterminada; use -noautorotate para deshabilitarlo.
-framedrop
Descarta fotogramas de vídeo si el vídeo está desincronizado. Habilitado de forma predeterminada si el reloj maestro no está fijado en vídeo. Use esta opción para habilitar el descarte de fotogramas con cualquier fuente de reloj maestro; use -noframedrop para deshabilitarlo.
-infbuf
No limita el tamaño del búfer de entrada; lee de la entrada tantos datos como sea posible lo antes posible. Habilitado de forma predeterminada para flujos en tiempo real, donde se pueden perder datos si no se leen a tiempo. Use esta opción para habilitar búferes infinitos en todas las entradas; use -noinfbuf para deshabilitarlo.
-filter_threads nb_threads
Define cuántos hilos se usan para procesar una filter pipeline. Cada pipeline generará un thread pool con esta cantidad de hilos disponibles para el procesamiento en paralelo. El valor predeterminado es 0, lo que significa que el número de hilos se determinará según la cantidad de CPU disponibles.
-enable_vulkan
Usa el renderizador vulkan en lugar del renderizador integrado de SDL. Depende de libplacebo.
-vulkan_params
Configuración de Vulkan mediante una lista de pares key=value separados por ":".
-hwaccel
Usa decodificación acelerada por hardware. Habilitar esta opción habilita automáticamente el renderizador vulkan.
-video_bg pattern
Establece el patrón de fondo del vídeo usado para vídeos transparentes. Para patrones de color sólido puede usar el nombre de color o el código de color según se especifica en la (ffmpeg-utils)sección Color del manual ffmpeg-utils(1). También puede usar la palabra clave especial tiles para un patrón estilo tablero de ajedrez, que además es el predeterminado. El patrón none renderiza sin alpha blending, ignorando en la práctica el canal alfa.
3.6 Durante la reproducción
q, ESC
Sale.
f
Alterna la pantalla completa.
p, SPC
Pausa.
m
Alterna el silencio.
9, 0
/, *
Disminuye y aumenta el volumen, respectivamente.
a
Recorre los canales de audio del programa actual.
v
Recorre los canales de vídeo.
t
Recorre los canales de subtítulos del programa actual.
c
Recorre los programas.
w
Recorre los filtros de vídeo o los modos de visualización.
s
Avanza al siguiente fotograma.
Si el flujo no está ya en pausa, lo pausa, avanza al siguiente fotograma de vídeo y vuelve a pausar.
left/right
Busca hacia atrás/adelante 10 segundos, o el intervalo personalizado si se ha establecido -seek_interval.
down/up
Busca hacia atrás/adelante 1 minuto.
page down/page up
Busca el capítulo anterior/siguiente, o 10 minutos hacia atrás/adelante si no hay capítulos.
right mouse click
Busca en el archivo el porcentaje correspondiente a la fracción del ancho.
left mouse double-click
Alterna la pantalla completa.
4 Véase también
ffmpeg-all, ffmpeg, ffprobe, ffmpeg-utils, ffmpeg-scaler, ffmpeg-resampler, ffmpeg-codecs, ffmpeg-bitstream-filters, ffmpeg-formats, ffmpeg-devices, ffmpeg-protocols, ffmpeg-filters
5 Autores
Los desarrolladores de FFmpeg.
Para más información sobre la autoría, consulte el historial de Git del proyecto (https://git.ffmpeg.org/ffmpeg); por ejemplo, ejecutando el comando git log en el directorio de fuentes de FFmpeg, o consultando el repositorio en línea en https://git.ffmpeg.org/ffmpeg.
Los mantenedores de los distintos componentes figuran en el archivo MAINTAINERS del árbol de código fuente.
Alojamiento proporcionado por telepoint.bg