Module: JXL::VarDCT
- Defined in:
- lib/jxl/vardct/decoder.rb,
lib/jxl/vardct/dequant.rb,
lib/jxl/vardct/lf_group.rb,
lib/jxl/vardct/hf_global.rb,
lib/jxl/vardct/lf_global.rb,
lib/jxl/vardct/quantizer.rb,
lib/jxl/vardct/pass_group.rb,
lib/jxl/vardct/ac_strategy.rb,
lib/jxl/vardct/coeff_order.rb,
lib/jxl/vardct/reconstructor.rb,
lib/jxl/vardct/chroma_from_luma.rb,
lib/jxl/vardct/block_context_map.rb
Defined Under Namespace
Modules: CoeffOrder, Decoder, Reconstructor Classes: AcStrategy, BlockContextMap, ChromaFromLuma, Dequant, HFGlobal, HFPass, LFGlobal, LFGroup, PassGroup, QuantizedBlock, Quantizer
Constant Summary collapse
- ORDER_DISTRIBUTION =
[Bit::Field.val(0x5F), Bit::Field.val(0x13), Bit::Field.val(0), Bit::Field.bits(13)].freeze
- QUANTIZER_SCALE_DENOMINATOR =
1 << 16
- QUANTIZER_SCALE_DISTRIBUTION =
[Bit::Field.bits_offset(11, 1), Bit::Field.bits_offset(11, 2049), Bit::Field.bits_offset(12, 4097), Bit::Field.bits_offset(16, 8193)].freeze
- QUANTIZER_DC_DISTRIBUTION =
[Bit::Field.val(16), Bit::Field.bits_offset(5, 1), Bit::Field.bits_offset(8, 1), Bit::Field.bits_offset(16, 1)].freeze
- COEFFICIENT_FREQUENCY_CONTEXT =
[ 0xBAD, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 23, 23, 24, 24, 24, 24, 25, 25, 25, 25, 26, 26, 26, 26, 27, 27, 27, 27, 28, 28, 28, 28, 29, 29, 29, 29, 30, 30, 30, 30 ].freeze
- COEFFICIENT_NONZERO_CONTEXT =
[ 0xBAD, 0, 31, 62, 62, 93, 93, 93, 93, 123, 123, 123, 123, 152, 152, 152, 152, 152, 152, 152, 152, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, 206 ].freeze
- AC_STRATEGY_NAMES =
%i[ dct8x8 identity dct2x2 dct4x4 dct16x16 dct32x32 dct16x8 dct8x16 dct32x8 dct8x32 dct32x16 dct16x32 dct4x8 dct8x4 afv0 afv1 afv2 afv3 dct64x64 dct64x32 dct32x64 dct128x128 dct128x64 dct64x128 dct256x256 dct256x128 dct128x256 ].freeze
- BLOCK_WIDTHS =
[1, 1, 1, 1, 2, 4, 1, 2, 1, 4, 2, 4, 1, 1, 1, 1, 1, 1, 8, 4, 8, 16, 8, 16, 32, 16, 32].freeze
- BLOCK_HEIGHTS =
[1, 1, 1, 1, 2, 4, 2, 1, 4, 1, 4, 2, 1, 1, 1, 1, 1, 1, 8, 8, 4, 16, 16, 8, 32, 32, 16].freeze
- STRATEGY_ORDERS =
[0, 1, 1, 1, 2, 3, 4, 4, 5, 5, 6, 6, 1, 1, 1, 1, 1, 1, 7, 8, 8, 9, 10, 10, 11, 12, 12].freeze
- CFL_FACTOR_DISTRIBUTION =
[Bit::Field.val(84), Bit::Field.val(256), Bit::Field.bits_offset(8, 2), Bit::Field.bits_offset(16, 258)].freeze
- DEFAULT_BLOCK_CONTEXT_MAP =
[ 0, 1, 2, 2, 3, 3, 4, 5, 6, 6, 6, 6, 6, 7, 8, 9, 9, 10, 11, 12, 13, 14, 14, 14, 14, 14, 7, 8, 9, 9, 10, 11, 12, 13, 14, 14, 14, 14, 14 ].freeze
- BLOCK_DC_DISTRIBUTION =
[Bit::Field.bits(4), Bit::Field.bits_offset(8, 16), Bit::Field.bits_offset(16, 272), Bit::Field.bits_offset(32, 65_808)].freeze
- BLOCK_QF_DISTRIBUTION =
[Bit::Field.bits(2), Bit::Field.bits_offset(3, 4), Bit::Field.bits_offset(5, 12), Bit::Field.bits_offset(8, 44)].freeze