In my limited, and probably wrong understanding, isn't the present situation the kind of mess that LGPL is supposed to clear up - LGPL says go ahead - use it as a library - GPL doesn't. ?

I wish there was a "do what the **** you like with it" licence!

Of course, in reality, if the software author can't afford a lawyer or court case, then that is the licence that people can use the software under. Licenses, like patents, are a waste of time if you can't defend them; better to spend your time/money elsewhere if this is the case. (not in the current case, just a general observation for truly non-commercial activities).

Cheers,David.

P.S. These are my questions / opinions to provoke an interesting discussion, where I hope I might learn something!

I have seen things change, over the years, it seems the main focus these days is to ring fence free software against the big commercial players like Microsoft, Apple. Gone are the ideals....Take this quote:

QUOTE

``Free software'' is a matter of liberty, not price

This storm in a teacup, has resulted in FAAD2 being removed from the install of uPlayer, uPlayer is a free program, I am not sure that removing FAAD2 from the install has increased peoples liberties, rather the reverse, they now might try it and pronouce it as 'crap' as it does not decode m4a (regardless if they figured out to install m4a as seperate). Then again who are we to grumble, FAAD2 is not ours, in many ways we are like a dog which has been thrown a bone, the dog should not complain about the bone.

Lots of programs, especially free programs such as EAC, allow me to use the LAME encoder. But, as far as I can tell, there is no way to use it legally (with these free programs). The royalty is only $2.50 and I wouldn't mind paying $5 or $10 for a fully-legal encoder!

IIRC, a long time ago I read a suggestion that since most people (ie Windows and Mac users) had an OS that came with an MP3 player, a payment had already been made for the use of the MP3 patents on that machine. Linux, of course, is very important, but is not a practical concern for a lot of us.

Having seen what a legal tangle "Free" software can create (I have no clue about the rights and wrongs of the specific case in this thread, but for the first time I see why M$ have such a big hate on FOSS), I don't know whether having a copy of WMP or iTunes legally covers you for the use of LAME, but it seems OK to me ethically, and I don't think the patent holders are going to come after me.

Lets think some more about this...so if the hard line is taken nothing can go near a GPL lib without being GPL.

I'm fed up arguing with you since you clearly don't understand the intent or the meaning of the GPL and you take a view on what you can do with a GPL library which is not shared by the FSF or various legal judgements which have actually gone to court (mainly in Germany). The GPLv2 is very widely discussed and its implications for C programs are very well understood.

You persist in misunderstanding your obligations under the GPL, I suspect that only thing that will educate you is a lawsuit which based on your current posts you *will* lose if you claiming rights to under the GPL to distribute any of the codecs on your "codec central" page.

generally consider a work a derivative if it contains a substantial amount of material from a preexisting work.....The courts have not, however, done much to relate this concept of derivatives to software law, where software routinely "links" to other software in order to create one "meta-program.".....so, too, it seems reasonable to believe that software that dynamically links to GPL code (including Linux) should be safe from the GPL's so-called "contamination."

I guess Novell do not understand it your way either.

> (mainly in Germany).

You might find Germany rule one way, USA another, France another...I know my jurisdiction is outside of the EU so can safely ignore any ruling in Germany.

This has never been about how we use FAAD2 (dll, lib or exe), rather about attribution (an admitted oversight on ourselves, even with the relevent permissions we had from Nero), I believe there is no longer an issue between Nero and ourselves.

I will end with these points: it would take 30 minutes work to move any codec from .lib to .dll, or .exe using stdio, I am 100% sure:

Main Program << Stdio << Generic Stdio Helper.exe << GPL lib

that the main program would not fall under the GPL, where as the generic stdio helper would.

In the end, assuming Nero is the sole copyright owner of the GPL'd code...whatever mutually agreed-upon arrangement is made between spoon and Nero is fine, since they can license it within the GPL or in any other custom way they want.

