From: Steve K. <st...@st...> - 2004-04-12 14:03:09
|
al...@of... wrote: >On Fri, Apr 09, 2004 at 08:37:01PM -0400, Steve Kann wrote: > > >>On Apr 9, 2004, at 7:55 PM, Steven Sokol wrote: >> >>The most important thing is to modularize the interface to the codecs. >>Whether or not the codecs are included in the library is less important >>(although, for iLBC, there's licensing issues to consider, because it's >>not GPL-compatible). >> >> > >Is really Not GPL-Compatible? > > Read the license and decide for yourself. It seems pretty clear that they are not. >The code for ilbc is in the asterisk source code (a GPLv2 application), see codecs/ilbc >in the cvs. > >If they are not compatible, will have to leave the sources. > > Firstly, having GPL and non-GPL sources in the same repository doesn't violate the GPL. That's why there's no real problem with having the iLBC sources in the iaxclient repository. However, once you link iLBC into iaxclient, the result is no longer entirely LGPL. So, you couldn't use it with a GPL-licensed front-end, for example. Secondly, I believe that asterisk's license is really a GPL with exceptions, for iLBC and perhaps some other things that are not GPL-compatible. Since digium holds the copyright for all of asterisk, they can make exceptions like that. >If iaxclient will be use the ilbc codec, must use the same source code as asterisk. >To use different drafts will become a great problem in the future. > > You don't need to use the same source code to be compatible. I believe that GIPS has several implementations of iLBC, for example, that are compatible. As long as the actual binary formats are the same, you can have different implementations. >>For each codec, you'll make a codec_xxx.c file [a codec_xxx.h file too, >>perhaps, but I'm not sure it's necessary]. This file will have an >>"init" function that will initialize the encode and decode states, >>stash those in it's private storage area, and return a struct >>iaxc_codec function. >> >> > >Something like in asterisk? ;) > > Yes, or any other modular software. There's tons of similar examples. -SteveK |