mirror of
https://github.com/webmproject/libwebp.git
synced 2024-12-26 05:38:22 +01:00
WebP Container:
annotate specific sections as experimental Change-Id: If43222cef1c4fc2a8164b5f6ca4e89033379757d
This commit is contained in:
parent
4da788da3f
commit
6523e2d41d
@ -13,9 +13,6 @@ end of this file.
|
|||||||
WebP Container Specification
|
WebP Container Specification
|
||||||
============================
|
============================
|
||||||
|
|
||||||
_Working Draft, v1.0, 20121109_
|
|
||||||
|
|
||||||
|
|
||||||
* TOC placeholder
|
* TOC placeholder
|
||||||
{:toc}
|
{:toc}
|
||||||
|
|
||||||
@ -62,6 +59,12 @@ The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
|
|||||||
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
|
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
|
||||||
document are to be interpreted as described in [RFC 2119][].
|
document are to be interpreted as described in [RFC 2119][].
|
||||||
|
|
||||||
|
**Note:** Out of the features mentioned above, lossy compression, lossless
|
||||||
|
compression and transparency are finalized and are to be considered stable.
|
||||||
|
On the other hand, metadata, color profile, animation and image fragmentation
|
||||||
|
are experimental as of now, and are open to discussion, feedback and comments.
|
||||||
|
The same is indicated using annotation "_status: experimental_" in the relevant
|
||||||
|
sections of this document.
|
||||||
|
|
||||||
Terminology & Basics
|
Terminology & Basics
|
||||||
------------------------
|
------------------------
|
||||||
@ -271,17 +274,17 @@ An extended format file consists of:
|
|||||||
|
|
||||||
* A 'VP8X' chunk with information about features used in the file.
|
* A 'VP8X' chunk with information about features used in the file.
|
||||||
|
|
||||||
* An optional 'ICCP' chunk with color profile.
|
* An optional 'ICCP' chunk with color profile. _\[status: experimental\]_
|
||||||
|
|
||||||
* An optional 'ANIM' chunk with animation control data.
|
* An optional 'ANIM' chunk with animation control data. _\[status: experimental\]_
|
||||||
|
|
||||||
* Image data.
|
* Image data.
|
||||||
|
|
||||||
* An optional 'EXIF' chunk with EXIF metadata.
|
* An optional 'EXIF' chunk with EXIF metadata. _\[status: experimental\]_
|
||||||
|
|
||||||
* An optional 'XMP ' chunk with XMP metadata.
|
* An optional 'XMP ' chunk with XMP metadata. _\[status: experimental\]_
|
||||||
|
|
||||||
* An optional list of [unknown chunks](#unknown-chunks).
|
* An optional list of [unknown chunks](#unknown-chunks). _\[status: experimental\]_
|
||||||
|
|
||||||
For a _still image_, the _image data_ consists of a single frame, whereas for
|
For a _still image_, the _image data_ consists of a single frame, whereas for
|
||||||
an _animated image_, it consists of multiple frames. More details about frames
|
an _animated image_, it consists of multiple frames. More details about frames
|
||||||
@ -322,7 +325,7 @@ Reserved (Rsv): 2 bits
|
|||||||
|
|
||||||
: SHOULD be `0`.
|
: SHOULD be `0`.
|
||||||
|
|
||||||
ICC profile (I): 1 bit
|
ICC profile (I): 1 bit _\[status: experimental\]_
|
||||||
|
|
||||||
: Set if the file contains an ICC profile.
|
: Set if the file contains an ICC profile.
|
||||||
|
|
||||||
@ -331,20 +334,20 @@ Alpha (L): 1 bit
|
|||||||
: Set if any of the frames of the image contain transparency information
|
: Set if any of the frames of the image contain transparency information
|
||||||
("alpha").
|
("alpha").
|
||||||
|
|
||||||
EXIF metadata (E): 1 bit
|
EXIF metadata (E): 1 bit _\[status: experimental\]_
|
||||||
|
|
||||||
: Set if the file contains EXIF metadata.
|
: Set if the file contains EXIF metadata.
|
||||||
|
|
||||||
XMP metadata (X): 1 bit
|
XMP metadata (X): 1 bit _\[status: experimental\]_
|
||||||
|
|
||||||
: Set if the file contains XMP metadata.
|
: Set if the file contains XMP metadata.
|
||||||
|
|
||||||
Animation (A): 1 bit
|
Animation (A): 1 bit _\[status: experimental\]_
|
||||||
|
|
||||||
: Set if this is an animated image. Data in 'ANIM' and 'ANMF' chunks should be
|
: Set if this is an animated image. Data in 'ANIM' and 'ANMF' chunks should be
|
||||||
used to control the animation.
|
used to control the animation.
|
||||||
|
|
||||||
Image Fragmentation (F): 1 bit
|
Image Fragmentation (F): 1 bit _\[status: experimental\]_
|
||||||
|
|
||||||
: Set if any of the frames in the image are represented by fragments.
|
: Set if any of the frames in the image are represented by fragments.
|
||||||
|
|
||||||
@ -368,7 +371,7 @@ Future specifications MAY add more fields.
|
|||||||
|
|
||||||
### Chunks
|
### Chunks
|
||||||
|
|
||||||
#### Animation
|
#### Animation _\[status: experimental\]_
|
||||||
|
|
||||||
An animation is controlled by ANIM and ANMF chunks.
|
An animation is controlled by ANIM and ANMF chunks.
|
||||||
|
|
||||||
@ -475,7 +478,7 @@ Frame Data: _Chunk Size_ - `16` bytes
|
|||||||
|
|
||||||
* An optional list of [unknown chunks](#unknown-chunks).
|
* An optional list of [unknown chunks](#unknown-chunks).
|
||||||
|
|
||||||
#### Fragments
|
#### Fragments _\[status: experimental\]_
|
||||||
|
|
||||||
For images that are represented by fragments, this chunk contains data for
|
For images that are represented by fragments, this chunk contains data for
|
||||||
a single fragment. If the _Image Fragmentation Flag_ is not set, then this chunk
|
a single fragment. If the _Image Fragmentation Flag_ is not set, then this chunk
|
||||||
@ -641,7 +644,7 @@ The formats of VP8 and VP8L chunks are as described in sections
|
|||||||
[Simple file format (lossy)](#simple-file-format-lossy)
|
[Simple file format (lossy)](#simple-file-format-lossy)
|
||||||
and [Simple file format (lossless)](#simple-file-format-lossless) respectively.
|
and [Simple file format (lossless)](#simple-file-format-lossless) respectively.
|
||||||
|
|
||||||
#### Color profile
|
#### Color profile _\[status: experimental\]_
|
||||||
|
|
||||||
0 1 2 3
|
0 1 2 3
|
||||||
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
|
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
|
||||||
@ -663,7 +666,7 @@ See the [ICC Specification][iccspec] for details.
|
|||||||
|
|
||||||
If this chunk is not present, sRGB SHOULD be assumed.
|
If this chunk is not present, sRGB SHOULD be assumed.
|
||||||
|
|
||||||
#### Metadata
|
#### Metadata _\[status: experimental\]_
|
||||||
|
|
||||||
Metadata can be stored in 'EXIF' or 'XMP ' chunks.
|
Metadata can be stored in 'EXIF' or 'XMP ' chunks.
|
||||||
|
|
||||||
@ -705,7 +708,7 @@ XMP Metadata: _Chunk Size_ bytes
|
|||||||
Additional guidance about handling metadata can be found in the
|
Additional guidance about handling metadata can be found in the
|
||||||
Metadata Working Group's [Guidelines for Handling Metadata][metadata].
|
Metadata Working Group's [Guidelines for Handling Metadata][metadata].
|
||||||
|
|
||||||
#### Unknown Chunks
|
#### Unknown Chunks _\[status: experimental\]_
|
||||||
|
|
||||||
A RIFF chunk (described in [this](#terminology-amp-basics) section) whose _chunk
|
A RIFF chunk (described in [this](#terminology-amp-basics) section) whose _chunk
|
||||||
tag_ is different from any of the chunks described in this document, is
|
tag_ is different from any of the chunks described in this document, is
|
||||||
@ -724,7 +727,7 @@ A file MAY contain unknown chunks:
|
|||||||
Readers SHOULD ignore these chunks. Writers SHOULD preserve them in their
|
Readers SHOULD ignore these chunks. Writers SHOULD preserve them in their
|
||||||
original order (unless they specifically intend to modify these chunks).
|
original order (unless they specifically intend to modify these chunks).
|
||||||
|
|
||||||
### Assembling the Canvas from fragments/frames
|
### Assembling the Canvas from fragments/frames _\[status: experimental\]_
|
||||||
|
|
||||||
Here we provide an overview of how a reader should assemble a canvas in case
|
Here we provide an overview of how a reader should assemble a canvas in case
|
||||||
of a fragmented-image and in case of an animated image. The notation
|
of a fragmented-image and in case of an animated image. The notation
|
||||||
|
Loading…
Reference in New Issue
Block a user