[FFmpeg-cvslog] r22084 - trunk/libavcodec/h264_cabac.c

michael subversion
Fri Feb 26 23:45:36 CET 2010


Author: michael
Date: Fri Feb 26 23:45:35 2010
New Revision: 22084

Log:
Optimize (amvd>2)+(amvd>32), about 1 cpu cycles faster.
patch by Zhou Zongyi @ zhouzy () os punkt pku dot edu speck cn

Modified:
   trunk/libavcodec/h264_cabac.c

Modified: trunk/libavcodec/h264_cabac.c
==============================================================================
--- trunk/libavcodec/h264_cabac.c	Fri Feb 26 19:50:01 2010	(r22083)
+++ trunk/libavcodec/h264_cabac.c	Fri Feb 26 23:45:35 2010	(r22084)
@@ -912,7 +912,8 @@ static int decode_cabac_mb_ref( H264Cont
 static int decode_cabac_mb_mvd( H264Context *h, int ctxbase, int amvd, int *mvda) {
     int mvd;
 
-    if(!get_cabac(&h->cabac, &h->cabac_state[ctxbase+(amvd>2)+(amvd>32)])){
+    if(!get_cabac(&h->cabac, &h->cabac_state[ctxbase+((amvd-3)>>(INT_BIT-1))+((amvd-33)>>(INT_BIT-1))+2])){
+//    if(!get_cabac(&h->cabac, &h->cabac_state[ctxbase+(amvd>2)+(amvd>32)])){
         *mvda= 0;
         return 0;
     }



More information about the ffmpeg-cvslog mailing list