FFmpeg | |||
---|---|---|---|
Información general | |||
Tipo de programa | Framework multimedia | ||
Autor | Fabrice Bellard | ||
Desarrollador | Equipo de FFmpeg | ||
Modelo de desarrollo | Software libre | ||
Lanzamiento inicial | 20 de diciembre de 2000 | ||
Vulnerabilidades |
| ||
Licencia |
GNU LGPL 2.1+ GNU GPL 2+ | ||
Información técnica | |||
Programado en | C[1] | ||
Plataformas admitidas | |||
Versiones | |||
Última versión estable | 7.1 (info) ( 30 de septiembre de 2024 (1 mes y 9 días)) | ||
Archivos legibles | |||
| |||
Archivos editables | |||
Enlaces | |||
FFmpeg es una colección de software libre que puede grabar, convertir (transcodificar) y hacer streaming de audio y vídeo. Incluye libavcodec, una biblioteca de códecs. FFmpeg está desarrollado en GNU/Linux, pero puede ser compilado en la mayoría de los sistemas operativos, incluyendo Windows. El proyecto comenzó por Gerard Lantau, un seudónimo de Fabrice Bellard, y ahora es mantenido por Michael Niedermayer. Es destacable que la mayoría de los desarrolladores de FFmpeg lo sean también del proyecto MPlayer (más un miembro del proyecto Xine), y que FFmpeg esté hospedado en el servidor del proyecto MPlayer.
FFmpeg está liberado bajo una licencia GNU Lesser General Public License 2.1+ o GNU General Public License 2+ (dependiendo de qué bibliotecas estén incluidas).[2] Los desarrolladores recomiendan utilizar el último snapshot de Subversion ya que mantienen constantemente una versión estable.
FFmpeg es un programa de línea de órdenes que en cierta medida puede ser utilizado tanto por personas con conocimientos avanzados como por usuarios con conocimentos básicos. Es capaz de elegir el códec con sólo escribir la extensión. Por ejemplo, FFmpeg usará x264 si elegimos .mp4, mpeg4 si usamos .avi, VP8 si usamos .webm, etc...
El proyecto está compuesto por:
Es la biblioteca principal del proyecto FFmpeg es capaz de codificar/decodificar en varios formatos de audio y vídeo, está desarrollada en C.
El códec de MPEG-4 utilizado por defecto en el FFmpeg tiene el código FourCC de FMP4.
Si el problema es el tamaño de un archivo de video que se puede considerar como excesivo para la calidad del video y se necesita que el archivo conserve la calidad (dentro de lo posible), o simplemente que su tamaño sea menor; una buena opción sin usar códecs privativos es usar el códec de video H264 o también conocido como MPEG-4 parte 10.
ffmpeg -i 'in_Pelicula.avi'-ab 128k -vcodec libx264 'out_Pelicula.avi'
-i Para indicar el archivo (formato) a convertir, en este caso "in_Pelicula.avi".
-ab Para indicar la tasa de bits, se indican 128kbps. Por defecto FFmpeg convierte los videos a una tasa de bits de 64k, puede que sea necesario saber la tasa de bit del video original e indicarla para conservar la calidad del sonido. Se puede consultar la información de un video con "ffprobe".
-vcodec Para indicar el códec de video a utilizar, en este caso se le indica libx264. Se puede consultar los códecs de video y audio utilizando "ffmpeg -codecs".
Un ejemplo práctico algo más extenso para comprimir un archivo de vídeo conservando una calidad casi transparente, con el códec libre x264 y aac lc:
ffmpeg -y -i 'video' -vcodec libx264 -crf 25 -preset slower -tune film -acodec aac -ar 44100 -b:a 112k -ac 2 -strict experimental 'video_convertido.mp4'
El estado legal del FFmpeg varía según el país. Algunos códecs incluidos, (como el Soreson 3) son reclamados por los dueños de las patentes. Estos reclamos tendrían valor en países como Estados Unidos donde se reconocen las patentes de software. Aun así muchos de estos códecs están liberados bajo términos que prohíben la ingeniería inversa, incluso para facilitar la interoperabilidad, términos que están prohibidos en algunos países. Por ejemplo en algunos países de la Unión Europea no se reconocen las patentes de software o disponen de leyes que expresamente permiten la ingeniería inversa para cuestiones de interoperabilidad. En cualquier caso muchas distribuciones de GNU/Linux no incluyen FFmpeg para evitar complicaciones legales.
FFmpeg es usado en muchos proyectos libres y propietarios, incluyendo ffmpeg2theora, VLC, MPlayer, HandBrake, Blender, Google Chrome, MystiQ, Videomorph y otros.[3]
También hay varios frameworks multimedia que hacen uso de FFmpeg como DirectShow/VFW (ffdshow), QuickTime (perian), GStreamer, OpenMAX, xine.