Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: FAAD2 Licensing (Read 83459 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

FAAD2 Licensing

Does anyone here know what's going on with the licensing change in FAAD2 cvs? The included COPYING file is still straight GPL, but the source files include the following:

Quote
** Software using this code must display the following message visibly in the
** software:
** "FAAD2 AAC/HE-AAC/HE-AACv2/DRM decoder © Ahead Software, www.nero.com"
** in, for example, the about-box or help/startup screen.


Now, IANAL, but that seems GPL incompatible to me, as the GPL states:

Quote
You may not impose any further restrictions on the recipients' exercise of the rights granted herein.


I have tried to contact Menno on the matter without any success, can anyone else cast any light/opinions?

FAAD2 Licensing

Reply #1
From the GPL:

Quote
1.  You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.


It is not an additional restriction, it clarifies how we interprent this part of the GPL.

FAAD2 Licensing

Reply #2
But that requirement applies to source code, not to the gui of a linked application.

FAAD2 Licensing

Reply #3
In addition,

http://www.gnu.org/copyleft/gpl.html

There is a guidance about applying copyright notices to source code and executable programs:

Quote
If the program is interactive, make it output a short notice like this when it starts in an interactive mode:

Gnomovision version 69, Copyright © year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
type `show w'.  This is free software, and you are welcome
to redistribute it under certain conditions; type `show c'
for details.


So, our addition is also an additional clarification of the guidance.

IMHO, clarifying the copyright owner (which is usually done) is, by no means, an additional restriction of the license. I believe that this notice does not violate GPL freedoms in any way.

FAAD2 Licensing

Reply #4
Quote
If the program is interactive, make it output a short notice like this when it starts in an interactive mode:


That guidance says nothing about outputting the copyright notices for code written by other people which you may have included.

Quote
IMHO, clarifying the copyright owner (which is usually done) is, by no means, an additional restriction of the license. I believe that this notice does not violate GPL freedoms in any way.


Ok, let's say hypothetically I wish to include faad2 source code in another library, say xine-lib. Now, xine-lib has no about box or help screen or anything, it's a library. So, this means as xine-lib authors we now have to impose a requirement on anyone writing a xine-lib frontend to put the message on their about/help box.

This is an additional restriction on our use of the code under the terms of the GPL.

FAAD2 Licensing

Reply #5
Quote
Quote
If the program is interactive, make it output a short notice like this when it starts in an interactive mode:


That guidance says nothing about outputting the copyright notices for code written by other people which you may have included.


Your program is a derived work of those programs, of course it applies.

Quote
Quote
IMHO, clarifying the copyright owner (which is usually done) is, by no means, an additional restriction of the license. I believe that this notice does not violate GPL freedoms in any way.


Ok, let's say hypothetically I wish to include faad2 source code in another library, say xine-lib. Now, xine-lib has no about box or help screen or anything, it's a library. So, this means as xine-lib authors we now have to impose a requirement on anyone writing a xine-lib frontend to put the message on their about/help box.

This is an additional restriction on our use of the code under the terms of the GPL.
[a href="index.php?act=findpost&pid=313262"][{POST_SNAPBACK}][/a]


Nonsense. You don't have to do anything. It's up to people using your library to check the license of the work, and as we already explained, the GPL already requires a notice:

Quote
c)  If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)


This is exactly what the FAAD2 license says. If you have a startup screen, of help-about boxes, or any kind of copyright blurp, please put the copyright message there.

FAAD2 Licensing

Reply #6
Quote
Nonsense. You don't have to do anything. It's up to people using your library to check the license of the work, and as we already explained, the GPL already requires a notice.


xine-lib is straight GPL licensed. The GPL does not state anywhere (that I can see anyway) that copyright notices must be displayed in the gui of the application, only in the source.

FAAD2 Licensing

Reply #7
This is false, I just quoted the appropriate paragraph above.

FAAD2 Licensing

Reply #8
No it doesn't, as it applies to source code copies.

Quote
1.  You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.


The issue here has nothing to do with source code.

FAAD2 Licensing

Reply #9
Hmm, I'm not a lawyer, but the last part of Section 2c of the GPL states (as quoted below):

Quote
(Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)


Section 2C appears to be the portion being discussed (as no-one disputes that credit should remain in the source). It seems that exception would apply to the situation of FAAD2 used as a library, as it normally doesn't "print" output (unless you want it verbally announce the copyright  ).

So, this whole point might be moot for non-console versions of the software? If not, this reminds me a little of the recent XFree86 licensing shenanigans in which the XFree86 authors stated that software linking to the X libraries must display a credit notice -- rendering it GPL incompatible and causing a fork by the folks at X.org.

It might be a good idea to reword your license clarification to state: "The credit under Section 2C must be of the form..." or similar? Perhaps check with the FSF?

FAAD2 Licensing

Reply #10
Quote
The issue here has nothing to do with source code.


If you mean the one you just quoted, then it certainly does not ;-) But Garf quoted paragraph number 2

Quote
2.  You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:

a)  You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.

b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.

c)  If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)


Source code, by itself - does not display anything. section 2c is related to the execution of the derived works  Integrating third-party GPL code does not mean transfering of Copyright rights and removing Copyright rights of the original work -

Final work is Copyright © Original GPL Module Author and Copyright © GPL Derived Work Author.

So, in my opinion - it is fair to put the copyright notice of all relavant modules if the application has about box or copyright notification, if these exist and/or if it makes sense to put them (i.e. application has visible user interface)

FAAD2 Licensing

Reply #11
Quote
If you mean the one you just quoted, then it certainly does not ;-) But Garf quoted paragraph number 2


