I have a fairly simple playback graph in a .Net Windows Application. (via DirectShowLib)
File Source -> [Some Splitter] -> VMR7 || VMR9
The splitter could be lav, ffdhow, anything really, it is simply an intelligent connect.
The renderer will be VMR9 when available, VMR7 otherwise.
VMR is used for nothing clever, just to render the video windowless, and to capture samples when the user asks.
This has worked for years, the video could be anything including DV or MPEG2 (hence VMR for frame capture and not the Sample Grabber).
Just recently I have an issue on multiple Windows 10 systems that would all in fact use VMR9 (although VMR7 does not remedy the issue), apparent whilst playing certain avi files clipped smaller or larger than the original avi. Play at the original dimensions and the picture is fine.
Using the EVR rather than VMR solves all video issues, but it causes me some pain due to its image capture being the size of the output rectangle and not the source.
So I was wondering if anyone could shed any light on what I am experiencing whilst using VMR with avi files (multiple formats, DV / h264 ..). Note that graph studio and vlc player display the same issues.
The effect I would describe as serious ghosting on movement, note that the original video file if rendered on EVR or on VMR at source dimensions looks fine.
Really appreciate any thoughts.
---------------Extra Information-------------------------
Could well be worth knowing that all of the problem avi files are captured through a USB capture device from a composite / s-video source.
The presented artifact is typical for presentation of interlaced content without deinterlacing.
In certain cases (such as in your EVR testing) deinterlacing can be supplied automatically, esp. by means of Direct3D device. Otherwise you see the mentioned effect. As VMR is, roughly speaking, abandoned API it is quite possible that newer systems might fail to apply automatic deinterlacing via VMR-9 even though older systems could handle deinterlacing.
To resolve the problem you are interested to apply deinterlacing, whether it is hardware or software deinterlacing using an additional post-processing filter.