Mercurial > libavcodec.hg
comparison mpegvideo.c @ 3807:6a40092eb9e6 libavcodec
approximate qpel functions: sacrifice some quality for some decoding speed. enabled on B-frames with -lavdopts fast.
author | lorenm |
---|---|
date | Sun, 01 Oct 2006 21:25:17 +0000 |
parents | 6741c0e88310 |
children | a31f865dd68d |
comparison
equal
deleted
inserted
replaced
3806:e1986d9ddc2d | 3807:6a40092eb9e6 |
---|---|
3942 } | 3942 } |
3943 if (s->mv_dir & MV_DIR_BACKWARD) { | 3943 if (s->mv_dir & MV_DIR_BACKWARD) { |
3944 MPV_motion_lowres(s, dest_y, dest_cb, dest_cr, 1, s->next_picture.data, op_pix); | 3944 MPV_motion_lowres(s, dest_y, dest_cb, dest_cr, 1, s->next_picture.data, op_pix); |
3945 } | 3945 } |
3946 }else{ | 3946 }else{ |
3947 op_qpix= s->me.qpel_put; | |
3947 if ((!s->no_rounding) || s->pict_type==B_TYPE){ | 3948 if ((!s->no_rounding) || s->pict_type==B_TYPE){ |
3948 op_pix = s->dsp.put_pixels_tab; | 3949 op_pix = s->dsp.put_pixels_tab; |
3949 op_qpix= s->dsp.put_qpel_pixels_tab; | |
3950 }else{ | 3950 }else{ |
3951 op_pix = s->dsp.put_no_rnd_pixels_tab; | 3951 op_pix = s->dsp.put_no_rnd_pixels_tab; |
3952 op_qpix= s->dsp.put_no_rnd_qpel_pixels_tab; | |
3953 } | 3952 } |
3954 if (s->mv_dir & MV_DIR_FORWARD) { | 3953 if (s->mv_dir & MV_DIR_FORWARD) { |
3955 MPV_motion(s, dest_y, dest_cb, dest_cr, 0, s->last_picture.data, op_pix, op_qpix); | 3954 MPV_motion(s, dest_y, dest_cb, dest_cr, 0, s->last_picture.data, op_pix, op_qpix); |
3956 op_pix = s->dsp.avg_pixels_tab; | 3955 op_pix = s->dsp.avg_pixels_tab; |
3957 op_qpix= s->dsp.avg_qpel_pixels_tab; | 3956 op_qpix= s->me.qpel_avg; |
3958 } | 3957 } |
3959 if (s->mv_dir & MV_DIR_BACKWARD) { | 3958 if (s->mv_dir & MV_DIR_BACKWARD) { |
3960 MPV_motion(s, dest_y, dest_cb, dest_cr, 1, s->next_picture.data, op_pix, op_qpix); | 3959 MPV_motion(s, dest_y, dest_cb, dest_cr, 1, s->next_picture.data, op_pix, op_qpix); |
3961 } | 3960 } |
3962 } | 3961 } |