Heh, he changed his post to include paragraph 2 after I'd replied.

Quote
This is exactly what the FAAD2 license says. If you have a startup screen, of help-about boxes, or any kind of copyright blurp, please put the copyright message there.


No, it isn't exactly the same. The FAAD2 license says that you must display it, it allows no provision for a program that doesn't have anywhere to display it.

FAAD2 Licensing

Reply #12
Quote
The FAAD2 license says that you must display it, it allows no provision for a program that doesn't have anywhere to display it.
[a href="index.php?act=findpost&pid=313278"][{POST_SNAPBACK}][/a]


Hmm, that seems like a valid point. We'll address that.

FAAD2 Licensing

Reply #13
Great stuff

Interestingly I wonder if a xine-lib frontend would have to display any copyright messages for xine-lib components, assuming it is distributed separately. Returning again to paragraph 2:

Quote
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works.


Of course this depends on your interpretation of "independent and separate", which seems quite subjective imho.

FAAD2 Licensing

Reply #14
 Well.. hmm... if a derived software product has the AAC decoding capabilities and it happens to use FAAD2 for decoding, I would say that is hardly "independent and separate" from FAAD2 ;-)

But, you are right - definition indeed seems to be open to subjective interpretations

FAAD2 Licensing

Reply #15
Was FAAD sponsored / owned by Ahead from the beginning? Or did they just hire all the developers after the fact and get the copyrights transferred? I don't remember seeing the notices of copyright a year back when I was fiddling with FAAC & FAAD.

I'm not trying to start any flames, just looking for info.

FAAD2 Licensing

Reply #16
FAAC is GPL, not owned by Nero
FAAD is LGPL, owned by Menno (I think?)
FAAD2 is GPL, owned completely by Nero

FAAD2 Licensing

Reply #17
Quote
FAAC is GPL, not owned by Nero[a href="index.php?act=findpost&pid=313334"][{POST_SNAPBACK}][/a]


LGPL

FAAD2 Licensing

Reply #18
IIRC, XFree86 put in an advertising clause and thus many distributions turned theior backs to it, as they think this is GPL incompatible. So xorg's X server (a XFree86 fork prior to license change) which doesn't have such an advertisind clause is preferred.

I think we have the same situation with FAAD2, as in my eyes the changed to GPL license are the same. So if major distibutors (esp free debian distibution, free gentoo distribution, etc) think that this is GPL incompatible, I'd wonder if they were all wrong and FAAD2 wouldn't have the same problem.

FAAD2 Licensing

Reply #19
The XFree86 license added restrictions to end-user documentation, among other things, and wasn't GPL to begin with.

The FAAD2 license hasn't even changed. We clarified how we see a statement that is already in the GPL.

You state that "in my eyes the changed to GPL license are the same" yet you fail to point out why this could be so and ignore the previous discussion, and then wonder if the linux distros are wrong. Way to go!

FAAD2 Licensing

Reply #20
People may be getting this confused with the bad part of the old BSD license, namely the "obnoxious advertising clause". There were two bad parts of that, and both are not the same as the chunk of comment that jstembridge quoted in the first post. The first bad part of the BSD clause was that it wasn't just about run-time, it was advertisements, documentation, and such. The other problem was that in the original BSD license, the phrase "This product includes software developed by the University of California, Berkeley and its contributors." was directly in the license. So it wasn't just a copyright thing, it was part of the license itself. The big trouble happened when other contributors started putting their own names in there in addition to UCB. That clause was incompatable with the GPL; it has since been removed from the main BSD license.

So in short, FAAD2 is fine with the GPL, but someone who only has a brief knowledge of open source licenses and thier history would be confused on seeing that notice.

FAAD2 Licensing

Reply #21
Still, what if people want to use FAAD2 code in an "closed" (ie: embedded) system - for example if I developed a portable player with no LCD screen, which therefore couldn't display acknowledgements ?

I would have thought that publishing the full firmware source code (including the authors' source code, its acknowledgements and my changes to it) would be enough..  Does that mean now, the authors' names would have to be advertised in the product itself ?

FAAD2 Licensing

Reply #22
Any updates on FAAD2 code? The latest I see in the source of AudioCoding.com is dated 9/2004. Have there been any improvments since then and/or new code updates that have been released? If so, perhaps that source code needs a "refresh".

FAAD2 Licensing

Reply #23
Quote
Any updates on FAAD2 code? The latest I see in the source of AudioCoding.com is dated 9/2004. Have there been any improvments since then and/or new code updates that have been released? If so, perhaps that source code needs a "refresh".
[a href="index.php?act=findpost&pid=313389"][{POST_SNAPBACK}][/a]

Have you come across any aac, mp4, m4a etc. file FAAD2 can't decode properly? In that case it might be time for an update.... FAAD2 is a decoding library and as long as it decodes current AAC files (in and out of mp4 container) and does that job well, there's really no need for any update as far as I can understand....?
"ONLY THOSE WHO ATTEMPT THE IMPOSSIBLE WILL ACHIEVE THE ABSURD"
        - Oceania Association of Autonomous Astronauts

FAAD2 Licensing

Reply #24
Quote
Have you come across any aac, mp4, m4a etc. file FAAD2 can't decode properly? In that case it might be time for an update.... FAAD2 is a decoding library and as long as it decodes current AAC files (in and out of mp4 container) and does that job well, there's really no need for any update as far as I can understand....?[a href="index.php?act=findpost&pid=313451"][{POST_SNAPBACK}][/a]


Current CVS code won't decode parametric stereo. Menno also mentioned there have been some improvements in the Ahead source tree.

He said he'll synch trees soon, after he returns from a trip. Then there'll be a new release as well.