Mariana Draper wrote: > Hi, > > I am working on a patch for sipXezphone, adding support for g729 using > the encoder and decoder from Voice Age. I have been trying but i still > cannot make it to work.. > > My question is: does anyone know which clases of the sipXezPhone shuld > I deal with? I am not very familiar with the whole project. Maybe > someone knows some of the classes were i should modify something so as > to add another codec. > > Of course when i finish this implementation, i will send it to all of > you :) > > Thank you very much! > Mariana. > > ------------------------------------------------------------------------ > <http://us.rd.yahoo.com/evt=49935/*http://games.yahoo.com>
Yay, this might not be so easy if you think it can be done by modifying sipXezphone. Alexander Chemeris wrote an email which is in the mailinglist maybe 2 months back about adding a new codec. You basically need to add a wrapper class for decoder + encoder for sipxmedialib + some more modifications. I do not consider sipXezPhone worth adding any new features except maybe functional video (which maybe works partially in sipxmediaupdate branch), as its moreless only a demonstration that sipXtapi really works (on my PC it didnt work at all until I fixed some bugs). I have a functional softphone using sipXtapi that can actually be used as a softphone not only as a demonstration and might contribute it under GPL. It uses also wxWidgets but 2.8.2, user interface is made in dialogblocks, its loaded during runtime from XRC xml file so it supports basic skinning that xrc alllows (reorganization of positions and sizes of widgets, bitmaps on bitmapbuttons - i made a custom togglebitmapbutton, changins texts, adding new bitmaps, changing various icons), unfortunately full skinning is not possible as projects like wxSkin dont support the widgets I needed, it has call history, contact list with groups support, multiple sip profiles, multiple lines (lines are real sipXtapi lines, so you can have multiple calls on the same line, so to do an operation on a call you need to select a call not line), conference manager, multiple languages support basically all you need to use it as a softphone. SipXtapi functions that take too long to complete (initialization ,reinitialization, uninitialization, line registration) are called from another thread so you get no freezing during change of sip profile (I do sipxreinit as I do not consider sipxtapi stable enough to just unregister lines, change sipproxy and register lines). There are still some serious bugs in sipxtapi or sipxcalllib that I need to fix until sipxtapi can be really considered reliable for me: 1.) Crashes during reinitialization of sipxtapi. Crash in select in SipClient while other thread does close on the same socket. If you have dual core processor the this is problematic. This crash is inside select winsock function, regardless of the version I use. Currently this is solved by my patch/hack not using blocking select, it uses 200ms timeout. But this is not acceptable. There are 2 more crashes related to reinitialization, which have been fixed by my patches (one is in previous post, and 2nd is in jira) 2.) Split on conference call does something to it and no more call events are received for it. This has to be fixed. 3.) Sometimes line registered event is missing, this has to be fixed. 4.) I need to have a look at audio during call, I think something is not ok here. 5.) There is no simple way to implement custom ringtones in sipxtapi. You can only play wav files in a call which is not good. If you have more calls and want to have custom ringtone, you have to play the ringtone on the call in focus, not on the call in alerting state (otherwise u dont hear anything). 6.) Is SRTP working in sipXtapi? Is it worth spending time to get it working or is it too buggy? Jaroslav Libak _______________________________________________ sipxtapi-dev mailing list [email protected] List Archive: http://list.sipfoundry.org/archive/sipxtapi-dev/