It is correct to say that nothing can link to FAAD2 unless it is licensed under a GPL compatible license

Lets think some more about this...so if the hard line is taken nothing can go near a GPL lib without being GPL. Lets take Winamp as an example (and faad2, for a moment lets suppose Winamp had no m4a decoding). Now if Nullsoft were to implement a decoder using FAAD2 you are saying that Winamp would have to fall under GPL, even if said codec was a seperate download.

I'm really surprised to hear you ask this. Obviously yes, you cannot make a GLPed Winamp plugin. This is the whole point of the GPL.

QUOTE (spoon @ Aug 6 2008, 04:24)

What if a 3rd party makes the codec?

Anyone who uses it is violating the GPL.

QUOTE (spoon @ Aug 6 2008, 04:24)

what if Winamp linked to that codec on their site, or included it on their site? Not so clear cut is it?

No I'd say this is pretty clear. You can't do any of that.

QUOTE (spoon @ Aug 6 2008, 04:24)

I take a different view on these libraries they created to perform a defined function, by including that function in a larger system you are not creating a new derrived work of the library, as the library is still doing what it was designed to do, unchanged, interacting through the interfaces as designated under the GPL (be them functions in a DLL or command line switches of an EXE, no real difference).

Well your different view differs primarily in that it is incorrect. Otherwise the Library GPL would be rather redundant, eh?

Anyway, the GNU people even have a FAQ entry:

QUOTE

If a library is released under the GPL (not the LGPL), does that mean that any program which uses it has to be under the GPL or a GPL-compatible license?

Yes, because the program as it is actually run includes the library.

QUOTE (spoon @ Aug 6 2008, 04:24)

Now as far as the GPL is concerned what matters legally is the text in the GPL and how a court would rule on that in specific cases not what is written after the fact on gnu.org, notice how the line taken there is even a seperate exe can pass GPL to a controlling program if shared memory is used to communicate, to me it smacks of people subverting ideals and going for the control factor above the ideal of the GPL. Lets not forget why the GPL exists and keeping it specific to FAAD2, the idea of GPL is if anyone improved FAAD2, or fixed a bug in it then the code has to be made available for all, that is it, pure and simple. Including FAAD2 in a larger program does not change it one bit.

Wait, if you don't think you're violating the GPL, why be concerned with how you can best cheat it in court?

And then if you're going to try and cheat your way out of it, why are you concerned with "why the GPL exists"? After all, you've already said that all that matters is "how a court would rule"?

None of the plugins that Nullsoft creates use any GPL code nor are licensed under the GPL. There is some LGPL which we fulfill our obligations for either by LGPL'ing the plugin (like the old FLAKE encoder plugin) or by using DLLs for the appropriate libraries (such as the libsndfile-based in_wave which uses libsndfile.dll). I realize no one is making any accusations about us in this thread, just stating that we've adopted a "No GPL" policy to avoid the problems being discussed in the 2008-half of this thread.

That said, there is certainly the possibility Winamp will load a third party GPL plugin, such as in_mad. My understanding is that a GPL Winamp plugin is illegal "on it's face" without specific exemptions. It is certainly an interesting conundrum as Winamp did not purposefully load some GPL plugin, rather it was written by a third party and placed in a certain location by the user.

In response to spoon's query, this is why we use libmp4v2 (which uses the Mozilla Public License which is similar in spirit to LGPL. Most of the changes in libmp4v2 in the past few years have been from contributions given back to MPEG4IP) and license AAC decoding commercially from Coding Technologies. Menno was very helpful to us when we first implemented MP4 support (the 5.02 release notes even thank him) so we were certainly very aware of FAAD but choose not to use it.

It is correct to say that nothing can link to FAAD2 unless it is licensed under a GPL compatible license

