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)
This commit is contained in:
James Almer 2024-01-29 20:41:34 -03:00
parent a267d4ad4c
commit d6399d50ae
1 changed files with 2 additions and 3 deletions

View File

@ -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++;