Gspeakfreely
Gspeakfreely is a VoIP system with a flexible component system. It
implements a set of audio processing components which can be connected to
each other or mixed together. The most important components are net
in/output, which implement VoIP functionality and the OSS-DSP in/output
component. Additionally there is a ISDN in/output component that allows
making actual phone connections, and a file input component that can also
play Internet radio streams. Also included is a fading plug-in, that can for
example fade incoming calls into your music. New components can be developed
for specific purposes, and combined with existing ones.
The net in/output components also have conference support. The net input
component can mix incoming audio data from different hosts.
New Features in 0.6
- Encrpytion is easier configurable
- You can use gpg to transfer the key
- Buddy list (with an sflwld server, try the server running on opensource.wearlab.de)
- Voice activation
- Easier config file syntax
- Partly support of the RTP protocol
- LD_PRELOAD to redirect output to /dev/dsp from other applications to
gspeakfreely
- Enhanced playlist
For a quick start, you can simply start gspeakfreely-dsp-net
Available components
- dsp_input (OSS /dev/dsp)
- dsp_output (OSS /dev/dsp)
- net_input
- net_ouput (Network I/O, uses the same protocol as
speakfreely)
- isdn_input
- isdn_output (ISDN over /dev/ttyI*)
- file_input: mp3 support with libxingmp3 or libmad, ogg support,
other formats are converted with sox
- fadein_io (you can fade in sound from some other component)
- monitor_output
Usually, you will connect net_input-dsp_output and dsp_input-net_output. But you can also connect e.g. isdn_input-dsp_output and dsp_input-isdn_output and you have a normal phone.
But you can also use gspeakfreely as a mp3/ogg-player and the music will be faded out if there is network input.
You will find example config files for all these configurations in the config-examples directory
So you can try gspeakfreely without learning the configfile syntax!
Supported platforms
If you want to use all the components, you have to use linux. But you can use it on some PDAs (with linux installed), too. The arm-linux binary can be used e.g. on an Compaq Ipaq.
You can use parts of gspeakfreely also on other unixes. On Solaris you have only the file_input, net_input, net_output, and monitor_output components.
Some screenshots
My favourite configuration (similar to
config-examples/io-dsp-file-net.conf)
A VoIP phone with an integrated mp3/ogg player.
main
Andreas
Kemnade