id,summary,reporter,owner,description,type,status,priority,milestone,component,version,resolution,keywords,cc
1306,ScalingFactor for chroma 32x32 mismatch with reference code,peterderivaz,,"In Q1005_v9 equation 7-48 is:
ScalingFactor[ 3 ][ matrixId ][ x * 2 + k ][ y * 2 + j ] = ScalingFactor[ 2 ][ matrixId ][ x ][ y ] with x, y = 0..15, j = 0..1, k = 0..1
This means that the scaling factors for size 3 are constructed from the scaling factors for size 2 in such a way that
ScalingFactor[ 3 ][ matrixId ][ 0 ][ 0 ] = ScalingFactor[ 2 ][ matrixId ][ 0 ][ 0 ]
ScalingFactor[ 3 ][ matrixId ][ 0 ][ 1 ] = ScalingFactor[ 2 ][ matrixId ][ 0 ][ 0 ]
ScalingFactor[ 3 ][ matrixId ][ 1 ][ 0 ] = ScalingFactor[ 2 ][ matrixId ][ 0 ][ 0 ]
ScalingFactor[ 3 ][ matrixId ][ 1 ][ 1 ] = ScalingFactor[ 2 ][ matrixId ][ 0 ][ 0 ]
However, the reference code does not appear to behave in this way. In the reference code the DC value (ScalingFactor[ 3 ][ matrixId ][ 0 ][ 0 ]) can have a different value to the other 3.
I think the confusion may arise from the way ScalingFactor[ 2 ] is constructed. ScalingFactor[ 2 ][matrixId][ 0 ][ 0 ] is defined both by equation 7-44 and by equation 7-45.
The reference code appears to behave in the following way:
1. Apply equation 7-44 to compute AC scaling values for size 2
2. Apply equation 7-48 to replicate the AC scaling values to size 3
3. Apply equation 7-45 to override the DC scaling value for size 2
4. Copy the new DC scaling value for size 2 to the DC scaling value for size 3
",defect,closed,major,HM-15.0,RExt text,RExt D7 (Q1005) v8,fixed,,davidf joel teruhiko jct-vc@…