Libupnp, Avc/h.264, Gnu general public license – Pioneer BDP-320 User Manual

Page 50

Advertising
background image

07

50

En

It a

ppears that the arithmetic coding option of the JPEG

s

pec is covered by patents owned by IBM, AT&T, and

Mitsubishi. Hence a

rithmetic coding cannot legally be

used without obtaining one o

r more licenses. For this

reason, support for arithmetic coding has been removed
f

rom the free JPEG software. (Since arithmetic coding

provides only a marginal gain over the unpatented Huffman
mode, it is unlikely that ve

ry many implementations will

su

pport it.) So far as we are aware, there are no patent

restrictions on the remaining code.
The IJG dist

ribution formerly included code to read and

w

rite GIF files. To avoid entanglement with the Unisys LZW

patent, GIF reading support has been removed altogether,
and the GIF w

riter has been simplified to produce

uncom

pressed GIFs. This technique does not use the LZW

algo

rithm; the resulting GIF files are larger than usual, but

a

re readable by all standard GIF decoders.

We a

re required to state that

“The G

raphics Interchange Format(c) is the Copyright

property of CompuServe Incorporated. GIF(sm) is a
Se

rvice Mark property of CompuServe Incorporated.”

REFERENCES
We highly

recommend reading one or more of these

references before trying to understand the innards of the
JPEG softwa

re.

The best sho

rt technical introduction to the JPEG

com

pression algorithm is

Wallace, G

regory K. “The JPEG Still Picture Compression

Standa

rd”,

Communications of the ACM, A

pril 1991 (vol. 34 no. 4),

pp. 30-44.

(Adjacent a

rticles in that issue discuss MPEG motion

picture compression, applications of JPEG, and related
to

pics.) If you don’t have the CACM issue handy, a

PostSc

ript file containing a revised version of Wallace’s

a

rticle is available at ftp://ftp.uu.net/graphics/jpeg/

wallace.

ps.gz. The file (actually a preprint for an article that

a

ppeared in IEEE Trans. Consumer Electronics) omits the

sam

ple images that appeared in CACM, but it includes

co

rrections and some added material. Note: the Wallace

a

rticle is copyright ACM and IEEE, and it may not be used

fo

r commercial purposes.

A somewhat less technical, mo

re leisurely introduction to

JPEG can be found in The Data Com

pression Book by Mark

Nelson and Jean-lou

p Gailly, published by M&T Books (New

Yo

rk), 2nd ed. 1996, ISBN 1-55851-434-1. This book provides

good ex

planations and example C code for a multitude of

com

pression methods including JPEG. It is an excellent

sou

rce if you are comfortable reading C code but don’t

know much about data com

pression in general. The book’s

JPEG sam

ple code is far from industrial-strength, but when

you a

re ready to look at a full implementation, you’ve got

one he

re...

The best full desc

ription of JPEG is the textbook “JPEG Still

Image Data Com

pression Standard” by William B.

Pennebake

r and Joan L. Mitchell, published by Van

Nost

rand Reinhold, 1993, ISBN 0-442-01272-1. Price

US$59.95, 638

pp. The book includes the complete text of

the ISO JPEG standa

rds (DIS 10918-1 and draft DIS 10918-

2). This is by fa

r the most complete exposition of JPEG in

existence, and we highly

recommend it.

The JPEG standa

rd itself is not available electronically; you

must o

rder a paper copy through ISO or ITU. (Unless you

feel a need to own a ce

rtified official copy, we recommend

buying the Pennebake

r and Mitchell book instead; it’s

much chea

per and includes a great deal of useful

ex

planatory material.) In the USA, copies of the standard

may be o

rdered from ANSI Sales at (212) 642-4900, or from

Global Enginee

ring Documents at (800) 854-7179. (ANSI

doesn’t take c

redit card orders, but Global does.) It’s not

chea

p: as of 1992, ANSI was charging $95 for Part 1 and $47

fo

r Part 2, plus 7% shipping/handling. The standard is

divided into two

parts, Part 1 being the actual specification,

while Pa

rt 2 covers compliance testing methods. Part 1 is

titled “Digital Com

pression and Coding of Continuous-tone

Still Images, Pa

rt 1: Requirements and guidelines” and has

document numbe

rs ISO/IEC IS 10918-1, ITU-T T.81. Part 2 is

titled “Digital Com

pression and Coding of Continuous-tone

Still Images, Pa

rt 2: Compliance testing” and has

document numbe

rs ISO/IEC IS 10918-2, ITU-T T.83.

Some extensions to the o

riginal JPEG standard are defined

in JPEG Pa

rt 3, a newer ISO standard numbered ISO/IEC IS

10918-3 and ITU-T T.84. IJG cu

rrently does not support any

Pa

rt 3 extensions.

The JPEG standa

rd does not specify all details of an

inte

rchangeable file format. For the omitted details we

follow the “JFIF” conventions,

revision 1.02. A copy of the

