]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/fastaudio.c
avdevice/avdevice: Constify avdevice_list_input_sources/output_sinks
[ffmpeg] / libavcodec / fastaudio.c
index de006acd9be2d7ed5e4ae4ea07d746818d1ea198..9de42d2134afc1b1d3a008c40ab5d213bd8eaf1d 100644 (file)
@@ -1,5 +1,7 @@
 /*
  * MOFLEX Fast Audio decoder
+ * Copyright (c) 2015-2016 Florian Nouwt
+ * Copyright (c) 2017 Adib Surani
  * Copyright (c) 2020 Paul B Mahol
  *
  * This file is part of FFmpeg.
@@ -89,10 +91,10 @@ static int read_bits(int bits, int *ppos, unsigned *src)
 
     pos = *ppos;
     pos += bits;
-    r = src[(pos - 1) / 32] >> (32 - pos % 32);
+    r = src[(pos - 1) / 32] >> ((-pos) & 31);
     *ppos = pos;
 
-    return r & ((1 << (bits % 32)) - 1);
+    return r & ((1 << bits) - 1);
 }
 
 static const uint8_t bits[8] = { 6, 6, 5, 5, 4, 0, 3, 3, };