Ffmpeg, libav ve avconv arasındaki farklar ve benzerlikler nelerdir?


246

Koştuğumda ffmpeg Ubuntu üzerinde , gösterir:

$ 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).

Veya gösterir (Ubuntu sürümüne bağlı olarak):

$ 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.

Avconv'u http://libav.org adresinde buldum . Sadece onlar tarafından şaşırdım.


1
Bu, yanlış komut satırı bağımsız değişkenleri verdiğiniz anlamına gelir.
Dipan Mehta

18
This program is not developed anymore and is only provided for compatibility. Use avconv instead
neden

1
Ne yapmaya çalışıyorsun? ffmpegçoğunlukla kütüphane ve ana ffmpegkomut satırı özelliklerinin gösterilmesi için daha fazladır (yardımcı olursa kullanmanız önemli değildir). Yalnızca komut olarak kullanmak istiyorsanız, yapmak istediğiniz şeyi yapmak için ffmpeg kullanan birçok uygulama vardır.
Dipan Mehta


4
Size tüm farklılıkları söyleyemem ama: avconv -ss 00:01:42 -t 00:00:32 -i kaynakfilename -acodec kopya hedeffilename çalışmıyor ve ffmpeg -ss 00:01:42 -t 00:00 : 32 -i kaynakfilename -acodec kopyalama hedeffilename belgelerin eşleşmesine rağmen beklendiği gibi çalışıyor

Yanıtlar:


473

Kafa karıştırıcı mesajlar

Bu mesajlar oldukça yanıltıcı ve anlaşılır bir karışıklık kaynağı. Eski Ubuntu versiyonları, FFmpeg projesinin bir çatal olan Libav'ı kullandı. FFmpeg, Ubuntu 15.04 "Vivid Vervet" ile döndü.

Çatal temelde FFmpeg topluluğundaki çatışan kişiliklerin ve gelişim stillerinin dostane olmayan bir sonucuydu. Debian / Ubuntu'nun koruyucusunun Libav çatalına dahil olması nedeniyle FFmpeg'den Libav'a kendi isteğiyle geçtiğini belirtmek gerekir.

Gerçek ffmpegve Sahte Olan

Bir süreliğine hem Libav hem de FFmpeg ayrı ayrı kendi sürümlerini geliştirdi ffmpeg.

Libav sonra kendi Bizarro değiştirildi ffmpegiçin avconvFFmpeg projesinden aralarına mesafe. Geçiş dönemi boyunca, kullanıcılara avconvsahte sürümleri yerine kullanmaya başlamalarını bildiren "artık geliştirilmedi" mesajı görüntülendi ffmpeg. Bu, kullanıcıları FFmpeg'in (proje) öldüğünü düşünmeleri için karıştırdı, bu doğru değil. Kötü bir kelime seçimi, ancak Libav'ın genel kullanıcılar tarafından böyle bir yanıt beklemediğini hayal edemiyorum.

Bu ileti, sahte " ffmpeg" nihayet Libav kaynağından kaldırıldığında yukarı doğru kaldırıldı, ancak sürümünüze bağlı olarak, Ubuntu'nun kullandığı Libav kaynağı ffmpeg-avconv geçiş döneminden olduğu için yine de Ubuntu'da görünebilir.

Haziran 2012'de, mesaj paket için yeniden ifade edildilibav - 4:0.8.3-0ubuntu0.12.04.1 . Maalesef yeni "kullanımdan kaldırıldı" mesajı ek kullanıcı karışıklığına neden oldu.

Ubuntu 15.04 "Canlı Vervet" ile başlayan, ffmpeg en ffmpegolduğu geri depolarında tekrar.

libav vs Libav

Konuları daha da karmaşıklaştırmak için Libav, tarihsel olarak FFmpeg tarafından kütüphanelerine (libavcodec, libavformat, vb.) Başvurmak için kullanılan bir isim seçti. Örneğin , FFmpeg kitaplıklarının kullanımına ilişkin sorular ve tartışmalar için libav kullanıcısı posta listesi , Libav projesi ile ilgisizdir.

Fark nasıl anlaşılır

Eğer avconvkullanıyorsanız Libav kullanıyorsunuz. Eğer ffmpegkullanıyorsanız FFmpeg veya Libav kullanıyor olabilirsiniz. Farkı söylemek için konsol çıkışındaki ilk satıra bakın: telif hakkı bildirimi FFmpeg veya Libav'dan bahsedecektir.

İkinci olarak, sürüm numaralandırma şemaları farklıdır. FFmpeg veya Libav kitaplıklarının her biri, version.hsürüm numarasını gösteren bir başlık içerir . FFmpeg, 57.67 gibi üç basamakla sona erecektir. 100 , ve Libav 57.67 gibi bir rakamla sona erecek. 0 . Konsol çıktısını çalıştırarak ffmpegveya görüntüleyerek kütüphane sürüm numaralarını da görüntüleyebilirsiniz avconv.

Eğer gerçek kullanmak istiyorsanız ffmpeg

Ubuntu 15.04 "Canlı Vervet" veya daha yenisi

Gerçek ffmpegdepodadır, böylece aşağıdakileri yükleyebilirsiniz:

apt-get install ffmpeg

Eski Ubuntu sürümleri için

Seçenekleriniz:

Bu yöntemler müdahaleci değildir, tersine çevrilebilirdir ve sisteme veya herhangi bir depo paketine müdahale etmez.

Başka bir olası seçenek Ubuntu 15.04 "Vivid Vervet" veya daha yeni bir sürüme yükseltmek ve sadece ffmpegdepodan kullanmaktır .

Ayrıca bakınız

Durum hakkında ilginç bir blog makalesi ve projeler arasındaki ana teknik farklılıklar hakkında bir tartışma için, bkz . FFmpeg / Libav durumu .


89
kişisel bir sorun gibi görünüyor
mirza

1
Gerçek ffmpeg'i kurduktan sonra bile çalıştıramazsınız. Ubuntu ile birlikte libav-tools olarak gönderilen varsayılan ffmpeg'i kaldırmalısınız, bkz: askubuntu.com/questions/162740/how-do-i-uninstall-ffmpeg .
user568109

@ user568109 ffmpeg'i nasıl yüklediğinize bağlıdır. Bkz Ubuntu, Debian veya Mint üzerinde Derleme FFmpeg'den nasıl ya da sadece bir kullanmak Linux yapıffmpeg . Havuz paketi de yüklüyse, bu yöntemlerden her ikisi de çalışmalıdır.
llogan

1
Ben ffmpeg inşa yaptım ama terminalden ffmpeg çalıştırırken bir sevk varsayılan çalışıyor ve apt-get kaldır ffmpeg yapıyor bunu kaldırmadı. Bu yüzden, bu sorunla uğraşanlara, sadece karışıklığı gidermek için bir mesaj bıraktım. Libav araçları olarak gönderilir.
user568109

Bu durumlardan kaçınmak için açık kaynak topluluğunda bazı "ticari marka" sistemine ihtiyaç var gibi görünüyor !!!
rkachach
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.