Log in

View Full Version : Renderers and Tearing


Xenoproctologist
19th May 2004, 22:52
Having just done an operating system reinstall and still seeing the video tearing which I had assumed was the result of driver cruft and OS attrition, I'm forced to ask:

Has anyone yet put together a list of what causes tearing in various VMR modes? Better yet, has anyone found a reliable way to eliminate said tearing? Or should VMR just be considered broken by design?

Maybe I'm surrounded by a Reality Distortion Field, but I have yet to see a combination of hardware, software, and VMR9 which did not result in vicious tearing at or about twenty percent of the way down the screen. Is this typical, or should I start buying lottery tickets?


Aside: A 25%+ CPU utilization hit for renderless VMR modes? What the heck is it doing with those 550 million CPU cycles? Spinning in place?



A couple of data points:

System 1:
CPU: Athlon XP 2.2GHz
Video: eVGA Geforce FX 5200

OS: Windows XP (fresh install)
Video Drivers: StarStorm v56.72
Player App.: Media Player Classic v6.4.8.2
Codec: ffdshow alpha 05/09/2004 (P3 optimized)

----------

System 2:
CPU: Athlon XP 1.4GHz
Video Card: ATI Radeon 9100

OS: Windows XP
Video Drivers: Catalyst 4.5
Player App.: Media Player Classic v6.4.8.2
Codec: Nero DVD Decoder(?)

----------

Tearing: (both systems)
Old Renderer: NO
Overlay: NO
VMR7 (windowed): NO
VMR9 (windowed): YES
VMR7 (renderless): YES
VMR9 (renderless): YES

avih
19th May 2004, 23:15
if your monitor refresh rate is not an exact multiple of the video frame rate, then it's not going to be smooth, and tearing could be the 'best' solution.

however, even if your monitor IS synched to the framerate, you still need to sync the frames with the monitor's vertical retrace signal.

re-clock does it best, and also slightly adjusts the playback framerate such that it fits perfectly with your monitor (if the monitor is set close enough to a multiple of the framerate)

Xenoproctologist
20th May 2004, 00:31
I've tried setting my monitor's refresh rate to an exact multiple. (24fps->72fps) Precisely zero benefit.

I've also tride Reclock, and all it does for me is push the tearing around the screen. (Note: Tearing does not occur anywhere near where Reclock claims the vsync should be.) On top of that, Reclock's audio resampling quality is absolutely abysmal. Granted, my onboard sound's resampling is considerably better, but that still leaves the pitch shift; my fairly-good relative pitch (not quite perfect pitch -- it tends to float a bit if I don't listen to music for a while) makes the annoyingly out-of-tune music worse than the original problem.

As it is, the Old, Overlay, and VMR7(windowed) renderers somehow manage tear -- even when the refresh rate isn't a multiple of the frame rate -- and the plus-or-minus one half frame @ 75Hz jitter is pretty much unnoticeable. I'd just like to get VMR9(renderless) to work as advertised.

Vitos
20th May 2004, 13:49
I have the same problem... Switching between "Old renderer" and VMR9 is tiring - once I need subtitles and once more smooth playback (would love to have both). Going back to overlay would solve the problem, but I like MPC and great-quality subtitling so much now.
I was wondering, why forcing v-synch for D3D in display drivers doesn't help in that case - looks like video rendering is treated some other way.

Maybe I'll give ReClock a try, but it seems like choosing other complication of checking monitor refresh rate for every video...

Rash
23rd May 2004, 20:04
Gee man. I've asked this same question twice and nobody replied to me. :) I guess no one is disturbed by this, or no one uses the VMR modes.

I think that's a problem with VMR libs actually. As all the players that support this mode have tearin and Re-Clock just don't do a thing about it. So you either go back to Overlay or you live with the tearing (like I do).

Besides, it is visible on 4:3 videos, isn't it?

Vitos
23rd May 2004, 20:39
Yep, it's a problem of VMR, regardless the player. However, I see the problem shows up when I resize the video window (ie. toggle full screen). When played at original size everything is ok, even without Reclock. Something that might matter here is a video card - I have ATI 8500.

And I see tearing almost on every video, but with 4:3 clips it's the most visible (about 15-20% on top of the screen). Very annoying in camera panning scene - in anime or my own video recordings.

