¿Cuáles son las diferencias y similitudes entre ffmpeg, libav y avconv?
Cuando corro ffmpeg
en Ubuntu, muestra:
$ ffmpeg
ffmpeg version v0.8, Copyright (c) 2000-2011 the Libav developers
built on Feb 28 2012 13:27:36 with gcc 4.6.1
This program is not developed anymore and is only provided for compatibility. Use avconv instead (see Changelog for the list of incompatible changes).
O se muestra (dependiendo de la versión de Ubuntu):
$ ffmpeg
ffmpeg version 0.8.5-6:0.8.5-0ubuntu0.12.10.1, Copyright (c) 2000-2012 the Libav developers
built on Jan 24 2013 14:49:20 with gcc 4.7.2
*** THIS PROGRAM IS DEPRECATED ***
This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.
Encontré avconv en http://libav.org . Estoy perplejo por ellos.
1 answers
Mensajes confusos
Estos mensajes son bastante engañosos y comprensiblemente una fuente de confusión. Las versiones anteriores de Ubuntu usaban Libav, que es una bifurcación del proyecto FFmpeg. FFmpeg regresó en Ubuntu 15.04 "Vivid Vervet".
La bifurcación fue básicamente un resultado no amistoso de personalidades conflictivas y estilos de desarrollo dentro de la comunidad FFmpeg. Vale la pena señalar que el mantenedor de Debian / Ubuntu cambió de FFmpeg a Libav por su propia voluntad debido por estar involucrado con el tenedor Libav.
El verdadero ffmpeg
vs el falso
Durante un tiempo Libav y FFmpeg desarrollaron por separado su propia versión de ffmpeg
.
Libav luego renombró su bizarro ffmpeg
a avconv
para distanciarse del proyecto FFmpeg. Durante el período de transición, se mostró el mensaje "no desarrollado más" para indicar a los usuarios que comenzaran a usar avconv
en lugar de su versión falsificada de ffmpeg
. Esto confundió a los usuarios en pensar que FFmpeg (el proyecto) está muerto, lo cual no es cierto. Una mala elección de palabras, pero no puedo imaginar que Libav no espere una respuesta de los usuarios en general.
Este mensaje se eliminó cuando el falso "ffmpeg
" finalmente se eliminó de la fuente Libav, pero, dependiendo de su versión, todavía puede aparecer en Ubuntu porque la fuente Libav que usa Ubuntu es del período de transición de ffmpeg a avconv.
En junio de 2012, el mensaje fue re-redactado para el paquete libav - 4:0.8.3-0ubuntu0.12.04.1
. Desafortunadamente, el nuevo mensaje "obsoleto" ha causado confusión adicional al usuario.
Comenzando con Ubuntu 15.04 "Vivid Vervet", el ffmpeg
de FFmpeg está de vuelta en los repositorios de nuevo.
Libav vs Libav
Para complicar aún más las cosas, Libav eligió un nombre que fue utilizado históricamente por FFmpeg para referirse a sus bibliotecas (libavcodec, libavformat, etc.). Por ejemplo, la lista de correo libav-user , para preguntas y discusiones sobre el uso de FFmpeg bibliotecas, no está relacionado con el proyecto Libav.
Cómo distinguir la diferencia
Si está utilizando avconv
entonces está utilizando Libav. Si está utilizando ffmpeg
podría estar utilizando FFmpeg o Libav. Consulte la primera línea en la salida de la consola para distinguir la diferencia: el aviso de copyright mencionará FFmpeg o Libav.
En segundo lugar, los esquemas de numeración de versiones difieren. Cada una de las bibliotecas FFMPEG o Libav contiene un encabezado version.h
que muestra un número de versión. FFmpeg terminará en tres dígitos, como 57.67.100, y Libav terminará en un dígito como 57.67.0. También puede ver los números de versión de la biblioteca ejecutando ffmpeg
o avconv
y viendo la salida de la consola.
Si desea utilizar el real ffmpeg
Ubuntu 15.04" Vivid Vervet " o posterior
El verdadero ffmpeg
está en el repositorio, así que puedes instalarlo con:
apt-get install ffmpeg
Para versiones anteriores de Ubuntu
Sus opciones son:
- Descargar una versión reciente de Linux de
ffmpeg
, - siga una guía paso a paso para compilar
ffmpeg
, - o use El PPA de Doug McMahon (para Ubuntu 14.04 LTS "Trusty Tahr")
Estos métodos no son intrusivos, reversibles y no interferirán con el sistema ni con ningún paquete de repositorio.
Otra opción posible es actualizar a Ubuntu 15.04 "Vivid Vervet" o más reciente y solo use ffmpeg
desde el repositorio.
Véase también
Para un interesante artículo de blog sobre la situación, así como una discusión sobre las principales diferencias técnicas entre los proyectos, ver La situación FFmpeg/Libav.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-12-08 18:47:19