summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2006-10-09 00:59:42 +0000
committerMichael Niedermayer <michaelni@gmx.at>2006-10-09 00:59:42 +0000
commitc010d69a75750a0c2479caf5818a6f30c4f07cbc (patch)
tree76e59986999b1dc3fbc683f7b2b1740597d813f2
parent158256a13a5fde13f39145f04fde8972947992ef (diff)
decrease ff_h264_norm_shift[] size
Originally committed as revision 6596 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libavcodec/cabac.c20
-rw-r--r--libavcodec/cabac.h6
2 files changed, 9 insertions, 17 deletions
diff --git a/libavcodec/cabac.c b/libavcodec/cabac.c
index f724dd5368..52e6c50e47 100644
--- a/libavcodec/cabac.c
+++ b/libavcodec/cabac.c
@@ -72,23 +72,15 @@ const uint8_t ff_h264_lps_state[64]= {
36,36,37,37,37,38,38,63,
};
-const uint8_t ff_h264_norm_shift[256]= {
- 9,8,7,7,6,6,6,6,5,5,5,5,5,5,5,5,
- 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
- 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
- 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
+const uint8_t ff_h264_norm_shift[128]= {
+ 7,6,5,5,4,4,4,4,3,3,3,3,3,3,3,3,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
};
/**
diff --git a/libavcodec/cabac.h b/libavcodec/cabac.h
index 4b89223b76..ff3994db07 100644
--- a/libavcodec/cabac.h
+++ b/libavcodec/cabac.h
@@ -51,7 +51,7 @@ typedef struct CABACContext{
extern const uint8_t ff_h264_lps_range[64][4];
extern const uint8_t ff_h264_mps_state[64];
extern const uint8_t ff_h264_lps_state[64];
-extern const uint8_t ff_h264_norm_shift[256];
+extern const uint8_t ff_h264_norm_shift[128];
void ff_init_cabac_encoder(CABACContext *c, uint8_t *buf, int buf_size);
@@ -270,7 +270,7 @@ static void refill2(CABACContext *c){
int i, x;
x= c->low ^ (c->low-1);
- i= 9 - ff_h264_norm_shift[x>>(CABAC_BITS+1)];
+ i= 7 - ff_h264_norm_shift[x>>(CABAC_BITS+1)];
x= -CABAC_MASK;
@@ -393,7 +393,7 @@ asm(
#endif
renorm_cabac_decoder_once(c);
}else{
- bit= ff_h264_norm_shift[RangeLPS>>17];
+ bit= ff_h264_norm_shift[RangeLPS>>19];
c->low -= c->range;
*state= c->lps_state[s];
c->range = RangeLPS<<bit;