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