Add av_clip_int8(), used in the upcoming VP8 decoder.
authorRonald S. Bultje <rsbultje@gmail.com>
Tue, 22 Jun 2010 19:11:33 +0000 (19:11 +0000)
committerRonald S. Bultje <rsbultje@gmail.com>
Tue, 22 Jun 2010 19:11:33 +0000 (19:11 +0000)
Originally committed as revision 23713 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavutil/common.h

index ba67b4a..ee44175 100644 (file)
@@ -123,6 +123,17 @@ static inline av_const uint8_t av_clip_uint8(int a)
 }
 
 /**
+ * Clips a signed integer value into the -128,127 range.
+ * @param a value to clip
+ * @return clipped value
+ */
+static inline av_const int8_t av_clip_int8(int a)
+{
+    if ((a+0x80) & ~0xFF) return (a>>31) ^ 0x7F;
+    else                  return a;
+}
+
+/**
  * Clips a signed integer value into the 0-65535 range.
  * @param a value to clip
  * @return clipped value