Lets think some more about this...so if the hard line is taken nothing can go near a GPL lib without being GPL. Lets take Winamp as an example (and faad2, for a moment lets suppose Winamp had no m4a decoding). Now if Nullsoft were to implement a decoder using FAAD2 you are saying that Winamp would have to fall under GPL, even if said codec was a seperate download.

I'm really surprised to hear you ask this. Obviously yes, you cannot make a GLPed Winamp plugin. This is the whole point of the GPL.

Just to clarify this point, you can make a GPL plugin for Winamp. But only the FAAD copyright owners can make a FAAD GPL plugin for Winamp, because an exception must be made to the license.

If the program uses fork and exec to invoke plug-ins, then the plug-ins are separate programs, so the license for the main program makes no requirements for them. So you can use the GPL for a plug-in, and there are no special requirements.

If the program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single program, which must be treated as an extension of both the main program and the plug-ins. This means that combination of the GPL-covered plug-in with the non-free main program would violate the GPL. However, you can resolve that legal problem by adding an exception to your plug-in's license, giving permission to link it with the non-free main program.

If the program uses fork and exec to invoke plug-ins , then the plug-ins are separate programs, so the license for the main program makes no requirements for them. So you can use the GPL for a plug-in

Exactly the point I have been trying to make, any GPL codec can go into an .exe of its own and be controlled by the main program, without shared memory and by that definition any GPL code could be used...but like 99.999% of software developers, we steer clear of the GPL (if you had of asked me 5 days ago I would have replied nothing we use is under the GPL, Menno said otherwise, we agreed).

People tend to take the GPL not as a legal agreement between two parties (to be sorted out amicably between those 2 parties), instead view it as a religion and deleve in all guns blazing, common sense goes out of the window. Often the double standards of those GPL fanatics is unbelievable, if a Harry Potter book was shared around in a .txt file, it might be viewed as fair game, when in reality both Harry Potter and GPL code are exactly the same, a copyrighted item.

People tend to take the GPL not as a legal agreement between two parties (to be sorted out amicably between those 2 parties), instead view it as a religion and deleve in all guns blazing, common sense goes out of the window. Often the double standards of those GPL fanatics is unbelievable, if a Harry Potter book was shared around in a .txt file, it might be viewed as fair game, when in reality both Harry Potter and GPL code are exactly the same, a copyrighted item.

I'm not really sure how expecting people to read or at least understand the gist of licenses on their code is "a religion", but in general I can see why you'd upset a lot people if you keep depending on dumb luck to be compliant with their licenses.

Why not opensourcing uPlayer/dbPoweramp? It's not like that going to change much for 99,999% of it's users.

Do you think it's ok to pay for software? dbPoweramp isn't free.

Possibly someone ist trying to make (part of) a living from it...

For me that's perfectly ok. And dbPoweramp surely isn't a mainstream software with many (possible) purchasers but something that is very useful for some people with special requirements. I don't think, anyone has the right to expect the author to give it away for free. If you want an open source solution with the same functionality, write it by yourself and release it...

Opensourcing software doesn't mean you can't keep on selling a binary version. Most people will not know or want to know how to compile the source. Also, I don't see where I expect someone to give 'it' away for free (there is a free version of dbPoweramp, right?), I'm just enquiring if spoon has considered another way out of this (namely, opensourcing his software).

Like I said, for everyone but the few people who actually care it changes nothing. But the upside is you can link to just about any other opensource software without worrying bout this license business.

You're comment about how I should write my own software if I want it opensourced so badly conveys an unbased fear of opensource in general to me. Really, no need. Especially in this software niche where we're in it is extremely unlikely someone will actually fork and maintain you software, because you know best of all that is a tedious job. And the people willing to download the source and compile themselves are doing it for sports, because a free binary is provided already. And those few that download the source to get the paid pro features, we're not going to buy it anyway. And on top of that, there are way around that too (make the pro features closed source for example, you're the author so you can decide if you allow yourself to link against it ).

