Most desktop Linux distributions provide packaged binaries for Ekiga, but few provide either the latest release, or more particularly, a working build with h.264 codec support. Here’s how I compiled Ekiga from source to address both of these issues.
The latest release is 3.2.7.
The relevant pieces in order are:
x264 – libraries and encoder for h.264 and avc
ffmpeg – platform for encoding audio and video. Includes libavcodec
libsdl – simple direct media layer providing low-level device access
ptlib – portable tool library
opal – open phone abstraction library
ekiga – Gnome GUI SIP/h.323 application
Configure options for individual packages are shown below, otherwise the general process is:
./configure <opts>
make
sudo make install
X264
I used x264 daily 20090820 (after first installing yasm-0.8.0-1, libgpac/libgpac-dev).
Around 9/2/2009, the API functions changed such that Ekiga fails to load the h.264 module if opal is compiled against the latest release. I installed both, but libgpac may not be required. If there is no assembler, you can build the software anyway by adding the option: –disable-asm to configure.
./configure –prefix=/usr –enable-shared –disable-pthread –enable-mp4-output
FFMPEG
I used ffmpeg 0.5, not the daily checkout or svn HEAD to work around the function change in x264. You have to include –enable-nonfree and –enable-gpl to compile in h.264 support.
./configure –prefix=/usr –mandir=/usr/share/man –enable-shared –enable-nonfree –enable-gpl –enable-avfilter –enable-libmp3lame –enable-libtheora –enable-libx264
You can get a list of available codecs with:
./configure –list-decoders –list-encoders
SDL
./configure –prefix=/usr –mandir=/usr/share/man
PTLIB
I used the latest release, 2.6.5 which I also found on ekiga.net.
./configure –prefix=/usr –mandir=/usr/share/man –enable-plugins –enable-ffvdev –enable-v4l –enable-v4l2 –enable-oss –enable-alsa –enable-shared –enable-sdl
OPAL
Again, the latest release, 3.6.6, from ekiga.net.
./configure –prefix=/usr –localstatedir=/var –mandir=/usr/share/man –enable-shared –enable-h323 –enable-sip –enable-video –enable-theora –enable-plugins
EKIGA
I used the latest release from ekiga.net. I disabled the local discovery component, because I couldn’t see myself needing it.
./configure –prefix=/usr –localstatedir=/var –mandir=/usr/share/man –disable-avahi –enable-gstreamer –enable-h323