avcodec/get_bits: add BITS_LEFT() for finding the bits left with an opened reader
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 11 Aug 2014 13:15:19 +0000 (15:15 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 11 Aug 2014 13:31:59 +0000 (15:31 +0200)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 11512d70facf42fb490168d33a5986448cf36074)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/get_bits.h

index d8d7b6e..d67263c 100644 (file)
@@ -113,6 +113,9 @@ typedef struct RL_VLC_ELEM {
  * LAST_SKIP_BITS(name, gb, num)
  *   Like SKIP_BITS, to be used if next call is UPDATE_CACHE or CLOSE_READER.
  *
+ * BITS_LEFT(name, gb)
+ *   Return the number of bits left
+ *
  * For examples see get_bits, show_bits, skip_bits, get_vlc.
  */
 
@@ -179,6 +182,8 @@ typedef struct RL_VLC_ELEM {
     name ## _index = FFMIN(name ## _size_plus8, name ## _index + (num))
 #endif
 
+#define BITS_LEFT(name, gb) ((int)((gb)->size_in_bits - name ## _index))
+
 #define SKIP_BITS(name, gb, num)                \
     do {                                        \
         SKIP_CACHE(name, gb, num);              \