JFIF s

pec is available from:

Lite

rature Department

C-Cube Mic

rosystems, Inc.

1778 McCa

rthy Blvd.

Mil

pitas, CA 95035

phone (408) 944-6300, fax (408) 944-6314

A PostSc

ript version of this document is available by FTP at

ft

p://ftp.uu.net/graphics/jpeg/jfif.ps.gz. There is also a plain

text ve

rsion at ftp://ftp.uu.net/graphics/jpeg/jfif.txt.gz, but it

is missing the figu

res.

The TIFF 6.0 file fo

rmat specification can be obtained by FTP

f

rom ftp://ftp.sgi.com/graphics/tiff/TIFF6.ps.gz. The JPEG

inco

rporation scheme found in the TIFF 6.0 spec of 3-June-

92 has a numbe

r of serious problems. IJG does not

recommend use of the TIFF 6.0 design (TIFF Compression
tag 6). Instead, we

recommend the JPEG design proposed

by TIFF Technical Note #2 (Com

pression tag 7). Copies of

this Note can be obtained f

rom ftp.sgi.com or from ftp://

ft

p.uu.net/graphics/jpeg/. It is expected that the next

revision of the TIFF spec will replace the 6.0 JPEG design
with the Note’s design. Although IJG’s own code does not
su

pport TIFF/JPEG, the free libtiff library uses our library to

im

plement TIFF/JPEG per the Note. libtiff is available from

ft

p://ftp.sgi.com/graphics/tiff/.

ARCHIVE LOCATIONS
The “official” a

rchive site for this software is ftp.uu.net

(Inte

rnet address 192.48.96.9). The most recent released

ve

rsion can always be found there in directory graphics/

j

peg. This particular version will be archived as ftp://

ft

p.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz. If you don’t

have di

rect Internet access, UUNET’s archives are also

available via UUCP; contact hel

[email protected] for

info

rmation on retrieving files that way.

Nume

rous Internet sites maintain copies of the UUNET

files. Howeve

r, only ftp.uu.net is guaranteed to have the

latest official ve

rsion.

You can also obtain this softwa

re in DOS-compatible “zip”

a

rchive format from the SimTel archives (ftp://

ft

p.simtel.net/pub/simtelnet/msdos/graphics/), or on

Com

puServe in the Graphics Support forum (GO

CIS:GRAPHSUP), lib

rary 12 JPEG Tools. Again, these

ve

rsions may sometimes lag behind the ftp.uu.net release.

The JPEG FAQ (F

requently Asked Questions) article is a

useful sou

rce of general information about JPEG. It is

u

pdated constantly and therefore is not included in this

dist

ribution. The FAQ is posted every two weeks to Usenet

newsg

roups comp.graphics.misc, news.answers, and

othe

r groups. It is available on the World Wide Web at http:/

/www.faqs.o

rg/faqs/jpeg-faq/ and other news.answers

a

rchive sites, including the official news.answers archive at

rtfm.mit.edu: ftp://rtfm.mit.edu/pub/usenet/news.answers/
j

peg-faq/. If you don’t have Web or FTP access, send e-mail

to mail-se

[email protected] with body

send usenet/news.answe

rs/jpeg-faq/part1

send usenet/news.answe

rs/jpeg-faq/part2

RELATED SOFTWARE
Nume

rous viewing and image manipulation programs now

su

pport JPEG. (Quite a few of them use this library to do so.)

The JPEG FAQ desc

ribed above lists some of the more

popular free and shareware viewers, and tells where to
obtain them on Inte

rnet.

If you a

re on a Unix machine, we highly recommend Jef

Poskanze

r’s free PBMPLUS software, which provides many

useful o

perations on PPM-format image files. In particular,

it can conve

rt PPM images to and from a wide range of

othe

r formats, thus making cjpeg/djpeg considerably more

useful. The latest ve

rsion is distributed by the NetPBM

g

roup, and is available from numerous sites, notably ftp://

wua

rchive.wustl.edu/graphics/graphics/packages/

NetPBM/. Unfo

rtunately PBMPLUS/NETPBM is not nearly

as

portable as the IJG software is; you are likely to have

difficulty making it wo

rk on any non-Unix machine.

A diffe

rent free JPEG implementation, written by the PVRG

g

roup at Stanford, is available from ftp://

havefun.stanford.edu/pub/jpeg/. This program is designed
fo

r research and experimentation rather than production

use; it is slowe

r, harder to use, and less portable than the

IJG code, but it is easie

r to read and modify. Also, the PVRG

code su

pports lossless JPEG, which we do not. (On the

othe

r hand, it doesn’t do progressive JPEG.)

FILE FORMAT WARS
Some JPEG

programs produce files that are not compatible

with ou

r library. The root of the problem is that the ISO

JPEG committee failed to s

pecify a concrete file format.

Some vendo

rs “filled in the blanks” on their own, creating

