|
Packit |
78deda |
|
|
Packit |
78deda |
<HTML><HEAD><TITLE>Pnmtofiasco User Manual</TITLE></HEAD>
|
|
Packit |
78deda |
<BODY>
|
|
Packit |
78deda |
pnmtofiasco
|
|
Packit |
78deda |
Updated: July 12, 2000
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Table Of Contents
|
|
Packit |
78deda |
|
|
Packit |
78deda |
NAME
|
|
Packit |
78deda |
|
|
Packit |
78deda |
pnmtofiasco - Convert PNM file to FIASCO compressed file
|
|
Packit |
78deda |
|
|
Packit |
78deda |
SYNOPSIS
|
|
Packit |
78deda |
|
|
Packit |
78deda |
pnmtofiasco
|
|
Packit |
78deda |
[option]...
|
|
Packit |
78deda |
[filename]...
|
|
Packit |
78deda |
|
|
Packit |
78deda |
DESCRIPTION
|
|
Packit |
78deda |
|
|
Packit |
78deda |
This program is part of Netpbm.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
pnmtofiasco compresses the named pbm, pgm, or ppm image files,
|
|
Packit |
78deda |
or Standard Input if no file is named, and produces a FIASCO file on
|
|
Packit |
78deda |
Standard Output.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
OPTIONS
|
|
Packit |
78deda |
|
|
Packit |
78deda |
All option names may be abbreviated; for example, --optimize may be
|
|
Packit |
78deda |
written --optim or --opt. For most options a one letter short option
|
|
Packit |
78deda |
is provided. Mandatory or optional arguments to long options are
|
|
Packit |
78deda |
mandatory or optional for short options, too. Both short and long
|
|
Packit |
78deda |
options are case sensitive.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
The basic options are:
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-i name, --input-name=name
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Compress the named images, not Standard Input. If name is
|
|
Packit |
78deda |
-, read Standard Input. name has to be either an image
|
|
Packit |
78deda |
filename or a template of the form:
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
prefix[start-end{+,-}step]suffix
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Templates are useful when compressing video streams: e.g., if you
|
|
Packit |
78deda |
specify the template img0[12-01-2].pgm, then pnmtofiasco
|
|
Packit |
78deda |
compresses the images img012.pgm, img010.pgm, ..., img002.pgm.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
If name is a relative path, pnmtofiasco searches for
|
|
Packit |
78deda |
the image files in the current directory and in the (colon-separated)
|
|
Packit |
78deda |
list of directories given by the environment variable
|
|
Packit |
78deda |
FIASCO_IMAGES.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-o output-file, --output-name=name
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Write FIASCO output to the named file, not to Standard Output.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
If name is a relative path and the environment variable
|
|
Packit |
78deda |
FIASCO_DATA is a (colon-separated) list of directories, then
|
|
Packit |
78deda |
pnmtofiasco writes the output file to the first (writable)
|
|
Packit |
78deda |
directory of this list. Otherwise, pnmtofiasco write it to the
|
|
Packit |
78deda |
current directory.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-q N, --quality=N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Set quality of compression to N. Quality is 1 (worst) to
|
|
Packit |
78deda |
100 (best); default is 20.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-v, --version
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Print pnmtofiasco version number, then exit.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-V N, --verbose N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Set level of verbosity to N. Level is 0 (no output at
|
|
Packit |
78deda |
all), 1 (show progress meter), or 2 (show detailed compression
|
|
Packit |
78deda |
statistics); default is 1.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-B N, --progress-meter N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Set type of progress-meter to N. The following types are
|
|
Packit |
78deda |
available; default is 1:
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
0
|
|
Packit |
78deda |
no progress meter
|
|
Packit |
78deda |
|
|
Packit |
78deda |
1
|
|
Packit |
78deda |
RPM style progress bar using 50 hash marks
|
|
Packit |
78deda |
|
|
Packit |
78deda |
2
|
|
Packit |
78deda |
|
|
Packit |
78deda |
percentage meter
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-f name, --config=name
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Load parameter file name to initialize the options of
|
|
Packit |
78deda |
pnmtofiasco. See file system.fiascorc for an example of
|
|
Packit |
78deda |
the syntax. Options of pnmtofiasco are set by any of the
|
|
Packit |
78deda |
following methods (in the specified order):
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Global resource file /etc/system.fiascorc
|
|
Packit |
78deda |
$HOME/.fiascorc
|
|
Packit |
78deda |
command line
|
|
Packit |
78deda |
--config=name
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-h, --info
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Print brief help, then exit.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-H, --help
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Print detailed help, then exit.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
The options for advanced users are:
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-b name, --basis-name=name
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Preload compression basis name into FIASCO. The basis
|
|
Packit |
78deda |
name provides the initial compression dictionary. Either use
|
|
Packit |
78deda |
one of the files "small.fco", "medium.fco", or
|
|
Packit |
78deda |
"large.fco" that come with pnmtofiasco or create a
|
|
Packit |
78deda |
new ASCII basis file.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-z N, --optimize=N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Set optimization level to N. Level is 0 (fastest) to 3
|
|
Packit |
78deda |
(slowest); default is 1. Be warned, the encoding time dramatically
|
|
Packit |
78deda |
increased when N=2 or N=3 while the
|
|
Packit |
78deda |
compression performance only slightly improves.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-P, --prediction
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Use additional predictive coding. If this optimization is enabled
|
|
Packit |
78deda |
then the image is compressed in two steps. In the first step, a coarse
|
|
Packit |
78deda |
approximation of the image is computed using large unichrome
|
|
Packit |
78deda |
blocks. Finally, the delta image is computed and the prediction error
|
|
Packit |
78deda |
is approximated using the standard FIASCO algorithm.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-D N, --dictionary-size=N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Set size of dictionary that is used when coding the luminance band
|
|
Packit |
78deda |
to N; default is 10000, i.e., the dictionary is not restricted.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-C N, --chroma-dictionary=N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Set size of dictionary that is used when coding chroma bands to
|
|
Packit |
78deda |
N; default is 40.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-Q N, --chroma-qfactor=N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Reduce the quality of chroma band compression N-times with
|
|
Packit |
78deda |
respect to the user defined quality q of the luminance band
|
|
Packit |
78deda |
compression (--quality=q); default is 2.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-t N, --tiling-exponent=N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Subdivide the image into 2^N tiles prior coding; default is
|
|
Packit |
78deda |
4, i.e. the image is subdivided into 16 tiles. The processing order of
|
|
Packit |
78deda |
the individual tiles is defined by the option
|
|
Packit |
78deda |
--tiling-method=name.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-T name, --tiling-method=name
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Order the individual image tiles (the image is subdivided into;
|
|
Packit |
78deda |
see option --tiling-exponent=N) by method name;
|
|
Packit |
78deda |
default is desc-variance.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
desc-variance
|
|
Packit |
78deda |
Tiles with small variances are processed first.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
asc-variance
|
|
Packit |
78deda |
Tiles with large variances are processed first.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
desc-spiral
|
|
Packit |
78deda |
Tiles are process in spiral order starting in the middle.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
asc-spiral
|
|
Packit |
78deda |
Tiles are process in spiral order starting at the border.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
--rpf-mantissa=N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Use N mantissa bits for quantized coefficients.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
--dc-rpf-mantissa=N
|
|
Packit |
78deda |
Use N mantissa bits for quantized DC coefficients.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
--rpf-range=N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Coefficients outside the quantization interval
|
|
Packit |
78deda |
[-N,+N] are set to zero.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
--dc-rpf-range=N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
DC coefficients outside the quantization interval
|
|
Packit |
78deda |
[-N,+N] are set to zero.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Additional options for video compression are
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-s N, --smooth=N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Smooth decompressed reference frames along the partitioning
|
|
Packit |
78deda |
borders by the given amount N. N is 0 (no smoothing) to
|
|
Packit |
78deda |
100; default is 70. This factor is stored in the FIASCO file.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-m N, --min-level=N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Start prediction (motion compensated prediction or additional
|
|
Packit |
78deda |
prediction) on block level N; default is level 6. I.e., motion
|
|
Packit |
78deda |
compensation is applied to all image blocks of at least 8x8 pixels
|
|
Packit |
78deda |
(binary tree level N=6), 16x8 (N=7), 16x16 (N=8),
|
|
Packit |
78deda |
etc.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-M N, --max-level=N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Stop prediction (motion compensated prediction or additional
|
|
Packit |
78deda |
prediction) on block level N; default is level 10. I.e.,
|
|
Packit |
78deda |
motion compensation is applied to all image blocks of at most 16x16
|
|
Packit |
78deda |
pixels (N=8), 32x16 (N=9), 32x32 (N=10), etc.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-2, --half-pixel
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Use half pixel precise motion compensation.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-F N, --fps=N
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Set number of frames per second to N. This value is stored
|
|
Packit |
78deda |
in the FIASCO output file and is used in the decoder
|
|
Packit |
78deda |
HREF="fiascotopnm.html">fiascotopnm to control the framerate.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
-p type, --pattern=type
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Defines the type of inter frame compression which should be
|
|
Packit |
78deda |
applied to individual frames of a video stream. type is a
|
|
Packit |
78deda |
sequence of characters; default is "IPPPPPPPPP". Element
|
|
Packit |
78deda |
N defines the type of predicting which should be used for frame
|
|
Packit |
78deda |
N; the frame type pattern is periodically extended. Valid
|
|
Packit |
78deda |
characters are:
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
I
|
|
Packit |
78deda |
intra frame, i.e., no motion compensated prediction is used at
|
|
Packit |
78deda |
all.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
P
|
|
Packit |
78deda |
predicted frame, i.e., a previously encoded frame is used for
|
|
Packit |
78deda |
prediction (forward prediction).
|
|
Packit |
78deda |
|
|
Packit |
78deda |
B
|
|
Packit |
78deda |
bidirectional predicted frame, i.e., not only a previously shown
|
|
Packit |
78deda |
frame but also a frame of the future is used for prediction (forward,
|
|
Packit |
78deda |
backward or interpolated prediction).
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
--cross-B-search
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Instead of using exhaustive search the "Cross-B-Search"
|
|
Packit |
78deda |
algorithm is used to find the best interpolated prediction of
|
|
Packit |
78deda |
B-frames.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
--B-as-past-ref
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Also use previously encoded B-frames when prediction the current
|
|
Packit |
78deda |
frame. If this option is not set, only I- and P-frames are used to
|
|
Packit |
78deda |
predict the current frame.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
EXAMPLES
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Compress the still image "foo.ppm" to the FIASCO file
|
|
Packit |
78deda |
"foo.wfa" using the default options:
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
pnmtofiasco < foo.ppm >foo.wfa
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Compress the video frames "foo0*.ppm" to the FIASCO file
|
|
Packit |
78deda |
"video.wfa" using half pixel precise motion compensation at
|
|
Packit |
78deda |
a frame rate of 15 frames per second. Intra frame 1 is used to
|
|
Packit |
78deda |
predict P-frame 4, frames 1 and 4 are used to predict B-frames 2 and
|
|
Packit |
78deda |
3, and so on. Frame 10 is again an intra-frame.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
pnmtofiasco -2 -p "IBBPBBPBB" -fps 15 -o video.wfa foo0*.ppm
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
FILES
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
/etc/system.fiascorc
|
|
Packit |
78deda |
|
|
Packit |
78deda |
The systemwide initialization file.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
$HOME/.fiascorc
|
|
Packit |
78deda |
|
|
Packit |
78deda |
The personal initialization file.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
ENVIRONMENT
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
FIASCO_IMAGES
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Search path for image files. Default is "./".
|
|
Packit |
78deda |
|
|
Packit |
78deda |
FIASCO_DATA
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Search and save path for FIASCO files. Default is "./".
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
SEE ALSO
|
|
Packit |
78deda |
|
|
Packit |
78deda |
fiascotopnm,
|
|
Packit |
78deda |
pnmtojpeg,
|
|
Packit |
78deda |
pnmtojbig,
|
|
Packit |
78deda |
pamtogif,
|
|
Packit |
78deda |
pnm
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Ullrich Hafner, Juergen Albert, Stefan Frank, and Michael Unger.
|
|
Packit |
78deda |
Weighted Finite Automata for Video Compression, IEEE Journal on
|
|
Packit |
78deda |
Selected Areas In Communications, January 1998
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Ullrich Hafner. Low Bit-Rate Image and Video Coding with
|
|
Packit |
78deda |
Weighted Finite Automata, Ph.D. thesis, Mensch & Buch Verlag,
|
|
Packit |
78deda |
ISBN 3-89820-002-7, October 1999.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
FIASCO: An
|
|
Packit |
78deda |
Open-Source Fractal Image and Sequence Codec, Linux Journal,
|
|
Packit |
78deda |
January 2001.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
AUTHOR
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Ullrich Hafner <hafner@bigfoot.de>
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
Table Of Contents
|
|
Packit |
78deda |
|
|
Packit |
78deda |
SYNOPSIS
|
|
Packit |
78deda |
DESCRIPTION
|
|
Packit |
78deda |
OPTIONS
|
|
Packit |
78deda |
EXAMPLES
|
|
Packit |
78deda |
FILES
|
|
Packit |
78deda |
ENVIRONMENT
|
|
Packit |
78deda |
SEE ALSO
|
|
Packit |
78deda |
AUTHOR
|
|
Packit |
78deda |
|
|
Packit |
78deda |
</BODY>
|
|
Packit |
78deda |
</HTML>
|