[MPlayer-dev-eng] [PATCH] fix interlaced xvidix overlay for Rage 128 Pro
Tobias Diedrich
td at informatik.uni-hannover.de
Sat May 18 13:56:03 CEST 2002
Someone should make sure this does not break Radeons in interlaced
mode before applying as I only have my Rage 128 Pro to test it with.
Note that I also need the previously posted ATI patch for my card to
work, so I attached that one too. (Minus the I420 part which I did not
verify). The first part (disabling fifo_wait and engine_idle) is needed
because otherwise it just hangs on init. If I apply only the first part,
I get a pink picture, so the disable color keying part is needed as well.
--
Tobias PGP: 0x9AC7E0BC
-------------- next part --------------
Index: main/vidix/drivers/radeon_vid.c
===================================================================
RCS file: /cvsroot/mplayer/main/vidix/drivers/radeon_vid.c,v
retrieving revision 1.46
diff -u -r1.46 radeon_vid.c
--- main/vidix/drivers/radeon_vid.c 17 Mar 2002 16:08:39 -0000 1.46
+++ main/vidix/drivers/radeon_vid.c 18 May 2002 11:40:02 -0000
@@ -1125,11 +1132,10 @@
dest_w = config->dest.w;
dest_h = config->dest.h;
if(radeon_is_dbl_scan()) dest_h *= 2;
- else
- if(radeon_is_interlace()) dest_h /= 2;
besr.dest_bpp = radeon_vid_get_dbpp();
besr.fourcc = config->fourcc;
besr.v_inc = (src_h << 20) / dest_h;
+ if(radeon_is_interlace()) besr.v_inc *= 2;
h_inc = (src_w << 12) / dest_w;
step_by = 1;
while(h_inc >= (2 << 12)) {
-------------- next part --------------
--- main/vidix/drivers/radeon_vid.c Thu May 2 13:30:34 2002
+++ main/vidix/drivers/radeon_vid_1.46_working.c Thu May 2 13:33:17 2002
@@ -295,6 +295,13 @@
}
}
+#ifdef RAGE128
+
+#define radeon_engine_idle()
+#define radeon_fifo_wait(entries)
+
+#else
+
static void _radeon_engine_idle(void);
static void _radeon_fifo_wait(unsigned);
#define radeon_engine_idle() _radeon_engine_idle()
@@ -423,7 +430,7 @@
radeon_engine_restore();
}
}
-
+#endif
#ifndef RAGE128
@@ -891,7 +898,7 @@
VID_DEPTH_12BPP| VID_DEPTH_15BPP|
VID_DEPTH_16BPP| VID_DEPTH_24BPP|
VID_DEPTH_32BPP;
- to->flags = VID_CAP_EXPAND | VID_CAP_SHRINK | VID_CAP_COLORKEY;
+ to->flags = VID_CAP_EXPAND | VID_CAP_SHRINK;/* | VID_CAP_COLORKEY;*/
return 0;
}
else to->depth = to->flags = 0;
More information about the MPlayer-dev-eng
mailing list