This application adds support for video transcoding to Asterisk, allowing to especify different transcoding paramenters for stream flow of the call. It provides the following funcion:

transcode
Video transcode

transcode(informat|extension@context|outformat)

Description
This application creates a pseudo channel and places it in the specified context. When both channels are established it performs video transcoding from one channel to another.

The transcoding applied in each direction are specified in the informat and outformat parameters. If no format is specified, transcoding is performed on that direction, just media copy. Audio is copied unmodified.

Only h263p codec is supported for transcoding [rfc 2429] for output, input codecs are h263/h263 and mpeg4.

Transcoding format:
codec@size/[param/param/...]

Available codecs:
h263

Available sizes:
QCIF or CIF

Available params:
fps: number of frames per second
kb: video bandwidth
qmin: Maximum quality [1..31] (lower best)
qmax: Minimum quality [1..31]  (lower best)
gs: Gop size, frame distance between IFrames.

Examples:

; Transcode an incoming channel for a 3g compatible call
exten => ._,1, transcode(h263@qcif/fps=7/kb=52/qmin=12/qmax=31/gs=50,${EXTEN}@3g-call,)