Opened 10 years ago

Closed 6 years ago

# ScalingFactor for chroma 32x32 mismatch with reference code

Reported by: Owned by: peterderivaz major HM-15.0 RExt text RExt D7 (Q1005) v8 davidf, joel, teruhiko, jct-vc@…

### Description

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

### comment:1 Changed 10 years ago by DefaultCC Plugin

• Cc davidf joel teruhiko jct-vc@… added

### comment:2 Changed 10 years ago by jachu19

this issue still exists in JCTVC-R1013_v3.doc

### comment:3 Changed 6 years ago by bbross

• Resolution set to fixed
• Status changed from new to closed

This issue is fixed in the 2016/12 release of the HEVC specification (the 32x32 chroma scaling list for 4:4:4 is set directly from ScalingList, and the DC coefficient is set using scaling_list_dc_coef_minus8.

Note: See TracTickets for help on using tickets.

This list contains all users that will be notified about changes made to this ticket.

These roles will be notified: Reporter, Owner, Subscriber, Participant

• Benjamin Bross(Participant)
• David Flynn(Subscriber)
• jct-vc@…(Subscriber)
• Joel(Subscriber)
• karl.sharman@…(Always)
• Karsten Suehring(Always)
• Marcin(Participant)
• Peter de Rivaz(Reporter)
• Teruhiko Suzuki(Subscriber)