Author: Andre Adrian
Version: 20apr2008
This directory is about VoIP telephone conference with speaker phones (hands free telephones). The application is an intercom - a telephone that has only short-dial buttons. See file CHANGES for the actual set of features.
faq_ec.txt Frequently asked questions draft-conference-01.txt Paper that explains the algorithm CHANGES Version History intercom-0.4.1-1.i386.rpm Latest Linux (SuSE 9.1) executeables RPM intercom-0-4.1.tgz Latest Sources intercom_user-guide_01.pdf User Guide for intercom echounterdruck.pdf German article about AEC in intercom
The application can:
Intercom is still very limited. But the things it can do, it does very well!
- dial an intercom partner via short-dial buttons
- transport your voice over IPv4 with RTP UDP unicast data packets
- make a telephone conference
- support wideband (16kHz sample frequency) Speex codec
- do call diversion
To play with intercom, you should download intercom-0.4.1-1.i386.rpm now. Extract the RPM as superuser (root) with the command:
rpm -Uvh intercom-0.4.1-1.i386.rpm
To start the application enter as normal user:
intercom
If this is the first start of intercom you get a message to edit file ~/.intercom.conf for your short-dial labels and your IP-addresses. Please do so and start intercom again.
Read intercom_user-guide_01.pdf on this webpage and the shell script /usr/local/bin/intercom to get an idea of what is going on. For better echo cancellation start intercom with the -m or -l option.
For a first test talk to yourself by clicking the button for your own IP-address, e.g. EDDF TEC2 if your computer is 192.168.1.2. The button should become green.
Note: A short click (less then 300ms) toggles on/off, a long click works as push-to-talk.
ATTENTION: The intercom application needs PCM out for playback. This hardware device is used also by other sound programs like MP3 players (e.g. xmms) or WAV record/playback programs like sweep and audacity. The intercom application blocks (freezes) as long as another program uses PCM out. There are ways around this like using ALSA with dmix plugin or esound. But this is not implemented.
If you dial another intercom station, you have a one-way connection from your microphone to the loudspeaker of your intercom partner. If your partner clicks on the proper button (the magenta one), both of you have a two-way communication. Now you or your partner can dial more intercom stations to make a conference with maximum 6 stations.
Note: Start intercom with the -t option to get "everybody can talk and listen with everybody else".
Read the file draft-conference-01.txt for more information on telephone conference.
Read the file draft-aec-03.txt for more information about acoustic echo cancellation.
For Codec License see ITU-T G.191, IETF RFC3951 or www.speex.org
Narrowband (8kHz sample frequency):
Name
Bandwidth
License
IETF iLBC 15.2kBit/s Global IP Sound iLBC Public License ITU-T G.711 A-law 64kBit/s ITU-T SOFTWARE TOOLS' GENERAL PUBLIC LICENSE ITU-T G.711 u-law 64kBit/s ITU-T SOFTWARE TOOLS' GENERAL PUBLIC LICENSE ITU-T G.726 32kBit/s ITU-T SOFTWARE TOOLS' GENERAL PUBLIC LICENSE 3GPP GSM 13.2kBit/s ITU-T SOFTWARE TOOLS' GENERAL PUBLIC LICENSE
Wideband (16kHz sample frequency):
Name
Bandwidth
License
Speex 27.8kBit/s Xiph Licence (BSD like Licence)
Author: Andre Adrian
E-Mail: Andre dot Adrian at dfs dot de
Postal: DFS Tower Frankfurt
Mr. Andre Adrian
Flughafen Gebaeude 501
60549 Frankfurt, Germany