aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2014-08-11 15:15:19 +0200
committerMichael Niedermayer <michaelni@gmx.at>2014-08-11 15:31:59 +0200
commit6badd558ce19dffe8c3ea3e687812b933e0cb2ff (patch)
tree3754351480d697c76b1c7f234ad0352ff21284e1
parenta1fe3b41507300dbaa9a082eb43155f07fcf5124 (diff)
downloadffmpeg-6badd558ce19dffe8c3ea3e687812b933e0cb2ff.tar.gz
avcodec/get_bits: add BITS_LEFT() for finding the bits left with an opened reader
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> (cherry picked from commit 11512d70facf42fb490168d33a5986448cf36074) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavcodec/get_bits.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/libavcodec/get_bits.h b/libavcodec/get_bits.h
index d8d7b6ea08..d67263c619 100644
--- a/libavcodec/get_bits.h
+++ b/libavcodec/get_bits.h
@@ -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); \