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/

Reply via email to