Installation Instructions of the CC/PP Apache module for Apache 1.x
The module that we developed is tested with the 1.3.22 version of the Apache Server and is supposed to work with most of the 1.3.x versions. The platforms used for the implementation for that module was RedHat Linux 6.2 at the beginning of the development and Mandrake Linux 8.2 lately.
This module transforms the Apache Web Server to a transcoding web server. The files subject to that transcoding are MPG video files, MP3 audio files and GIF images.
In order to achieve the transcoding of those files we used two external libraries.
- The FFmpeg library for the MPG and MP3 files and (used by the cp_ffmpeg.c file)
- the ImageMagick library for the transcoding of the GIF images (used by the cp_images.c file).
The module can be downloaded from here (mod_ccpp.c)
- Download the mod_ccpp.c module and files cp_ffmpeg.c and cp_images.c used for the transcoding.
- Download FFmpeg and ImageMagick libraries (the ImageMagick library is already contained in the RedHat and Mandrake distributions, otherwise install both of them)
- Store the module and the other files (cp_ffmpeg.c & cp_images.c) under the src/modules/extra/ directory of the source tree of the Apache software.
- In order to activate the module the directive --activate-module=src/modules/extra/mod_ccpp.c must be added in the configuration stage of the server.
- In oder to compile the whole server with the module (is subject
to change in the future) some changes have to be done in two Makefiles
of the Apache source.
- src/Makefile: Linking to the FFmpeg and ImageMagick libraries
must be provided e.g
EXTRA_LIBS=-L$(FFMPEGHOME)/libav -L$(FFMPEGHOME)/libavcodec
LIBS1= -lm -lcrypt -lav -lavcodec -lMagick
- src/modules/extra/Makefile: Use the -I directive to include
the new requested header files for the compilation e.g in the
INCDIR=$(SRCDIR)/include line add
-I$(FFMPEGHOME) -I$(FFMPEGHOME)/libav -I$(FFMPEGHOME)/libavcodec and modify the OBJS=mod_ccpp.o line to
OBJS=cp_images.o cp_ffmpeg.o mod_ccpp.o
- src/Makefile: Linking to the FFmpeg and ImageMagick libraries
must be provided e.g
- After these changes type make and make install to install the server
Note: You can also use the Apache DSO mechanism to install the module. Information about this will be soon available.
In order for the module to be activated and the transcoding process to start a CC/PP Profile in the appropriate CC/PP headers have to be added in the HTTP headers. This can be achieved by the usage of an intermediate proxy. We have implemented such a proxy and is listening for connection at the address 139.91.70.5 at port 22223.
Here is a Profile that we used when testing our server.
In order to see the module working we have installed a CC/PP aware Apache server. Demo web page for apache 1.x .
For any questions or comments contact: moschous@ics.forth.gr





