Multicat
Simple and efficient multicast and transport stream manipulation
The multicat package contains a set of tools designed to easily and efficiently manipulate multicast streams in general, and MPEG-2 Transport Streams (ISO/IEC 13818-1) in particular.
The multicat suite of applications is very lightweight and designed to operate in tight environments. Memory and CPU usages are kept to a minimum, and they feature only one thread of execution.
The multicat program
multicat itself is a 1 input/1 output application. Inputs and
outputs can be network streams (unicast and multicast), files, character
devices or FIFOs. It is thought to be a multicast equivalent of the
popular netcat tool.
Multicat tries to rebuild the internal clock of the input stream; but it wants to remain agnostic of what is transported, so in case of files the said clock is stored to an auxiliary file (example.aux accompanies example.ts) while recording. Other inputs are considered "live", and the input clock is simply derived from the reception time of the packets.
The ingests program
ingests is a companion application designed to manipulate TS files. It
reads the PCR values of the file, and builds the auxiliary file that is
necessary for multicat.
The combination of ingests and multicat makes
a simple and efficient TS file streamer.
The offsets program
offsets is another companion application to manipulate auxiliary files.
Given an offset in time from the beginning of the file, it returns the offset
of the position in number of packets.
The aggregartp and desaggregartp programs
aggregartp splits a single RTP stream to several contribution
links with load balancing.
desaggregartp reorders incoming packets and reconstitutes the original
RTP stream.
These programs can be used to carry a high-bitrate signal over several contribution links.
Get Multicat
The latest official version of Multicat
is numbered 1.0, and is available via HTTP
or FTP.
Hackers can participate to the development using Subversion.
The code can be found at svn://svn.videolan.org/multicat and you can
browse the source online.
User support is handled in the streaming mailing-list. There is also a developer-oriented mailing-list.