2.1 Requirements

For compiling x264, you need nasm (yasm on x86_64). They are included in most distributions. Required libraries can be installed from source or from binary packages. In the latter case, you must install the development packages (e.g. libfoo-devel-1.2.3-4.i386.rpm) also. This is what you need:

Alsa

It’s the recommended audio architecture

esound

Only needed if neither Alsa nor OSS work for you.

flac

For en-/decoding flac files (optional).

gtk-2.4.x

This is needed for compiling the GUI applications. Without it you’ll get just the core library, which won’t be of much use.

libjpeg

For reading and writing single JPEG images (strongly recommended)

libpng

For reading and writing single PNG images (strongly recommended). Also for decoding png encoded Quicktime and AVI files

libtiff

For reading and writing single TIFF images (Optional)

libxml

Required. All kinds of configuration files as well as the media tree are xml based.

vorbis

Needed for en-/decoding Vorbis files. Also required for the theora encoding.

libmusicbrainz

Needed for getting Audio CD metadata using musicbrainz

libcddb

Needed for getting Audio CD metadata from CDDB servers

Headers for libXv and libXinerama

These are usually shipped with X11 but some distributions pack the header files separately (e.g. libxv-dev, libxinerama-dev). libXv is needed for hardware accelerated video playback, libXinerama adds support for multi-screen configurations.

libsmbclient

For loading smb:// URLs (optional).

libvisual

For using libvisual plugins (optional).

Ladspa plugins

Optional for audio filters/effects. Good experiences were made with the plugin packages cmt, swh-plugins and tap-plugins. Gmerlin looks for them at runtime, so you can install them at any time.

From now on, there are 2 ways to proceed:

libcdio

Neccessary for the VCD, Audio CD and DVD plugins.

faad2

Needed for MPEG-4 audio support (mp4, aac files).

faac

Needed for MPEG-4 audio encoding (.aac files) and for AAC encoding via libquicktime.

FFmpeg

Many codecs, strongly recommended. You should get a sufficiently new version from ffmpeg SVN and use –enable-shared when calling configure. Another option is the version in the gmerlin-dependencies package.

lame

For encoding mp3 files and AVIs with mp3 audio streams with libquicktime.

mad

For playing MPEG-1/2 audio (e.g. mp3)

libdvdread

For playing DVDs. Gmerlins method of accessing DVD drives doesn’t differ much from others. Thus, DVD playback howtos found in the web apply for gmerlin as well.

x264

For H.264 encoding with libquicktime.

libdca

For decoding DTS streams.

libmpeg2

For decoding MPEG-1/2 Video (like .mpg files and DVD video)

liba52

For playing AC3 (aka DVD audio) streams.

libmpcdec

For playing musepack files (optional).

theora

For en-/decoding theora video (optional).

speex

For en-/decoding Speex streams (optional).

libquicktime

Optional, for the libquicktime based encoding and decoding plugins. Mostly necessary if you want to encode video. For decoding Quicktime, gmerlin_avdecoder is a lot better.

mjpegtools

Optional for en-/decoding yuv4mpeg streams and for encoding high quality MPEG video using mpeg2enc and friends.