FFmpeg

De Viquipèdia
Jump to navigation Jump to search
Infotaula de programariFFmpeg
FFmpeg Logo new.svg
FFmpeg-Libav.png
Creador/s Fabrice Bellard
Desenvolupador(s) Equip de FFmpeg
Versió inicial 20 desembre 2000
Versió estable

3.2.4

/ 10 febrer 2017
Escrit en C
Sistema operatiu Multiplataforma
Format d'arxiu de lectura
Format d'arxiu d'escriptura
Tipus multimedia framework Tradueix
Llicència GNU LGPL 2.1+, GNU GPL 2+
Més informació
Lloc web Web oficial
Stack Exchange Etiqueta
Seguiment d'errors Pàgina de seguiment d'errors
Free Software Directory Ffmpeg
Modifica dades a Wikidata

FFmpeg és una col·lecció de programari lliure que es pot gravar, convertir (transcodificar) i fer streaming d' àudio i vídeo. Inclou libavcodec, una biblioteca de còdecs. FFmpeg és desenvolupat en GNU/Linux, però pot ser compilat en la majoria de sistemes operatius, incloent-hi el Windows. El projecte es iniciat per en Gerard de Lantau, un pseudònim de Fabrice Bellard, i ara és mantingut per Michael Niedermayer. És remarcable que la majoria de desenvolupadors del FFmpeg també estan projecte MPlayer (més d'un membre del projecte Xine), i que FFmpeg està allotjada al servidor del projecte MPlayer.

FFmpeg està alliberat sota una llicència GNU Lesser General Public License 2.1+ o GNU General Public License 2+ (depenent de quines biblioteques estiguin incloses).[1] Els desenvolupadors recomanen utilitzar l'últim snapshot de Subversion ja que mantenen constantment una versió estable.

FFmpeg és un programa bastant senzill i molt fàcil d'usar, orientat tant a persones amb coneixements avançats com a usuaris nouvinguts. És capaç de triar el còdec amb només escriure l'extensió. Per exemple, FFmpeg usarà x264 si triem .mp4, mpeg4 si usem .avi, VP8 si usem .webm, etc...

Components[modifica]

Esquema de funcionament.
  • ffmpeg: és una eina de línia de comandos per convertir àudio o vídeo d'un format a un altre. També pot capturar i codificar en temps real des de DirectShow, una targeta de televisió o un altre dispositiu compatible.
  • ffserver: és un servidor de streaming multimèdia d'emissions en directe que suporta HTTP (la compatibilitat amb RTSP està en desenvolupament). Encara no està en fase estable, i de moment no està disponible per Windows.
  • ffplay: és un reproductor multimèdia basat en SDL i les biblioteques FFmpeg.
  • libavcodec: és una biblioteca que conté tots els còdecs de FFmpeg. Molts d'ells van ser desenvolupats des de zero per assegurar una major eficiència i un codi altament reutilitzable.
  • libavformat: és una biblioteca que conté els multiplexadors/demultiplexadors per als arxius contenidors multimèdia.
  • libavutil: és una biblioteca de suport que conté totes les rutines comunes en les diferents parts de FFmpeg.
  • libpostproc: és una biblioteca de funcions de postprocés de vídeo.
  • libswscale: és la biblioteca d'escalat de vídeo.

Códecs[modifica]

És la biblioteca principal del projecte FFmpeg és capaç de codificar/descodificar en diversos formats d'àudio i vídeo, està desenvolupada en C.

Códecs de vídeo implementats[modifica]

  • MPEG-1
  • MPEG-2
  • MPEG-4 Part 2 (el format utilitzat pels còdecs DivX i Xvid)
  • H.261
  • H.263
  • H.264/MPEG-4 AVC (únicament la descodificació)
  • x264
  • WMV versió 7, 8 i 9 (únicament la descodificació)
  • Sorenson codec
  • Cinepak
  • MJPEG
  • Huffyuv
  • Snow
  • Theora (únicament la descodificació)
  • VP3 / VP5 / VP6 (únicament la descodificació)
  • VP8 / WebM

El códec de MPEG-4 utilitzat per defecte en el FFmpeg té el codi FourCC de FMP4

Còdecs d'àudio implementats[modifica]

  • Apple Lossless
  • AAC LC (Usar amb -strict experimental)
  • Cook Codec
  • FLAC
  • MP2
  • MP3
  • Shorten
  • QDM2
  • RealAudio 1.0
  • RealAudio 2.0
  • Vorbis
  • WavPack
  • WMA

Cas útil[modifica]

Si el problema és la grandària d'un arxiu de vídeo que es pot considerar com a excessiu per a la qualitat del vídeo i es necessita que l'arxiu conservi la qualitat (en la mesura del possible), o simplement que la seva grandària sigui menor; una bona opció sense usar còdecs privatius és usar el còdec de vídeo H264 o també conegut com MPEG-4 part 10.

ffmpeg -i 'in_Pelicula.avi'-ab 128k -vcodec libx264 'out_Pelicula.avi'

-i Per indicar l'arxiu (format) a convertir, en aquest cas "in_Pelicula.avi".

-ab Per indicar la taxa de bits, s'indiquen 128kbps. Per defecte FFmpeg converteix els vídeos a una taxa de bits de 64k, pot ser que sigui necessari saber la taxa de bit del vídeo original i indicar-la per conservar la qualitat del so. Es pot consultar la informació d'un vídeo amb "ffprobe".

-vcodec Per indicar el còdec de vídeo a utilitzar, en aquest cas se li indica libx264. Es pot consultar els còdecs de vídeo i àudio utilitzant "ffmpeg -codecs".

Un exemple pràctic una mica més extens per comprimir un arxiu de vídeo conservant una qualitat gairebé transparent, amb el còdec lliure x264 i 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_convertit.mp4'

Legalitat[modifica]

L'estat legal del FFmpeg varia segons el país. Alguns còdecs inclosos, (com el Soreson 3) són reclamats pels amos de les patents. Aquests reclams tindrien valor en països com Estats Units on es reconeixen les patents de programari. Així i tot molts d'aquests còdecs estan alliberats sota termes que prohibeixen l'enginyeria inversa, fins i tot per facilitar la interoperabilitat, termes que estan prohibits en alguns països. Per exemple en alguns països de la Unió Europea no es reconeixen les patents de programari o disposen de lleis que expressament permeten l'enginyeria inversa per a qüestions d'interoperabilitat. En qualsevol cas moltes distribucions de GNU/Linux no inclouen FFmpeg per evitar complicacions legals.

Projectes que fan ús de FFmpeg[modifica]

Xvidcap.

FFmpeg és usat en molts projectes lliures i propietaris, incloent ffmpeg2theora, VLC, MPlayer, HandBrake, Blender, Google Chrome i uns altres.[2]

També hi ha diversos frameworks multimèdia que fan ús de FFmpeg com DirectShow/VFW (ffdshow), QuickTime (perian), GStreamer, OpenMAX, xine.

Vegeu també[modifica]

  • MediaCoder, transcodificador multimèdia para sistemes operatius Windows.

Referències[modifica]

  1. Proyectos

Enllaços externs[modifica]