diff options
author | James Almer <jamrial@gmail.com> | 2024-01-29 20:41:34 -0300 |
---|---|---|
committer | James Almer <jamrial@gmail.com> | 2024-01-29 20:45:31 -0300 |
commit | 66f028accbcc88d56716065f7a40a681a798064a (patch) | |
tree | d4a83831c1e3edcca6c0f06d549e619be1dea452 | |
parent | 85e031d5bfa83c25e4b644e3453fe8073d959a4c (diff) | |
download | ffmpeg-66f028accbcc88d56716065f7a40a681a798064a.tar.gz |
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>
-rw-r--r-- | libavcodec/cbs_h266_syntax_template.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/libavcodec/cbs_h266_syntax_template.c b/libavcodec/cbs_h266_syntax_template.c index 549d021211..2f3478e5e1 100644 --- a/libavcodec/cbs_h266_syntax_template.c +++ b/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++; |