Quali sono le differenze e le somiglianze tra FFMPEG, Libav e AvConv?
-
13-11-2019 - |
Domanda
Quando corro ffmpeg
Su Ubuntu, mostra:
$ 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).
Oppure mostra (a seconda della versione 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.
Ho trovato AvConv http://libav.org. Sono solo perplesso da loro.
Soluzione
Messaggi confusi
Questi messaggi sono piuttosto fuorvianti e comprensibilmente una fonte di confusione. Le versioni più vecchie Ubuntu hanno usato Libav che è una forchetta del progetto FFMPEG. Ffmpeg è tornato in Ubuntu 15.04 "Vervet vivido".
La forcella era sostanzialmente un risultato non amichevole di personalità e stili di sviluppo in conflitto all'interno della comunità FFMPEG. Vale la pena notare che il manutentore di Debian/Ubuntu è passato da FFMPEG a Libav da solo a causa di essere coinvolti nella Fork Libav.
Il vero ffmpeg
vs quello falso
Per un po 'sia Libav che FFMPEG hanno sviluppato separatamente la propria versione di ffmpeg
.
Libav ha quindi ribattezzato il loro bizzarro ffmpeg
a avconv
per prendere le distanze dal progetto FFMPEG. Durante il periodo di transizione il messaggio "non più sviluppato" è stato visualizzato per dire agli utenti di iniziare a utilizzare avconv
invece della loro versione contraffatta di ffmpeg
. Ciò ha confuso gli utenti nel pensare che FFMPEG (il progetto) sia morto, il che non è vero. Una cattiva scelta di parole, ma non riesco a immaginare Libav che non si aspetta una tale risposta da parte degli utenti generali.
Questo messaggio è stato rimosso a monte quando il falso "ffmpeg
"È stato finalmente rimosso dalla fonte Libav, ma, a seconda della versione, può ancora apparire in Ubuntu perché la sorgente Libav che Ubuntu usa proviene dal periodo di transizione da FFMPEG a AVConv.
Nel giugno 2012, Il messaggio è stato riprogrammato per il pacchetto libav - 4:0.8.3-0ubuntu0.12.04.1
. Sfortunatamente il nuovo messaggio "deprecato" ha causato un'ulteriore confusione dell'utente.
A partire da Ubuntu 15.04 "Vivid Vervet", FFMPEG ffmpeg
è Di nuovo nei repository ancora.
Libav vs Libav
Per complicare ulteriormente le questioni, LiBav ha scelto un nome che è stato storicamente usato da FFMPEG per riferirsi alle sue librerie (Libavcodec, Libavformat, ecc.). Per esempio il Miling list di Libav-utente, per domande e discussioni sull'uso delle librerie FFMPEG, non è correlato al progetto LiBav.
Come dire la differenza
Se stai usando avconv
Quindi stai usando Libav. Se stai usando ffmpeg
Potresti usare FFMPEG o LiBav. Fare riferimento alla prima riga nell'output della console per raccontare la differenza: l'avviso di copyright menzionerà FFMPEG o LiBAV.
In secondo luogo, gli schemi di numerazione della versione differiscono. Ciascuna delle librerie FFMPEG o LiBav contiene a version.h
Intestazione che mostra un numero di versione. FFMPEG finirà in tre cifre, come 57.67.100, e Libav finirà in una cifra come 57.67.0. Puoi anche visualizzare i numeri di versione della libreria eseguendo ffmpeg
o avconv
e visualizzare l'output della console.
Se vuoi usare il vero ffmpeg
Ubuntu 15.04 "VIVID VERVET" o NUOVO
Il vero ffmpeg
è nel repository, quindi puoi installarlo con:
apt-get install ffmpeg
Per versioni più vecchie Ubuntu
Le tue opzioni sono:
- Scarica un recente Build Linux di
ffmpeg
, - Segui a Guida passo-passo per compilare
ffmpeg
, - o usare PPA di Doug McMahon (per Ubuntu 14.04 LTS "Trusty Tahr")
Questi metodi non sono invadenti, reversibili e non interferiscono con il sistema o i pacchetti di repository.
Un'altra possibile opzione è l'aggiornamento a Ubuntu 15.04 "Vervet vivido" o più recente e usa semplicemente ffmpeg
Dal repository.
Vedi anche
Per un interessante articolo sul blog sulla situazione, nonché una discussione sulle principali differenze tecniche tra i progetti, vedi La situazione FFMPEG/LIBAV.