[SCM] libav/experimental: Kill a warning with MSVC Patch by Jindrich Makovicka makovick A gmail P com Original thread: Date: 08:21 AM Subject Re: [Ffmpeg-devel] Weird line in cabac.h
siretart at users.alioth.debian.org
siretart at users.alioth.debian.org
Sun Jun 30 15:52:23 UTC 2013
The following commit has been merged in the experimental branch:
commit a0f2c6ba38b2159f5f23edfffa204e11533b0b41
Author: Jindřich Makovička <makovick at gmail.com>
Date: Wed Oct 18 09:37:25 2006 +0000
Kill a warning with MSVC
Patch by Jindrich Makovicka makovick A gmail P com
Original thread:
Date: 08:21 AM
Subject Re: [Ffmpeg-devel] Weird line in cabac.h
Originally committed as revision 6726 to svn://svn.ffmpeg.org/ffmpeg/trunk
diff --git a/libavcodec/cabac.c b/libavcodec/cabac.c
index 91db6c3..c6da629 100644
--- a/libavcodec/cabac.c
+++ b/libavcodec/cabac.c
@@ -51,7 +51,7 @@ static const uint8_t lps_range[64][4]= {
};
uint8_t ff_h264_mlps_state[4*64];
-uint8_t ff_h264_lps_range[4][2*64];
+uint8_t ff_h264_lps_range[4*2*64];
uint8_t ff_h264_lps_state[2*64];
uint8_t ff_h264_mps_state[2*64];
@@ -152,8 +152,8 @@ void ff_init_cabac_states(CABACContext *c){
for(i=0; i<64; i++){
for(j=0; j<4; j++){ //FIXME check if this is worth the 1 shift we save
- ff_h264_lps_range[j][2*i+0]=
- ff_h264_lps_range[j][2*i+1]= lps_range[i][j];
+ ff_h264_lps_range[j*2*64+2*i+0]=
+ ff_h264_lps_range[j*2*64+2*i+1]= lps_range[i][j];
}
ff_h264_mlps_state[128+2*i+0]=
diff --git a/libavcodec/cabac.h b/libavcodec/cabac.h
index d50c181..8059ba6 100644
--- a/libavcodec/cabac.h
+++ b/libavcodec/cabac.h
@@ -33,6 +33,7 @@
#define CABAC_MASK ((1<<CABAC_BITS)-1)
#define BRANCHLESS_CABAC_DECODER 1
#define CMOV_IS_FAST 1
+//#define ARCH_X86_DISABLED 1
typedef struct CABACContext{
int low;
@@ -48,7 +49,7 @@ typedef struct CABACContext{
}CABACContext;
extern uint8_t ff_h264_mlps_state[4*64];
-extern uint8_t ff_h264_lps_range[4][2*64]; ///< rangeTabLPS
+extern uint8_t ff_h264_lps_range[4*2*64]; ///< rangeTabLPS
extern uint8_t ff_h264_mps_state[2*64]; ///< transIdxMPS
extern uint8_t ff_h264_lps_state[2*64]; ///< transIdxLPS
extern const uint8_t ff_h264_norm_shift[512];
@@ -524,7 +525,7 @@ static int always_inline get_cabac_inline(CABACContext *c, uint8_t * const state
#endif /* BRANCHLESS_CABAC_DECODER */
#else /* defined(ARCH_X86) && !(defined(PIC) && defined(__GNUC__)) */
int s = *state;
- int RangeLPS= ff_h264_lps_range[0][2*(c->range&0xC0) + s];
+ int RangeLPS= ff_h264_lps_range[2*(c->range&0xC0) + s];
int bit, lps_mask attribute_unused;
c->range -= RangeLPS;
--
Libav/FFmpeg packaging
More information about the pkg-multimedia-commits
mailing list