OnWorks favicon

c44 - Online in the Cloud

Run c44 in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command c44 that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



c44 - DjVuPhoto encode.


c44 [options] inputfilename [outputfilename]


Produces a DjVuPhoto encoded image. The input image file inputfilename can be either a
portable gray-map (PGM) or a portable pix-map (PPM). Input images compressed with JPEG
are also accepted. It is however suggested to only use high quality JPEG files (low
compression ratio, large size) because the wavelet compression will increase the defects
already present in highly compressed JPEG files.

The program produces a DjVuPhoto file outputfilename. If the output file name is not
specified, a default file name will be generated by replacing the input file name suffix
by suffix djvu.

The main design objective for the DjVu wavelets consisted of allowing progressive
rendering and smooth scrolling of large images with limited memory requirements. Decoding
functions process the compressed data and update a memory efficient representation of the
wavelet coefficients. Imaging function then can quickly render an arbitrary segment of
the image using the available data. Both process can be carried out in two threads of
execution. This design plays an important role in the DjVu system. We investigated
various state-of-the-art wavelet compression schemes. Although these schemes may achieve
slightly smaller file sizes, the decoding functions did not even approach our
requirements. The IW44 wavelets reach these requirements today and may in the future
implement more modern refinements if these refinements can be implemented within our


DjVuPhoto files are logically composed of a sequence of "slices" containing successive
image refinements. Slices are grouped in "chunks" defining the progressive rendering
sequence. The viewer is able to display an intermediate image after processing each
chunk. A typical DjVuPhoto files contains 80 to 120 slices grouped into 1 to 4 chunks.

The quality selection options provide various ways to specify the number of chunks and the
number of slices per chunk. The c44 program adds slices to the current chunk until
exceeding a target number of slices, a target file size, or a target quality
specification. The following options define targets for each chunk. The option argument
contain several numerical values (one per chunk) separated by either commas or pluses.

-slice n+...+n
Specify the number of slices in each chunk. The option argument contains plus-
separated numerical values (one per chunk) indicating the number of slices per
chunk. Option -slice 74+13+10, for instance, would be appropriate for compressing
a photographic image with three progressive refinements. More quality and more
refinements can be obtained with option -slice 72+11+10+10.

-slice n,...,n
Specify the cumulative number of slices for each chunk. Since the final quality is
determined by the total number of slices, it is often more convenient to use comma-
separated values (one per chunk) indicating the cumulative number of slices for
each chunk (i.e. including those encoded in all previous chunks). The values
suggested above can also be expressed as -slice 74,87,97 and -slice 72,83,93,103.

-size n,...,n
Specify size targets for each chunk expressed in bytes. The option argument can be
either a plus-separated list specifying a size for each chunk, or a comma separated
list specifying cumulative sizes for each chunk and all previous chunks. Size
targets are approximates. Slices will be added to each chunk until exceeding the
specified target.

-bpp n,...,n
Specify size targets for each chunk expressed in bits-per-pixel. Both comma-
separated and plus-separated specifications are accepted. Option -bpp 0.25,0.5,1
usually provides good results.

-percent n,...,n
Specify size targets for each chunk expressed as a percentage of the input file
size. Both comma-separated and plus-separated specifications are accepted.
Results can be drastically different according to the format of the input image
(raw or JPEG compressed).

-decibel n,...,n
Specify quality targets for each chunk expressed as a comma-separated list of
increasing decibel values. Decibel values range from 16 (very low quality) to 48
(very high quality). This criterion should not be relied upon when re-encoding an
image previously compressed by another compression scheme. Selecting this option
significantly increases the compression time.

-dbfrac frac
Indicate that the decibel values specified in option -decibel should be computed by
averaging the mean squared errors of only the fraction frac of the most mis-
represented blocks of 32 x 32 pixels. This option is useful with composite images
containing solid color features (e.g. an image with a large white border).

Providing no quality specification options automatically selects a default quality
specification -slice 74,89,99. Multiple quality specification options are allowed. The
program outputs a file whose total number of chunks is the largest number of chunks of all
quality specifications. Slices are added to each chunk until reaching any of the quality
target for this chunk.


The following additional options are supported:

-dpi n Specify the resolution information encoded into the output file expressed in dots
per inch. The resolution information encoded in DjVu files determine how the
decoder scales the image on a particular display. Meaningful resolutions range
from 25 to 1200. The default value, 100 dpi, should be suitable for most
photographic images.

-gamma n
Specify the gamma correction information encoded into the output file. The
argument n specified the gamma value of the device for which the input image was
designed. The default value is 2.2. This is appropriate for images designed for a
standard computer monitor.

-mask pbmfilename
The design of the IW44 wavelets allows for compressing partially masked images.
This option can be used when certain pixels of a background image are going to be
covered by foreground objects like text or drawings. File pbmfile must be a PBM
file whose size matches the size of the input file. Each black pixel in pbmfile
means that the value of the corresponding pixel in the input file is irrelevant.
The IW44 encoder will replace the masked pixels by a color value whose coding cost
is minimal (see http://www.djvuzone.org/djvu/techpapers/mask/index.djvu for
technical details.)

Select normal chrominance encoding. Chrominance information is encoded at the same
resolution as the luminance. This is the default.

Selects half resolution chrominance encoding. Chrominance information is encoded
at half the luminance resolution.

-crcbdelay n
This option can be used with -crcbnormal and -crcbhalf to modify the quality of the
chrominance information. The option arguments specifies a parameter n, expressed
in slices, that reduces the bit-rate associated with the chrominance. The default
chrominance encoding delay is 10 slices.

Select the highest possible quality for encoding the chrominance information. This
is equivalent to specifying -crcbnormal and -crcbdelay 0.

Disable the encoding of the chrominance. Only the luminance information will be
encoded. The resulting image will show in shades of gray.


The default quality setting of the DjVuLibre version of c44 has been increased. It
produces larger files with a better quality. Quality can be lowered using the quality
selection options!

Use c44 online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

  • 1
    Phaser is a fast, free, and fun open
    source HTML5 game framework that offers
    WebGL and Canvas rendering across
    desktop and mobile web browsers. Games
    can be co...
    Download Phaser
  • 2
    VASSAL Engine
    VASSAL Engine
    VASSAL is a game engine for creating
    electronic versions of traditional board
    and card games. It provides support for
    game piece rendering and interaction,
    Download VASSAL Engine
  • 3
    OpenPDF - Fork of iText
    OpenPDF - Fork of iText
    OpenPDF is a Java library for creating
    and editing PDF files with a LGPL and
    MPL open source license. OpenPDF is the
    LGPL/MPL open source successor of iText,
    Download OpenPDF - Fork of iText
  • 4
    Toolbox for Java/JTOpen
    Toolbox for Java/JTOpen
    The IBM Toolbox for Java / JTOpen is a
    library of Java classes supporting the
    client/server and internet programming
    models to a system running OS/400,
    i5/OS, o...
    Download Toolbox for Java/JTOpen
  • 5
    D3.js (or D3 for Data-Driven Documents)
    is a JavaScript library that allows you
    to produce dynamic, interactive data
    visualizations in web browsers. With D3
    Download D3.js
  • 6
    A fast tunnel proxy that helps you
    bypass firewalls This is an application
    that can also be fetched from
    It ha...
    Download Shadowsocks
  • 7
    GLPI Themes
    GLPI Themes
    Download release at
    Color themes for GLPI 0.84 and 0.85 New
    Modifications for GLPI This is an
    application that c...
    Download GLPI Themes
  • More »

Linux commands