User Tools

Site Tools


atrac3p:main_trees_list

This is an old revision of the document!


Main Spectral Data Encoding Trees

General Intro

The quantized values are encoded using a prefix free binary code. To make matters more complicated there are up to 16 encoding scheme per quantizer (because the symbol set depends on the quantizer). In many cases, the symbols are built from a group of two or four quantized values instead of just one quantized value. For groups of size two, the trees are shown as table, the first symbol choosing the row, the second value the column.

Another catch is that some of the encoding schemes encoded the signed quantized values, while others encode only the absolute values of the quantized values. If only the absolute values are encoded in a symbol, each symbol is followed by one bit per absolute value that is not zero. If that bit is set, the value is negative.

The trees can be calculated as canonical huffman codes. Note that unsigned sorting (on two's complement numbers) is used, so negative numbers sort behind positive ones. The sort order for the grouped symbols is lexicographically by the single quantized numbers.

Trees for Quantizer 1

(i.e. symbol set -1,0,1)

Tree 1A

(used for A/0)

Tree 1B

(used for A/1)

Tree 1C

(used for A/2 and B/1)

Tree 1D

(used for A/3)

-1 0 +1
-1 6 4 6
0 3 1 3
+1 6 3 6

Tree 1E

(used for A/4, B/2, B/6)

Tree 1F

(used for A/5, B/3)

Tree 1G

(used for A/6, B/5)

Tree 1H

(used for A/7)

(absolute values followed by sign bits for nonzero)

0 1
0 1 3
1 2 3

Tree 1I

(used for B/0)

Tree 1J

(used for B/4)

Tree 1K

(used for B/7)

Trees for Quantizer 3

(i.e. symbol set -3..+3)

Tree 3A

(used for A/0, B/2)

-3 -2 -1 0 +1 +2 +3
-3 9 8 7 6 7 7 8
-2 8 7 6 6 6 7 7
-1 7 6 4 4 4 6 7
0 7 6 4 3 4 6 7
+1 7 6 4 4 4 6 7
+2 7 7 6 6 7 8 8
+3 8 7 7 7 7 8 9
atrac3p/main_trees_list.1259367038.txt.gz · Last modified: 2009/11/28 00:10 by megadiscman

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki