[FFmpeg-devel] [PATCH 07/11] avcodec/ffv1enc: eliminate if()
Michael Niedermayer
michael at niedermayer.cc
Mon Mar 24 19:39:41 EET 2025
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
---
libavcodec/ffv1enc.c | 16 +++++++---------
1 file changed, 7 insertions(+), 9 deletions(-)
diff --git a/libavcodec/ffv1enc.c b/libavcodec/ffv1enc.c
index 78a9a903039..49d1d56af24 100644
--- a/libavcodec/ffv1enc.c
+++ b/libavcodec/ffv1enc.c
@@ -1333,19 +1333,17 @@ static int encode_float32_remap_segment(FFV1SliceContext *sc, Unit unit[4][65536
val = unit[s.p][s.i].val;
if (s.last_val != val) {
- int64_t delta = 0;
+ int64_t delta = val - s.last_val;
av_assert2(s.last_val < val);
av_assert2(current_mul > 0);
- if (current_mul > 1) {
- delta = val - s.last_val;
- val = FFMAX(1, (delta + current_mul/2) / current_mul);
+ val = FFMAX(1, (delta + current_mul/2) / current_mul);
+
+ delta -= val*current_mul;
+ av_assert2(delta <= current_mul/2);
+ av_assert2(delta > -current_mul);
+ val += s.last_val;
- delta -= val*current_mul;
- av_assert2(delta <= current_mul/2);
- av_assert2(delta > -current_mul);
- val += s.last_val;
- }
av_assert2(s.last_val < val);
if (s.lu) {
s.index_stack[s.run] = s.current_mul_index;
--
2.48.1
More information about the ffmpeg-devel
mailing list