Skip to content

CONFIG_12BIT_PROFILE: New profile missing from multistream conformance checks #5234

Description

@peterderivaz

CONFIG_12BIT_PROFILE add support for new profiles.

However, there is still some code that has not been updated, e.g. in conformance_check_msdo_lcr:

  if (num_extended_layers > 1 && num_embedded_layers == 1) {
    if (msdo_present &&
        (msdo_prof == MAIN_420_10_IP0 || msdo_prof == MAIN_420_10_IP1 ||
         msdo_prof == MAIN_420_10_IP2 || msdo_prof == MAIN_422_10_IP1 ||
         msdo_prof == MAIN_444_10_IP1))
      return true;

    if (global_lcr_present && glcr_prof == MAIN_420_10_IP2) return true;
  }

  if (num_extended_layers == 1 && num_embedded_layers > 1) {
    if (!msdo_present && local_lcr_present &&
        (llcr_prof == MAIN_420_10_IP1 || llcr_prof == MAIN_422_10_IP1 ||
         llcr_prof == MAIN_444_10_IP1))
      return true;

    if (!msdo_present && (global_lcr_present || local_lcr_present) &&
        (glcr_prof == MAIN_420_10_IP2 || llcr_prof == MAIN_420_10_IP2))
      return true;
  }
  ...
  return false;

The problem is that if we use the new profile, then it is impossible to make a legal multistream.

This is because only certain explicit profiles are detected as being legal.

Suggested Fix

Use a helper function (does one already exist?) that extracts the IP number, and make these checks depend on IP number instead of explicit profiles.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions