PR #25075 opened by romainhedouin
URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/25075
Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/25075.patch

hrd_parameters() read the third 5-bit length field into 
cpb_removal_delay_length_minus1 a second time, overwriting the value just read, 
and never set dpb_output_delay_length_minus1, which the struct declares in that 
order (as HEVC does). Bit positions are unchanged, and nothing currently reads 
these fields

Tested: make fate passes, including fate-lavf-fate-evc.mp4.

Signed-off-by: romainhedouin <[email protected]>

<!--
If this PR requires new FATE test samples, attach them to the PR and
list their target paths below (relative to the fate-suite root).

Attached filenames must match the sample's filename:

```fate-samples
# e.g. vorbis/new-sample.ogg
```
-->



>From 1d8e75b50f48d5733e6d62e27bcbbdf5641f2686 Mon Sep 17 00:00:00 2001
From: romainhedouin <[email protected]>
Date: Wed, 14 Oct 2026 21:07:19 +0200
Subject: [PATCH] avcodec/evc_ps: store dpb_output_delay_length_minus1 in
 hrd_parameters

hrd_parameters() read the third 5-bit length field into
cpb_removal_delay_length_minus1 a second time, overwriting the value
just read, and never set dpb_output_delay_length_minus1, which the
struct declares in that order (as HEVC does). Bit positions are
unchanged, and nothing currently reads these fields.

Tested: make fate passes, including fate-lavf-fate-evc.mp4.

Found with the help of an AI code review; verified by hand.

Signed-off-by: romainhedouin <[email protected]>
---
 libavcodec/evc_ps.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/evc_ps.c b/libavcodec/evc_ps.c
index 637572d324..d7baed6790 100644
--- a/libavcodec/evc_ps.c
+++ b/libavcodec/evc_ps.c
@@ -70,7 +70,7 @@ static int hrd_parameters(GetBitContext *gb, HRDParameters 
*hrd)
     }
     hrd->initial_cpb_removal_delay_length_minus1 = get_bits(gb, 5);
     hrd->cpb_removal_delay_length_minus1 = get_bits(gb, 5);
-    hrd->cpb_removal_delay_length_minus1 = get_bits(gb, 5);
+    hrd->dpb_output_delay_length_minus1 = get_bits(gb, 5);
     hrd->time_offset_length = get_bits(gb, 5);
 
     return 0;
-- 
2.52.0

_______________________________________________
ffmpeg-devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to