diff liba52/bitstream.h @ 1072:68d0a38bd802 libavcodec

* sync with main liba52 sources
author kabi
date Tue, 18 Feb 2003 11:48:57 +0000
parents 207cc56d18f8
children ef2149182f1c
line wrap: on
line diff
--- a/liba52/bitstream.h	Tue Feb 18 09:33:21 2003 +0000
+++ b/liba52/bitstream.h	Tue Feb 18 11:48:57 2003 +0000
@@ -1,6 +1,6 @@
 /*
  * bitstream.h
- * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org>
+ * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org>
  * Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
  *
  * This file is part of a52dec, a free ATSC A-52 stream decoder.
@@ -46,37 +46,32 @@
 #	endif
 #endif
 
-extern uint32_t a52_bits_left;
-extern uint32_t a52_current_word;
+void a52_bitstream_set_ptr (a52_state_t * state, uint8_t * buf);
+uint32_t a52_bitstream_get_bh (a52_state_t * state, uint32_t num_bits);
+int32_t a52_bitstream_get_bh_2 (a52_state_t * state, uint32_t num_bits);
 
-void a52_bitstream_set_ptr (uint8_t * buf);
-uint32_t a52_bitstream_get_bh(uint32_t num_bits);
-int32_t a52_bitstream_get_bh_2(uint32_t num_bits);
-
-static inline uint32_t 
-bitstream_get(uint32_t num_bits)
+static inline uint32_t bitstream_get (a52_state_t * state, uint32_t num_bits)
 {
     uint32_t result;
 	
-    if(num_bits < a52_bits_left) {
-	result = (a52_current_word << (32 - a52_bits_left)) >> (32 - num_bits);
-	a52_bits_left -= num_bits;
+    if (num_bits < state->bits_left) {
+	result = (state->current_word << (32 - state->bits_left)) >> (32 - num_bits);
+	state->bits_left -= num_bits;
 	return result;
     }
 
-    return a52_bitstream_get_bh(num_bits);
+    return a52_bitstream_get_bh (state, num_bits);
 }
 
-static inline int32_t 
-bitstream_get_2(uint32_t num_bits)
+static inline int32_t bitstream_get_2 (a52_state_t * state, uint32_t num_bits)
 {
     int32_t result;
 	
-    if(num_bits < a52_bits_left) {
-	result = (((int32_t)a52_current_word) << (32 - a52_bits_left)) >> (32 - num_bits);
-	a52_bits_left -= num_bits;
+    if (num_bits < state->bits_left) {
+	result = (((int32_t)state->current_word) << (32 - state->bits_left)) >> (32 - num_bits);
+	state->bits_left -= num_bits;
 	return result;
     }
 
-    return a52_bitstream_get_bh_2(num_bits);
+    return a52_bitstream_get_bh_2 (state, num_bits);
 }