]> git.sesse.net Git - ffmpeg/blobdiff - libswscale/swscale.c
Merge commit 'cb4cb7b0ea12b791dde587b1acd504dbb4ec8f41'
[ffmpeg] / libswscale / swscale.c
index 16a31cee40116dab094b5e21435617ec05f66b69..6e47a92ac7786d60c8b59ac159bccff9449d5417 100644 (file)
@@ -805,9 +805,9 @@ static void xyz12Torgb48(struct SwsContext *c, uint16_t *dst,
                 c->xyz2rgb_matrix[2][2] * z >> 12;
 
             // limit values to 12-bit depth
-            r = av_clip(r, 0, 4095);
-            g = av_clip(g, 0, 4095);
-            b = av_clip(b, 0, 4095);
+            r = av_clip_uintp2(r, 12);
+            g = av_clip_uintp2(g, 12);
+            b = av_clip_uintp2(b, 12);
 
             // convert from sRGBlinear to RGB and scale from 12bit to 16bit
             if (desc->flags & AV_PIX_FMT_FLAG_BE) {
@@ -861,9 +861,9 @@ static void rgb48Toxyz12(struct SwsContext *c, uint16_t *dst,
                 c->rgb2xyz_matrix[2][2] * b >> 12;
 
             // limit values to 12-bit depth
-            x = av_clip(x, 0, 4095);
-            y = av_clip(y, 0, 4095);
-            z = av_clip(z, 0, 4095);
+            x = av_clip_uintp2(x, 12);
+            y = av_clip_uintp2(y, 12);
+            z = av_clip_uintp2(z, 12);
 
             // convert from XYZlinear to X'Y'Z' and scale from 12bit to 16bit
             if (desc->flags & AV_PIX_FMT_FLAG_BE) {