Feature #283

Voice Support

Added by Guillermo Lo Coco over 13 years ago. Updated almost 13 years ago.

Target version:
Start date:
Due date:
% Done:


Estimated time:



I know that Beem is a new project, but I didnt saw this feature "request" before.
In the company I work for, all employees have XMPP voice service on mobile through 3rd party clients, and we use it everydays as PSTN replacement.
Also want with my friends interoperability using xmpp.

Im sure this feature will rock.

Best regards.

ps: Maybe in the future -> Video/voice call - vp8/rtp

Related issues

Related to Feature #29: Creation d'une session jingle et echange de donneesAssignedNikita Kozlov05/01/200905/31/2009

Related to Bug #380: how to remove track fileNewNikita Kozlov08/14/2011


Updated by Frédéric Barthéléry over 13 years ago

We have made some work in this direction, some months ago. But there is still a lot of work to do and it is not the priority (mainly because of the lack of developers).
You can get the repository here
I suggest you to discuss this subject on the mailing list :


Updated by Nikita Kozlov almost 13 years ago


I have merged the current trunk ( with the old beem-audio repository (also fixed some bugs).
Also, the location of the repository has changed, you can now find it here:

I will try to resume here what is working and what I guess need more work for a release :

Working (but may need some more work for a stable release):
  • an activity for incoming/outgoing calls
  • calling a specific xmpp resource
  • placing a call to a Beem client
  • incoming call invite from a Beem client
  • closing/cancelling an outgoing call
  • basic RTP transport (no nat traversal)
  • basic RTP implementation (especially : no rtcp, no jitter buffer) (taken from an old version of
  • codec : PCMA,PCMU,GSM
Not working (bugs):
  • calling a not Beem client (need to take a look on the smack jingle implementation, it may be a lot of work)
  • closing/cancelling an incoming call
  • bad voice quality (because of the too much basic mediastreamer)
Not implemented:
  • Jingle service discovery (we don't announce that we support jingle, we don't know if the other side has)
  • RTP with nat traversal ( ICE transport, since the transport exist in smack, maybe it can be easy to implement)
  • RTCP, jitter buffer (need to change the current mediastreamer implementation, I highly recommend
  • DTMF
  • better voice codec, like speex (and maybe some android internal codec like amr, quite easy if we use mediastreamer2)
  • Video
  • Jingle file transfer

I suggest to concentrate the efforts on testing the smack jingle interoperability and fixing the 2 first bugs, Jingle service discovery, ICE transport, replacing the Sipdroid's mediastreamer by linphone's mediastreamer2 (rtcp, jitter buffer, more codecs, video on android, better voice recording).

Also available in: Atom PDF