diff options
author | Loren Merritt <lorenm@u.washington.edu> | 2006-10-01 21:25:17 +0000 |
---|---|---|
committer | Loren Merritt <lorenm@u.washington.edu> | 2006-10-01 21:25:17 +0000 |
commit | 2833fc46462abd841e3d69242be9919c98ad3696 (patch) | |
tree | 4e9513d1913ff238c35e066877c8795b40d561c8 /libavcodec/h263dec.c | |
parent | e0769997cb753d8a3c9039b1de1542987cfc0692 (diff) | |
download | ffmpeg-2833fc46462abd841e3d69242be9919c98ad3696.tar.gz |
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/h263dec.c')
-rw-r--r-- | libavcodec/h263dec.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libavcodec/h263dec.c b/libavcodec/h263dec.c index b53192d745..4000645c70 100644 --- a/libavcodec/h263dec.c +++ b/libavcodec/h263dec.c @@ -693,6 +693,17 @@ retry: s->next_p_frame_damaged=0; } + if((s->avctx->flags2 & CODEC_FLAG2_FAST) && s->pict_type==B_TYPE){ + s->me.qpel_put= s->dsp.put_2tap_qpel_pixels_tab; + s->me.qpel_avg= s->dsp.avg_2tap_qpel_pixels_tab; + }else if((!s->no_rounding) || s->pict_type==B_TYPE){ + s->me.qpel_put= s->dsp.put_no_rnd_qpel_pixels_tab; + s->me.qpel_avg= s->dsp.avg_qpel_pixels_tab; + }else{ + s->me.qpel_put= s->dsp.put_qpel_pixels_tab; + s->me.qpel_avg= s->dsp.avg_qpel_pixels_tab; + } + if(MPV_frame_start(s, avctx) < 0) return -1; |