[Ffmpeg-cvslog] r6117 - in trunk/libavcodec: bitstream.c bitstream.h
aurel
subversion
Mon Aug 28 20:44:50 CEST 2006
Author: aurel
Date: Mon Aug 28 20:44:49 2006
New Revision: 6117
Modified:
trunk/libavcodec/bitstream.c
trunk/libavcodec/bitstream.h
Log:
move some functions to bitstream.h to avoid conflicts
between different bitstream readers in different codecs
Modified: trunk/libavcodec/bitstream.c
==============================================================================
--- trunk/libavcodec/bitstream.c (original)
+++ trunk/libavcodec/bitstream.c Mon Aug 28 20:44:49 2006
@@ -47,41 +47,6 @@
put_bits(pbc, 8, 0);
}
-/* bit input functions */
-
-/**
- * reads 0-32 bits.
- */
-unsigned int get_bits_long(GetBitContext *s, int n){
- if(n<=17) return get_bits(s, n);
- else{
- int ret= get_bits(s, 16) << (n-16);
- return ret | get_bits(s, n-16);
- }
-}
-
-/**
- * shows 0-32 bits.
- */
-unsigned int show_bits_long(GetBitContext *s, int n){
- if(n<=17) return show_bits(s, n);
- else{
- GetBitContext gb= *s;
- int ret= get_bits_long(s, n);
- *s= gb;
- return ret;
- }
-}
-
-int check_marker(GetBitContext *s, const char *msg)
-{
- int bit= get_bits1(s);
- if(!bit)
- av_log(NULL, AV_LOG_INFO, "Marker bit missing %s\n", msg);
-
- return bit;
-}
-
/* VLC decoding */
//#define DEBUG_VLC
Modified: trunk/libavcodec/bitstream.h
==============================================================================
--- trunk/libavcodec/bitstream.h (original)
+++ trunk/libavcodec/bitstream.h Mon Aug 28 20:44:49 2006
@@ -6,6 +6,8 @@
#ifndef BITSTREAM_H
#define BITSTREAM_H
+#include "log.h"
+
//#define ALT_BITSTREAM_WRITER
//#define ALIGNED_BITSTREAM_WRITER
#if !defined(LIBMPEG2_BITSTREAM_READER) && !defined(A32_BITSTREAM_READER) && !defined(ALT_BITSTREAM_READER)
@@ -642,8 +644,6 @@
return tmp;
}
-unsigned int get_bits_long(GetBitContext *s, int n);
-
/**
* shows 0-17 bits.
* Note, the alt bitstream reader can read up to 25 bits, but the libmpeg2 reader can't
@@ -657,8 +657,6 @@
return tmp;
}
-unsigned int show_bits_long(GetBitContext *s, int n);
-
static inline void skip_bits(GetBitContext *s, int n){
//Note gcc seems to optimize this to s->index+=n for the ALT_READER :))
OPEN_READER(re, s)
@@ -696,6 +694,39 @@
}
/**
+ * reads 0-32 bits.
+ */
+static inline unsigned int get_bits_long(GetBitContext *s, int n){
+ if(n<=17) return get_bits(s, n);
+ else{
+ int ret= get_bits(s, 16) << (n-16);
+ return ret | get_bits(s, n-16);
+ }
+}
+
+/**
+ * shows 0-32 bits.
+ */
+static inline unsigned int show_bits_long(GetBitContext *s, int n){
+ if(n<=17) return show_bits(s, n);
+ else{
+ GetBitContext gb= *s;
+ int ret= get_bits_long(s, n);
+ *s= gb;
+ return ret;
+ }
+}
+
+static inline int check_marker(GetBitContext *s, const char *msg)
+{
+ int bit= get_bits1(s);
+ if(!bit)
+ av_log(NULL, AV_LOG_INFO, "Marker bit missing %s\n", msg);
+
+ return bit;
+}
+
+/**
* init GetBitContext.
* @param buffer bitstream buffer, must be FF_INPUT_BUFFER_PADDING_SIZE bytes larger then the actual read bits
* because some optimized bitstream readers read 32 or 64 bit at once and could read over the end
@@ -828,7 +859,6 @@
//#define TRACE
#ifdef TRACE
-#include "avcodec.h"
static inline void print_bin(int bits, int n){
int i;
More information about the ffmpeg-cvslog
mailing list