(make the pro features closed source for example, you're the author so you can decide if you allow yourself to link against it ).

This is a good suggestion, but I think if the "pro" features linked into any GPL software that Spoon did not own the copyright to, then you would be back to the original issue of linking a closed application with GPL code, right?

I am in agreement with Spoon on the fact that the different semantics used to access a GPL library are trivial differentiators. It seems that allowing non-GPL code to access GPL code through an EXE is a loophole that anyone can exploit to get around the license. Yes, in some cases it is not practical to design software in such a way, but in the majority of cases it would have little or no impact.

He could make his main program GPL (or LGPL, I don't know anything of this license business ) and link all the things (from other) against this, which is allowed. The, the pro features are a seperate package, which links against this main program too (but not, directly, to the other parts). Seems to me this is perfectly possible and allowed.

My point was, there are other ways to get out of this while still using FAAD (which is the big problem from what I can gather). In the end I think it's pretty dumb not to have acces to AAC music over some license issue, while I think I just demonstrated it wouldn't have to be like this, and still play by the rules.

Opensourcing software doesn't mean you can't keep on selling a binary version. Most people will not know or want to know how to compile the source. Also, I don't see where I expect someone to give 'it' away for free (there is a free version of dbPoweramp, right?), I'm just enquiring if spoon has considered another way out of this (namely, opensourcing his software).

Opensourcing something isn't always the answer, in the case of dbPoweramp if he put the core under a GPL compatible license he'd be able to link to FAAD2 but he may well lose the right to link to other commercial software. I don't know if dbPoweramp does it but for example it's impossible to add GraceNote cddb support using most opensource licenses.

Linking considerations beside opensourcing something also generally only makese sense when lots of people have an interest in maintaining it as an enabling technology. For example GCC is maintained by lots of companies to enable people to compile stuff for their processor, operating system etc.

Out of interest what does Foobar2000 use for AAC decoding? It says it supports AAC internally but it also says on the license page

"Note that a separate less restrictive license applies to open source parts, downloadable separately.

I am in agreement with Spoon on the fact that the different semantics used to access a GPL library are trivial differentiators. It seems that allowing non-GPL code to access GPL code through an EXE is a loophole that anyone can exploit to get around the license. Yes, in some cases it is not practical to design software in such a way, but in the majority of cases it would have little or no impact.

It's a barrier of entry thing, in order to "access it through an exe" the GPLed bit of software needs to either be something that can be driven from the command line or via a interprocess communication method. Feeding data via stdin, stdout, sockets etc. In reality there are only a small subset of code you might want to link to which is usable in this way due to speed or interface design reasons. Therefore the GPL achieves the majority of what it sets out to achieve and only fails in a subset of cases which if the FSF tried to fix it would cause a huge amount of collateral damage. It would be extremely difficult, if not impossible, to craft something which allowed a closed source program to be loaded by a GPLed OS but prevented a closed source program exec(3) ing a GPLed program and then talking to it via an interprocess communication method.

...Also, I don't see where I expect someone to give 'it' away for free...

You are right, you never said so.

QUOTE (Brent @ Aug 10 2008, 10:56)

...You're comment about how I should write my own software if I want it opensourced...

Was absolutely inappropriate.

Please accept my apologies!

I am maintaining my opinion but the way i expressed it wasn't fair.

Thomas

QUOTE (patmcg @ Aug 10 2008, 12:17)

QUOTE (Brent @ Aug 9 2008, 23:56)

(make the pro features closed source for example, you're the author so you can decide if you allow yourself to link against it ).

This is a good suggestion, but I think if the "pro" features linked into any GPL software that Spoon did not own the copyright to, then you would be back to the original issue of linking a closed application with GPL code, right?

I find it ironic that the best ripping programs are not open source, yet open source code does exist for this function. Instead of demanding that someone change the way he conducts business, maybe spend your time on improving the code that's currently available to you. If open sourcing is so superior then you guys should be able to surpass dBpoweramp and EAC in no time.