avcodec/cbs_h266: fix logic setting num_layers_in_ols when vps_ols_mode_idc is 2

The old code did not follow the syntax from the spec.

Reviewed-by: Frank Plowman <post@frankplowman.com>
Signed-off-by: James Almer <jamrial@gmail.com>
(cherry picked from commit 66f028accb)
release/6.1
James Almer 12 months ago
parent a267d4ad4c
commit d6399d50ae
  1. 5
      libavcodec/cbs_h266_syntax_template.c

@ -902,11 +902,10 @@ static int FUNC(vps) (CodedBitstreamContext *ctx, RWContext *rw,
current->vps_ols_mode_idc == 1) {
num_layers_in_ols = i + 1;
} else if (current->vps_ols_mode_idc == 2) {
for (k = 0, j = 0; k <= current->vps_max_layers_minus1; k++) {
for (k = 0, j = 0; k <= current->vps_max_layers_minus1; k++)
if (layer_included_in_ols_flag[i][k])
j++;
num_layers_in_ols = j;
}
num_layers_in_ols = j;
}
if (num_layers_in_ols > 1) {
num_multi_layer_olss++;

Loading…
Cancel
Save