[FFmpeg-cvslog] avcodec/proresenc_anatoliy: import GET_SIGN() macro from Kostya encoder and use it

Clément Bœsch git at videolan.org
Wed Jan 10 15:22:20 EET 2024


ffmpeg | branch: master | Clément Bœsch <u at pkh.me> | Mon Dec 11 01:54:37 2023 +0100| [17392ca84fb411d13a2663bbd3e4fad397efb017] | committer: Clément Bœsch

avcodec/proresenc_anatoliy: import GET_SIGN() macro from Kostya encoder and use it

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=17392ca84fb411d13a2663bbd3e4fad397efb017
---

 libavcodec/proresenc_anatoliy.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/libavcodec/proresenc_anatoliy.c b/libavcodec/proresenc_anatoliy.c
index 94610d5bc2..fe7b3e9ef3 100644
--- a/libavcodec/proresenc_anatoliy.c
+++ b/libavcodec/proresenc_anatoliy.c
@@ -255,9 +255,10 @@ static void encode_vlc_codeword(PutBitContext *pb, unsigned codebook, int val)
     }
 }
 
-#define TO_GOLOMB(val) (((val) * 2) ^ ((val) >> 31))
-#define DIFF_SIGN(val, sign) (((val) >> 31) ^ (sign))
-#define IS_NEGATIVE(val) ((((val) >> 31) ^ -1) + 1)
+#define GET_SIGN(x)  ((x) >> 31)
+#define TO_GOLOMB(val) (((val) * 2) ^ GET_SIGN(val))
+#define DIFF_SIGN(val, sign) (GET_SIGN(val) ^ (sign))
+#define IS_NEGATIVE(val) ((GET_SIGN(val) ^ -1) + 1)
 #define TO_GOLOMB2(val,sign) ((val)==0 ? 0 : ((val) << 1) + (sign))
 
 static av_always_inline int get_level(int val)



More information about the ffmpeg-cvslog mailing list