golomb: Add a get_se_golomb_long
authorLuca Barbato <lu_zero@gentoo.org>
Mon, 10 Mar 2014 09:57:51 +0000 (10:57 +0100)
committerLuca Barbato <lu_zero@gentoo.org>
Mon, 10 Mar 2014 09:58:37 +0000 (10:58 +0100)
Useful in libavformat mostly.

libavcodec/golomb.h

index efe5059..ce3500f 100644 (file)
@@ -206,6 +206,18 @@ static inline int get_se_golomb(GetBitContext *gb)
     }
 }
 
+static inline int get_se_golomb_long(GetBitContext *gb)
+{
+    unsigned int buf = get_ue_golomb_long(gb);
+
+    if (buf & 1)
+        buf = -(buf >> 1);
+    else
+        buf = (buf >> 1);
+
+    return buf;
+}
+
 static inline int svq3_get_se_golomb(GetBitContext *gb)
 {
     unsigned int buf;