proprietary formats that no one else could read. (For
exam

ple, none of the early commercial JPEG

im

plementations for the Macintosh were able to exchange

com

pressed files.)

The file fo

rmat we have adopted is called JFIF (see

REFERENCES). This fo

rmat has been agreed to by a

numbe

r of major commercial JPEG vendors, and it has

become the de facto standa

rd. JFIF is a minimal or “low

end”

representation. We recommend the use of TIFF/JPEG

(TIFF

revision 6.0 as modified by TIFF Technical Note #2) for

“high end” a

pplications that need to record a lot of

additional data about an image. TIFF/JPEG is fai

rly new and

not yet widely su

pported, unfortunately.

The u

pcoming JPEG Part 3 standard defines a file format

called SPIFF. SPIFF is inte

roperable with JFIF, in the sense

that most JFIF decode

rs should be able to read the most

common va

riant of SPIFF. SPIFF has some technical

advantages ove

r JFIF, but its major claim to fame is simply

that it is an official standa

rd rather than an informal one. At

this

point it is unclear whether SPIFF will supersede JFIF or

whethe

r JFIF will remain the de-facto standard. IJG intends

to su

pport SPIFF once the standard is frozen, but we have

not decided whethe

r it should become our default output

fo

rmat or not. (In any case, our decoder will remain capable

of

reading JFIF indefinitely.)

Va

rious proprietary file formats incorporating JPEG

com

pression also exist. We have little or no sympathy for

the existence of these fo

rmats. Indeed, one of the original

reasons for developing this free software was to help force
conve

rgence on common, open format standards for JPEG

files. Don’t use a

proprietary file format!

TO DO
The majo

r thrust for v7 will probably be improvement of

visual quality. The cu

rrent method for scaling the

quantization tables is known not to be ve

ry good at low Q

values. We also intend to investigate block bounda

ry

smoothing, “

poor man’s variable quantization”, and other

means of im

proving quality-vs-file-size performance

without sac

rificing compatibility.

In futu

re versions, we are considering supporting some of

the u

pcoming JPEG Part 3 extensions --- principally,

va

riable quantization and the SPIFF file format.

As always, speeding things up is of great interest.
Please send bug

reports, offers of help, etc. to jpeg-

[email protected].

libupnp

Co

pyright (c) 2000-2003 Intel Corporation

All

rights reserved.

Redist

ribution and use in source and binary forms, with or

without modification, a

re permitted provided that the

following conditions a

re met:

* Redist

ributions of source code must retain the above

co

pyright notice, this list of conditions and the following

disclaime

r.

* Redist

ributions in binary form must reproduce the above

co

pyright notice, this list of conditions and the following

disclaime

r in the documentation and/or other materials

provided with the distribution.

* Neithe

r name of Intel Corporation nor the names of its

cont

ributors may be used to endorse or promote

products derived from this software without specific
prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT
HOLDERS AND CONTRIBUTORS
“AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
EVENT SHALL INTEL OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE POSSIBILITY OF SUCH DAMAGE.

AVC/H.264

THIS PRODUCT IS LICENSED UNDER THE AVC PATENT
PORTFOLIO LICENSE FOR THE PERSONAL AND NON-
COMMERCIAL USE OF A CONSUMER TO (i) ENCODE
VIDEO IN COMPLIANCE WITH THE AVC STANDARD (”AVC
VIDEO”) AND/OR (ii) DECODE AVC VIDEO THAT WAS
ENCODED BY A CONSUMER ENGAGED IN A PERSONAL
AND NON-COMMERCIAL ACTIVITY AND/OR WAS
OBTAINED FROM A VIDEO PROVIDER LICENSED TO
PROVIDE AVC VIDEO. No LICENSE IS GRANTED OR
SHALL BE IMPLIED FOR ANY OTHER USE. ADDITIONAL
INFORMATION MAY BE OBTAINED FROM MPEG LA, L.L.C.
SEE HTTP://MPEGLA.COM.

GNU GENERAL PUBLIC LICENSE

Ve

rsion 2, June 1991

Co

pyright © 1989, 1991 Free Software Foundation, Inc., 51

F

ranklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Eve

ryone is permitted to copy and distribute verbatim

co

pies of this license document, but changing it is not

allowed.
Preamble
The licenses fo

r most software are designed to take away

you

r freedom to share and change it. By contrast, the GNU

Gene

ral Public License is intended to guarantee your

f

reedom to share and change free software - to make sure

the softwa

re is free for all its users. This General Public

License a

pplies to most of the Free Software Foundation’s

softwa

re and to any other program whose authors commit

to using it. (Some othe

r Free Software Foundation software

is cove

red by the GNU Lesser General Public License

instead.) You can a

pply it to your programs, too.

When we s

peak of free software, we are referring to

f

reedom, not price. Our General Public Licenses are

320_VXJ5_IBD_EN.book 50 ページ 2009年2月25日 水曜日 午前10時57分

Advertising