I finally got the code to run a HLSL pixel shader in DX9 almost working.
https://github.com/mysteryx93/AviSynthShader/blob/master/VideoPresenter/D3D9RenderImpl.cpp
Here's a weird issue I'm still having. As I load the script, the first frame is black, which is OK. Then, the first time I seek towards a different frame, the frame remains black. The second time I seek to another frame, the first frame is returned. It seems to always returns the frame data of the previous call.
So if I make a diff between the input and output frames of the shader, it looks totally wrong; because it's a diff between two different frames.
Why is it not returning me the current frame data right away?
... just a thought ... could it be that the frame isn't done being processed when I call to get the result?