Jitsi is a fantastic open-source VoIP sound and video application, with desktop sharing and XMPP instant messaging thrown in too. It’s free and secure.
Under Linux I had some echo problems. It turns out there are several ways to handle echos, and several points along the chain of communications where it can be done. If you’re using a server-in-the-middle messenger, it’s quite possible that echo cancellation is provided as a service on the server, which by the way precludes end-to-end encryption.
Otherwise you can handle echo cancellation at one or more end devices. Linux’s PulseAudio sound system offers echo cancellation at the system level, but you have to turn it on.
To do so, run the following command before starting your VoIP application:
export PULSE_PROP=”filter.want=echo-cancel media.role=phone”
Be aware that using different echo cancellation techniques at different points in the audio chain simultaneously will worsen the sound considerably, and it should be avoided.