diff options
author | Kostya Shishkov <kostya.shishkov@gmail.com> | 2006-09-02 04:53:49 +0000 |
---|---|---|
committer | Kostya Shishkov <kostya.shishkov@gmail.com> | 2006-09-02 04:53:49 +0000 |
commit | b0c8e1b80a308d71fed64eeb9c46d411dfcecd68 (patch) | |
tree | 087c7cbb8b9d9d06a735d977ffb9d573acf91279 /libavcodec | |
parent | e34350a376d4c28a6770e34fe4afb42a28fc00f0 (diff) | |
download | ffmpeg-b0c8e1b80a308d71fed64eeb9c46d411dfcecd68.tar.gz |
Replace usage of put_*_vc1_qpel_pixels_tab with put_*_h264_chroma_pixels_tab
Originally committed as revision 6151 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/vc1.c | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/libavcodec/vc1.c b/libavcodec/vc1.c index 7e76ecdad9..110e435fd6 100644 --- a/libavcodec/vc1.c +++ b/libavcodec/vc1.c @@ -879,8 +879,15 @@ static void vc1_mc_1mv(VC1Context *v, int dir) if(s->flags & CODEC_FLAG_GRAY) return; /* Chroma MC always uses qpel bilinear */ uvdxy = ((uvmy & 3) << 2) | (uvmx & 3); - dsp->put_vc1_qpel_pixels_tab[uvdxy](s->dest[1], srcU, s->uvlinesize, v->rnd); - dsp->put_vc1_qpel_pixels_tab[uvdxy](s->dest[2], srcV, s->uvlinesize, v->rnd); + uvmx = (uvmx&3)<<1; + uvmy = (uvmy&3)<<1; + if(!v->rnd){ + dsp->put_h264_chroma_pixels_tab[0](s->dest[1], srcU, s->uvlinesize, 8, uvmx, uvmy); + dsp->put_h264_chroma_pixels_tab[0](s->dest[2], srcV, s->uvlinesize, 8, uvmx, uvmy); + }else{ + dsp->put_no_rnd_h264_chroma_pixels_tab[0](s->dest[1], srcU, s->uvlinesize, 8, uvmx, uvmy); + dsp->put_no_rnd_h264_chroma_pixels_tab[0](s->dest[2], srcV, s->uvlinesize, 8, uvmx, uvmy); + } } /** Do motion compensation for 4-MV macroblock - luminance block @@ -1077,8 +1084,15 @@ static void vc1_mc_4mv_chroma(VC1Context *v) /* Chroma MC always uses qpel bilinear */ uvdxy = ((uvmy & 3) << 2) | (uvmx & 3); - dsp->put_vc1_qpel_pixels_tab[uvdxy](s->dest[1], srcU, s->uvlinesize, v->rnd); - dsp->put_vc1_qpel_pixels_tab[uvdxy](s->dest[2], srcV, s->uvlinesize, v->rnd); + uvmx = (uvmx&3)<<1; + uvmy = (uvmy&3)<<1; + if(!v->rnd){ + dsp->put_h264_chroma_pixels_tab[0](s->dest[1], srcU, s->uvlinesize, 8, uvmx, uvmy); + dsp->put_h264_chroma_pixels_tab[0](s->dest[2], srcV, s->uvlinesize, 8, uvmx, uvmy); + }else{ + dsp->put_no_rnd_h264_chroma_pixels_tab[0](s->dest[1], srcU, s->uvlinesize, 8, uvmx, uvmy); + dsp->put_no_rnd_h264_chroma_pixels_tab[0](s->dest[2], srcV, s->uvlinesize, 8, uvmx, uvmy); + } } /** |