Apple Pixlet Codec: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
(some description) |
||
Line 3: | Line 3: | ||
Pixar/[[Apple]] Pixlet codec. Reportedly based on a wavelet transform and encodes only I-frames. No open source decoder. This codec was designed as an editing format and is rarely used for media distribution. | Pixar/[[Apple]] Pixlet codec. Reportedly based on a wavelet transform and encodes only I-frames. No open source decoder. This codec was designed as an editing format and is rarely used for media distribution. | ||
=== Frame Format === | |||
==== Frame Header ==== | |||
All values are 32-bit big-endian words. | |||
0- 3 -- frame size | |||
4- 7 -- version, supposed to be 1 | |||
8-11 -- ??? | |||
12-15 -- should be 0x01000000 | |||
16-19 -- ??? | |||
20-23 -- width | |||
24-27 -- height | |||
28-31 -- number of levels (should be 4) | |||
32-35 -- ??? | |||
36-39 -- some number * 1000 | |||
40-43 -- coded planes size? | |||
Each plane starts with (level*2) words that contain scaling parameters used in wavelet reconstruction (horizontal/vertical) multiplied by 1000000 followed by lowpass subband and (level*3) highpass subbands. | |||
==== Lowpass subband coding ==== | |||
Decoding order: | |||
* top left pixel (as 16-bit BE, no special coding) | |||
* top row (without the first pixel) | |||
* left column (without the first pixel) | |||
* the rest of pixels | |||
Coding parameters: | |||
* 3 | |||
* 3 | |||
* quant = 120 | |||
* max length = 14 | |||
* 16383 | |||
* 136 | |||
* 255 | |||
After decoding pixel data is top+left predicted, i.e. <code>dst[x][y] += dst[x-1][y] + dst[x][y-1];</code> | |||
==== Highpass subbands coding ==== | |||
Header: | |||
0- 3 -- some negative value | |||
4- 7 -- some positive value | |||
8-11 -- some parameter | |||
12-15 -- quantiser | |||
16-19 -- 0xDEADBEEF | |||
=== Wavelet filters === | |||
Edges: | |||
-0.07576144003329376 | |||
0.8586296626673486 | |||
-0.07576144003329376 | |||
0.3535533905932737 | |||
0.3535533905932737 | |||
Main: | |||
-0.01515228715813062 | |||
0.3687056777514043 | |||
0.3687056777514043 | |||
-0.01515228715813062 | |||
0.07071067811865475 | |||
-0.8485281374238569 | |||
0.07071067811865475 | |||
[[Category:Wavelet Video Codecs]] | [[Category:Wavelet Video Codecs]] |
Revision as of 02:17, 14 May 2016
- FOURCCs: PXLT
- Samples: http://samples.mplayerhq.hu/V-codecs/pxlt-ApplePixlet/
Pixar/Apple Pixlet codec. Reportedly based on a wavelet transform and encodes only I-frames. No open source decoder. This codec was designed as an editing format and is rarely used for media distribution.
Frame Format
Frame Header
All values are 32-bit big-endian words.
0- 3 -- frame size 4- 7 -- version, supposed to be 1 8-11 -- ??? 12-15 -- should be 0x01000000 16-19 -- ??? 20-23 -- width 24-27 -- height 28-31 -- number of levels (should be 4) 32-35 -- ??? 36-39 -- some number * 1000 40-43 -- coded planes size?
Each plane starts with (level*2) words that contain scaling parameters used in wavelet reconstruction (horizontal/vertical) multiplied by 1000000 followed by lowpass subband and (level*3) highpass subbands.
Lowpass subband coding
Decoding order:
- top left pixel (as 16-bit BE, no special coding)
- top row (without the first pixel)
- left column (without the first pixel)
- the rest of pixels
Coding parameters:
- 3
- 3
- quant = 120
- max length = 14
- 16383
- 136
- 255
After decoding pixel data is top+left predicted, i.e. dst[x][y] += dst[x-1][y] + dst[x][y-1];
Highpass subbands coding
Header:
0- 3 -- some negative value 4- 7 -- some positive value 8-11 -- some parameter 12-15 -- quantiser 16-19 -- 0xDEADBEEF
Wavelet filters
Edges:
-0.07576144003329376 0.8586296626673486 -0.07576144003329376
0.3535533905932737 0.3535533905932737
Main:
-0.01515228715813062 0.3687056777514043 0.3687056777514043 -0.01515228715813062 0.07071067811865475 -0.8485281374238569 0.07071067811865475