Files
LFS-PKGBUILDs/media-libs/x265/x265-3.6-code-cleanup_4.patch

21 lines
1.1 KiB
Diff

From 09379bbfe797e54f91ef5702c802f75aad604067 Mon Sep 17 00:00:00 2001
From: Paul Zander <negril.nx+gentoo@gmail.com>
Date: Mon, 26 Aug 2024 14:26:55 +0200
Subject: [PATCH 4/4] use std::abs instead of abs to avoid truncating values
Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
diff --git a/encoder/ratecontrol.cpp b/encoder/ratecontrol.cpp
index 9f2b8d9..7732ccd 100644
--- a/encoder/ratecontrol.cpp
+++ b/encoder/ratecontrol.cpp
@@ -1891,7 +1891,7 @@ double RateControl::tuneQScaleForGrain(double rcOverflow)
int newQp = rcOverflow > 1.1 ? curQp + 2 : rcOverflow > 1 ? curQp + 1 : curQp - 1 ;
double projectedBitrate = int(m_fps + 0.5) * m_qpToEncodedBits[newQp];
if (curBitrate > 0 && projectedBitrate > 0)
- q = abs(projectedBitrate - m_bitrate) < abs (curBitrate - m_bitrate) ? x265_qp2qScale(newQp) : m_lastQScaleFor[P_SLICE];
+ q = std::abs(projectedBitrate - m_bitrate) < std::abs (curBitrate - m_bitrate) ? x265_qp2qScale(newQp) : m_lastQScaleFor[P_SLICE];
else
q = rcOverflow > 1 ? qScaleAvg * qpstep : rcOverflow < 1 ? qScaleAvg / qpstep : m_lastQScaleFor[P_SLICE];
return q;