There's another strange issue, but I think certainly ATI hardware/drivers related. When I have rendering or textures quality in video card advanced configuration tab set at least one step lower than maximum (for Direct3D of course), it causes jerkiness when subtiltles are showing on the screen. On my friend's laptop with ATI on-board there's that effect too. Not so annoying, but worth mentioning. And I am using MPC with VMR9 (Win2k)to be precise.

Looks like VMR still needs a lot of work.

gircobain
23rd May 2004, 20:54
Pardon my ignorance, but I'm quite unfamiliar with the term "tearing"
What exactly does it mean applied to video renderers?

Vitos
23rd May 2004, 21:18
Originally posted by gircobain
Pardon my ignorance, but I'm quite unfamiliar with the term "tearing"
What exactly does it mean applied to video renderers?

It means that picture displayed on screen consists of two frames (adjacent in time), so there is a visible discontinuity at top (ie. 10-20%) of the screen. The same matters occurs for example in 3D renedering, when displaying renedered frame isn't synchronized to vertical-synch of video card (bottom part of the screen is already from time B and top from earlier time A).

At least it's my understanding of "tearing" term, as far as I can explain...

Rash
23rd May 2004, 23:16
Originally posted by Vitos
Yep, it's a problem of VMR, regardless the player. However, I see the problem shows up when I resize the video window (ie. toggle full screen). When played at original size everything is ok, even without Reclock. Something that might matter here is a video card - I have ATI 8500.

And I see tearing almost on every video, but with 4:3 clips it's the most visible (about 15-20% on top of the screen). Very annoying in camera panning scene - in anime or my own video recordings.

There's another strange issue, but I think certainly ATI hardware/drivers related. When I have rendering or textures quality in video card advanced configuration tab set at least one step lower than maximum (for Direct3D of course), it causes jerkiness when subtiltles are showing on the screen. On my friend's laptop with ATI on-board there's that effect too. Not so annoying, but worth mentioning. And I am using MPC with VMR9 (Win2k)to be precise.

Looks like VMR still needs a lot of work.
You've just described the exact same problem I have, again. But it is not ATI's problem. Although I have the same video card as you, I've already tested it on many other video cards and the problem is there.

I know, it is pretty annoying. :(

RedDwarf69
24th May 2004, 00:18
Originally posted by Vitos
It means that picture displayed on screen consists of two frames (adjacent in time), so there is a visible discontinuity at top (ie. 10-20%) of the screen. The same matters occurs for example in 3D renedering, when displaying renedered frame isn't synchronized to vertical-synch of video card (bottom part of the screen is already from time B and top from earlier time A).

At least it's my understanding of "tearing" term, as far as I can explain...

Is a "double image" problem related to this? When using the Tearing Test from reclock is cleary visible. When paused the line in clear, but when playing the line flickers between two positions, making the line of the double size than when paused.

Vitos
24th May 2004, 18:39
Originally posted by RedDwarf69
Is a "double image" problem related to this? When using the Tearing Test from reclock is cleary visible. When paused the line in clear, but when playing the line flickers between two positions, making the line of the double size than when paused.

I've never seen that effect. That'll be really weird, and I have no clue how this could be explained... But might be related.
Try to slow down framerate in Reclock and see if it still visible with ie. 5 fps. I'm just curious...

RedDwarf69
24th May 2004, 20:20
Originally posted by Vitos
I've never seen that effect. That'll be really weird, and I have no clue how this could be explained... But might be related.
Try to slow down framerate in Reclock and see if it still visible with ie. 5 fps. I'm just curious...

I ever thinked this was a common problem!!! :)
I tried and at 5fps the line doesn't moves smoothly and is difficult to see the effect. A double size line isn't visible but the line flickers a little.
But playing with framerates I saw that the problems goes when I put framerate at refreshrate.
But the problem doesn't goes by putting framerate, to say, 60 fps. The problem goes if framerate is 60fps and refreshrate is 60Hz too, if framerate is 60 fps and refreshrate is 90 the problem still exists!!!

Now someone knows of a filter that repeats frames :p then I can play movies at 75fps at normal speed and without the problem?

BoNz1
25th May 2004, 09:28
I have the same problem, ATI Mobility Radeon 7500C. It would be great if this could get fixed. The only other alternative is to just install vsfilter and use the system default render.