summaryrefslogtreecommitdiff
path: root/libavcodec/dsputil.c
diff options
context:
space:
mode:
authorLoren Merritt <lorenm@u.washington.edu>2006-10-01 21:25:17 +0000
committerLoren Merritt <lorenm@u.washington.edu>2006-10-01 21:25:17 +0000
commit2833fc46462abd841e3d69242be9919c98ad3696 (patch)
tree4e9513d1913ff238c35e066877c8795b40d561c8 /libavcodec/dsputil.c
parente0769997cb753d8a3c9039b1de1542987cfc0692 (diff)
approximate qpel functions: sacrifice some quality for some decoding speed. enabled on B-frames with -lavdopts fast.
Originally committed as revision 6412 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/dsputil.c')
-rw-r--r--libavcodec/dsputil.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/libavcodec/dsputil.c b/libavcodec/dsputil.c
index dcf6a543f3..ae5902f79d 100644
--- a/libavcodec/dsputil.c
+++ b/libavcodec/dsputil.c
@@ -4165,6 +4165,9 @@ void dsputil_init(DSPContext* c, AVCodecContext *avctx)
c->prefetch= just_return;
+ memset(c->put_2tap_qpel_pixels_tab, 0, sizeof(c->put_2tap_qpel_pixels_tab));
+ memset(c->avg_2tap_qpel_pixels_tab, 0, sizeof(c->avg_2tap_qpel_pixels_tab));
+
#ifdef HAVE_MMX
dsputil_init_mmx(c, avctx);
#endif
@@ -4193,6 +4196,13 @@ void dsputil_init(DSPContext* c, AVCodecContext *avctx)
dsputil_init_bfin(c,avctx);
#endif
+ for(i=0; i<64; i++){
+ if(!c->put_2tap_qpel_pixels_tab[0][i])
+ c->put_2tap_qpel_pixels_tab[0][i]= c->put_h264_qpel_pixels_tab[0][i];
+ if(!c->avg_2tap_qpel_pixels_tab[0][i])
+ c->avg_2tap_qpel_pixels_tab[0][i]= c->avg_h264_qpel_pixels_tab[0][i];
+ }
+
switch(c->idct_permutation_type){
case FF_NO_IDCT_PERM:
for(i=0; i<64; i++)