SAMPEG-2 is a software only MPEG-1/2 video encoder targeted for optimum picture quality.
To achieve this, it uses scene change rate control, adaptive quantization and a rich
set of motion vector estimation algorithms.
It is parallelized to run efficiently on SMP machines with an arbitrary number of processors.
Moreover it is optimized to use MMX instructions on x86 processors and VIS on Ultra-Sparc
processors.
Additional features:
supports variable and constant bitrate encoding
creates streams with arbitrary resolution and bitrate
reads multiple input formats:
MJPEG-AVIs (created with Miro DC30, Fast AV-Master or similar video cards)
uncompressed AVIs (as are usually created with popular TV-cards)
Targa still image sequences
PPM still image sequences
supports direct grabbing through the Video4Linux API to allow realtime
encoding of a live video signal
supports single frame grabbing and remote video source control such as
VCR control with infra-red commands. This allows below realtime encoding of
long video sequences from a high quality still image source.
adaptive quantization using scene change recognition, activity and luminance masking
fast, yet accurate DCT and IDCT algorithm
As the development of SAMPEG-2 is discontinued and SAMPEG-3 is now considerably stable,
I suggest that you use SAMPEG-3 instead.
Only if you need to encode MJPEG or uncompressed AVIs, this encoder may be handy.
Download
v0.6.5 source (The configure script is broken,
do not execute it! Please use the distributed makefile.)
Real-time encode from V4L-input to MPEG-1 with 1.0 Mbps: enc -1 -R1.0 -b -P -D0 -z 160x120 -N 3 dummy out.m1v
Note: there's no input file, but you have to give a dummy-string as input filename. '-N3' reduces
the framerate by a factor of 3. '-D0' disables all progress information display. Stop the
encoding by pressing CTRL-C. This will result in a corrupted end of the stream, but unfortunately
a cleaner way to stop encoding is not yet implemented. If you know the number of frames in
advance, you can specify this with '-e #' to get a fine stream.
Additional Information
There are also some publications on SAMPEG-2 available online at
this page.