[FFmpeg-devel] Apache licensed AMR library, patches
Fri May 15 23:46:40 CEST 2009
On Wed, Apr 15, 2009 at 10:05:41PM +0300, Martin Storsj? wrote:
> On Wed, 15 Apr 2009, Diego Biurrun wrote:
> > On Wed, Apr 15, 2009 at 07:35:54PM +0300, Martin Storsj? wrote:
> > >
> > > I've made a wrapper around the AMR codecs from Google Android (from a
> > > package named OpenCore, provided by PacketVideo); this is an "as simple as
> > > it gets" and proof of concept wrapper providing the same interfaces as
> > > libamr-nb/wb as used by ffmpeg. (Benjamin Larsson mentioned the
> > > availability of these codecs in October, in
> > > http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-October/055088.html.)
I finally got around to testing the opencore AMR libraries. They work
nicely and of course pretty much anything is better than the non-free
> > I'm not sure this is the best approach. Is there a disadvantage to
> > using a separate wrapper?
> The wrapper is very thin and just maps the interface to the AMR
> implementation in OpenCore. The main effort is to be able to build the
> relevant parts without getting all the rest of OpenCore and the kitchen
> sink, and figuring out what's a suitable level of abstraction in the
> OpenCore AMR routines. It could of course be argued that this just should
> be a repackaging of the AMR parts of OpenCore, and support for this as yet
> another external library should be added to ffmpeg.
> This was, incidentally, one of the tasks on the "Small FFmpeg Tasks" at
> added by Benjamin Larsson I think.
> I don't really have much opinion in this question, this was mostly a proof
> of concept. In this approach, the same drop-in replacement could perhaps
> be used by other projects that currently link to libamr, too.
So where do we go from here? I'm not sure if it's a good idea to really
build a drop-in replacement for libamr. There should be some way to
distinguish the two libraries and just use the Apache-licensed one.
One way to achieve this would be to rename the libraries, i.e. not use
libamrnb.* and libamrwb.* as names but libamropencore or whatever
More information about the ffmpeg-devel