微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ubuntu – ffmpeg,libav和avconv之间有什么区别和相似之处?

当我在Ubuntu上运行ffmpeg时,它显示
$ 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).

或者它显示(取决于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.

我发现avconv在http://libav.org.我只是困惑他们。

令人困惑的消息

这些信息是相当误导的,可以理解的是混乱的根源。较旧的Ubuntu版本使用Libav,它是FFmpeg项目的一个分支。 FFmpeg在Ubuntu 15.04中返回“Vivid Vervet”。

这个分叉基本上是FFmpeg社区内冲突的个性和发展风格的不友好的结果。值得注意的是,Debian / Ubuntu的维护者自己从FFmpeg切换到Libav,因为涉及Libav fork。

真正的ffmpeg与假的

有一段时间Libav和FFmpeg分别开发自己的版本的ffmpeg。

Libav然后重命名他们的bizarro ffmpeg到avconv远离自己从FFmpeg项目。在过渡期间,显示“未开发的”消息以告知用户开始使用avconv,而不是他们的假冒版本的ffmpeg。这让用户觉得FFmpeg(项目)已经死了,这是不正确的。一个坏的选择的话,但我不能想象Libav没有期望普通用户这样的反应。

这个消息是上传的,当假的“ffmpeg”最终从Libav源删除,但是,根据您的版本,它仍然可以显示在Ubuntu中,因为Libav源Ubuntu使用是从ffmpeg到avconv过渡期。

在2012年6月,the message was re-worded为包libav – 4:0.8.3-0ubuntu0.12.04.1。不幸的是,新的“已弃用”消息引起了额外的用户混淆。

从Ubuntu 15.04“Vivid Vervet”开始,FFmpeg的ffmpeg再次是back in the repositories

libav vs Libav

为了进一步复杂的问题,Libav选择了一个历史上被FFmpeg用来引用其库(libavcodec,libavformat等)的名称。例如,libav-user mailing list,关于使用FFmpeg库的问题和讨论,与Libav项目无关。

如何区分差异

如果你使用avconv,那么你正在使用Libav。如果你使用ffmpeg,你可以使用FFmpeg或Libav。参考控制台输出中的第一行来说明区别:版权声明将提到FFmpeg或Libav。

其次,版本编号方案不同。每个FFmpeg或Libav库都包含一个version.h头文件显示一个版本号。 FFmpeg将以三位数字结尾,例如57.67.100,Libav将以一位数字结尾,例如57.67.0。您还可以通过运行ffmpeg或avconv并查看控制台输出来查看库版本号。

如果你想使用真正的ffmpeg

Ubuntu 15.04“Vivid Vervet”或更新版本

真正的ffmpeg在存储库中,所以您可以安装它:

apt-get install ffmpeg

对于较旧的Ubuntu版本

您的选择是:

>下载最近的Linux build of ffmpeg
>按照step-by-step guide to compile ffmpeg
>或使用Doug McMahon’s PPA(对于Ubuntu 14.04 LTS“Trusty Tahr”)

这些方法是非侵入性的,可逆的,并且不会干扰系统或任何存储库包。

一个可能的选择是升级到Ubuntu 15.04“Vivid Vervet”或更新版本,只需从存储库中使用ffmpeg。

另见

关于这个情况的一个有趣的博客文章,以及关于项目之间的主要技术差异的讨论,参见The FFmpeg/Libav situation

原文地址:https://www.jb51.cc/ubuntu/353955.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