summaryrefslogtreecommitdiff
path: root/libavcodec
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2003-01-29 22:44:34 +0000
committerMichael Niedermayer <michaelni@gmx.at>2003-01-29 22:44:34 +0000
commit782c5984f130539b825ada941b600eef09552e05 (patch)
tree505f9be2db8e32eaa282bd3c4157451ce58273cf /libavcodec
parent69e1a1f26abad83a3f71ca98be4ee3f641c54271 (diff)
100000l
Originally committed as revision 1524 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/imgconvert.c31
1 files changed, 18 insertions, 13 deletions
diff --git a/libavcodec/imgconvert.c b/libavcodec/imgconvert.c
index 40538c61f4..2304092fd2 100644
--- a/libavcodec/imgconvert.c
+++ b/libavcodec/imgconvert.c
@@ -1294,6 +1294,15 @@ static void deinterlace_line(UINT8 *dst, UINT8 *lum_m4, UINT8 *lum_m3, UINT8 *lu
}
#else
+ {
+ mmx_t rounder;
+ rounder.uw[0]=4;
+ rounder.uw[1]=4;
+ rounder.uw[2]=4;
+ rounder.uw[3]=4;
+ pxor_r2r(mm7,mm7);
+ movq_m2r(rounder,mm6);
+ }
for (;size > 3; size-=4) {
DEINT_LINE_LUM
lum_m4+=4;
@@ -1328,6 +1337,15 @@ static void deinterlace_line_inplace(UINT8 *lum_m4, UINT8 *lum_m3, UINT8 *lum_m2
}
#else
+ {
+ mmx_t rounder;
+ rounder.uw[0]=4;
+ rounder.uw[1]=4;
+ rounder.uw[2]=4;
+ rounder.uw[3]=4;
+ pxor_r2r(mm7,mm7);
+ movq_m2r(rounder,mm6);
+ }
for (;size > 3; size-=4) {
DEINT_INPLACE_LINE_LUM
lum_m4+=4;
@@ -1410,19 +1428,6 @@ int avpicture_deinterlace(AVPicture *dst, AVPicture *src,
if ((width & 3) != 0 || (height & 3) != 0)
return -1;
-#ifdef HAVE_MMX
- {
- mmx_t rounder;
- rounder.uw[0]=4;
- rounder.uw[1]=4;
- rounder.uw[2]=4;
- rounder.uw[3]=4;
- pxor_r2r(mm7,mm7);
- movq_m2r(rounder,mm6);
- }
-#endif
-
-
for(i=0;i<3;i++) {
if (i == 1) {
switch(pix_fmt) {