Yes, I seem to also be having similar problems relating to the ringing playback sounds playing forever even after the call is answered. I have not been able to solve it yet though.
My initial looking into the how this works in the plugin code, it appears the sounds, like the DTMF dial sounds and the ringing sounds are generated with the Java Applet AudioClip facility (a simple generic built into java media player), where the SIP softphone audio comes from a FMJ (or JMF before) codec over the RTP stream from the connected channel to the remote SIP service.
In my experimenting so far I have observed sometimes the ringing sounds don’t even play at all when making a call. its all silent and then hear connected remote audio all of a sudden.
So my theory is because these two audio facilities both are competing for some audio device resource access, possibly somewhere inside FMJ., or perhaps at the java level itself. I’m not that knpwledgeable about it yet. but I wonder if there was some kind of ‘my audio device is in use’ flag that would be used to synchronize these two different things from inside Spark SIP plugin, if that would simplify the problem of possibly two differnet things trying to write to the audio device within the same time. ?
that is, if it is something about conention of writing to the audio device. I know it is supposed to be possible for more than one ‘thing’ to be able to have sound played at the same time, thats what mixer objects are supposed to do for us. But perhaps, there is something within the FMJ implementation that is currently incomplete or not completely functional in all platforms and environmetns under all situations ?