我正在考虑在Android上制作视频应用。我发现有两个着名的图书馆FFMPEG
和Vitamio
。
我只是想知道我可以做简单的视频功能,比如播放视频,抓取一个帧,用两个库将视频转换成mp3吗?它们的优缺点是什么?
提前致谢。
答案 0 :(得分:7)
Vitamio更容易使用。它就像Android中的默认MediaPlayer
一样具有一些奇特的功能。同时它无法做你想做的一切。据我所知,它只播放视频。
FFmpeg并不那么简单。它是一个非常强大的库,需要在C中进行一些深思熟虑的本机编码。我相信你可以随心所欲地做任何事情,但这会花费你很多努力。
因此我建议您使用默认Android或Vitamio MediaPlayer
来播放视频。并在FFmpeg的帮助下实现一些特定的功能。
答案 1 :(得分:2)
老问题,但由于我正在解决这个问题并且我发现了很多过时的信息,我认为无论如何都可能值得回答。
Vitamio实际上是基于ffmpeg ,这使得“Vitamio vs ffmpeg”问题没有实际意义:
What's Vitamio, on the Vitamio website
Media Formats
段引用:
Vitamio使用FFmpeg作为解复用器和主解码器,许多音频和视频编解码器都包含在Android平台内置的默认媒体格式的Vitamio中,其中一些列在下面。
“used”而不是“uses”看起来像一个拼写错误(网站充满了它们......)。
因此,它的尖端会指向Vitaminio,因为它很容易使用。然而...
Vitamio
是ffmpeg for android的衍生作品,带有未指定的许可证(在网站上拼写清楚,个人可以自由地使用该库为他们自己的应用程序。这部分可能是在由Marcus Wolschon回答)ffmpeg for android
是ffmpeg的衍生作品(实际上是:它是一个端口),它是在LGPL v3 下发布的,以遵守它与ffmpeg
的合同条款(它实际上是这样),以病毒的方式向用户传递相同的义务(归属,使用于编译的库的来源等等)ffmpeg
(原创作品)是在双重许可下发布的:一个非常自由的GPL(在这个讨论中没有任何后果)和LGPL(由ffmpeg为Android选择的那个)<小时/> 以下内容严格来说是我个人的偏见,而不是关于事实的陈述
这让我认为除非销售Vitamio的公司与ffmpeg android和ffmpeg的作者有一些协议,我们对一无所知,Vitamio侵犯了ffmpeg for android的版权(因此ffmpeg) hard 。
事实上,Vitamio的网站有很多断开的链接,一个语法上有挑战性的文档,而不是所有受过教育的选择所需的法律信息,如果我不得不在考虑之间做出决定他们是一个高调的公司或一些试图靠ffmpeg团队的工作生活的人...
这引出了以下考虑因素:
从实际的角度来看,Vitamio 可能是也可能不是的最佳选择它应该很容易集成到您的项目中(我说它是应该,因为我还没有设法做到这一点,而且我作为一名Android开发人员有很多经验......)。有条件的是,因为该软件基于ffmpeg for android,已经为轻松的Android集成做了努力。
从法律角度来看,情况更加阴暗,选项是:
MediaPlayer
又要遵守LGPL条款,但保证一个清醒的良心我不介意,但我可能会选择“2”
希望这有帮助
更新看起来Vitamio(至少部分)遵守LGPL许可条款,因为他们正在发布构建其产品所需的源代码:
我没有时间了解这是否符合原始ffmpeg许可证所需的全部内容(我很怀疑),以及它如何影响以前的考虑因素(抱歉)。
答案 2 :(得分:1)
您不能在任何项目中使用Vitamio,因为它没有许可证。 如果没有LICENSE文件或任何其他提及您授予的权利,您将被授予使用它的权利。 见这里:http://vitamio.org/topics/93?locale=en