Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

open source and commercial AAC libraries?

7 views
Skip to first unread message

Jeremy Noring

unread,
Dec 23, 2009, 9:53:53 AM12/23/09
to
I know this is slightly OT for the group, but I was curious what
libraries everyone here is using for AAC decoding. I need an AAC
DShow decoder filter, and there's a lot of options (and I'm OK with
wrapping a raw library myself). My AAC audio is pretty basic (mono
AAC-LC), so I don't need anything too fancy.

As far as open source goes, the only library I've seen is FAAD2, but
the GPL license makes it difficult to work with (if I wrap it in a
directshow filter, and then have directshow instantiate the filter,
does that constitute "a derivative work?").

I've also heard there are reference implementations from 3GPP and ISO
MPEG--has anyone used those?

Lastly, there are commercial libraries offered from companies like
Frauhofer, Dicas, etc.

Ralf Globisch

unread,
Dec 24, 2009, 5:21:25 AM12/24/09
to
Have a look at http://blog.monogram.sk/janos/directshow-filters/
AFAIK its under LGPL.

Jeremy Noring

unread,
Dec 30, 2009, 1:55:49 PM12/30/09
to
On Dec 24, 2:21 am, Ralf Globisch <ralf.globi...@gmail.com> wrote:
> Have a look athttp://blog.monogram.sk/janos/directshow-filters/
> AFAIK its under LGPL.

Yes, I've seen that filter implementation--it uses FAAD2 for the
decoder, which means it is GPL. The encoder is FAAC, which is LGPL.
radscorpion also has a pretty decent x264 encoder filter
implementation that I use in some internal test harnesses that works
very well.

It is unclear to me if writing a directshow filter and then having
dshow load/locate the filter constitutes a "derivative work" that
would require me to open-source my entire application or not.

babgvant

unread,
Dec 31, 2009, 8:04:20 AM12/31/09
to

My read of the GPL is that it's only viral if you use the code
directly or link to it. DS filters are dynamically loaded at runtime,
using this filter isn't any different from using the MS filters
included in Windows.

If you ship the filter in your application you will need to have the
source on hand if someone requests it though.

Alessandro Angeli

unread,
Dec 31, 2009, 3:36:44 PM12/31/09
to

From: "babgvant"

> My read of the GPL is that it's only viral if you use the
> code directly or link to it. DS filters are dynamically
> loaded at runtime,

The GPL does not differentiate between static linking by the
linker or dynamic linking by the system loader.

> using this filter isn't any different
> from using the MS filters included in Windows.

It is because the license is different: MS's EULA allows you
to dynamically link to them without the GPL constraints (but
with other constraints that however are less problematic).

> If you ship the filter in your application you will need
> to have the source on hand if someone requests it though.

If your application statically or dynamically links to the
filter explicitly (and using its friendly name or CLSID to
identify it can consitute a sort of explicit dependency),
regardless of whether you distribute it with the application
or not, then you have to release the source code for the
whole application.

From my understanding, the only way in which your source
code can be kept closed is if your whole application never
explicitly references the GPL'ed library and can work
without it (providing the same level of functionality).

What you say applies to LGPL'ed libraries and only under
certain conditions.

--
// Alessandro Angeli
// MVP :: DirectShow / MediaFoundation
// mvpnews at riseoftheants dot com
// http://www.riseoftheants.com/mmx/faq.htm


0 new messages