CrendKing / avisynth_filter

DirectShow filters that put AviSynth and VapourSynth into video playing
MIT License
107 stars 8 forks source link

Black screen after clean installation #51

Closed chainikdn closed 3 years ago

chainikdn commented 3 years ago

Just installed clean fresh Window 10 21H1 in a VM, then installed SVP. After switching from ffdshow to AVSF - it doesn't work at all. The filter is missing from the filters list, player shows black screen. What am I missing? avsf.log

CrendKing commented 3 years ago

It looks like registration problem. Does regsvr32 avisynth_filter_64.ax give you success result? If not, then the registration in MPC is probably spurious.

Also, if you can build the filter yourself, it's probably easier figure this out by yourself ;-) I'll help on any specifics.

chainikdn commented 3 years ago

at least the property page works, and it writes the log in runtime so I suppose it's registered

CrendKing commented 3 years ago

If property page works, yeah, it should have registered. But never hurt trying, right?

Does the same file have problem on the real machine? It could be some dependency problem (missing C++ runtime, etc) or capability problem (e.g. virtual machine lacks the GPU capacity to do acceleration or madVR rendering).

chainikdn commented 3 years ago

it isn't just one particular file but any video and everything works well via ffdshow raw don't you see from the log that something strange happens?

CrendKing commented 3 years ago

Yes, the sequence is strange, and I think I've saw these before, but I don't know what exactly is the cause. Does AVSF set to have "Preferred" merit? Have you used the "Reset List" button to reset the media types? Try the debug version and see if any assertion pops.

And what's the downstream? EVR?

chainikdn commented 3 years ago

Does AVSF set to have "Preferred" merit? Have you used the "Reset List" button to reset the media types? Try the debug version and see if any assertion pops. EVR?

Yes. Yes. Nothing. Yes, but avsf doesn't want to load with any other renderer too.

CrendKing commented 3 years ago

I just spawned a clean virtual machine, refresh install MPC-HC, put SVP's AviSynth.dll and AVSF ax in it and able to play filtered video correctly. I can't test SVP since I have only one SVP license you gave me, but we know SVP is fine, so the problem must be somewhere else?

chainikdn commented 3 years ago

More dark magic: I tried today's last build - and it doesn't work as before. Then I got latest sources and built them myself, copied to the VM, and guess what? It works.

I took .h and .lib from 3.5.1, not the latest versions from github. actually, with the latest headers and lib it also works

CrendKing commented 3 years ago

Since you can build the filter yourself, you know you can remote debugging into the VM guest? Setup that remote tools in guest, load the not working version in MPC, attach and debug from host. Should be easy to get the error message. It might be a dependency issue.

chainikdn commented 3 years ago

btw, 0.9.4-release works, and 0.10.0-release doesn't 0.9.4 file size - 545 KB, 0.10.0 file size - 389 KB what was changed? there might be some issue in the build system used

chainikdn commented 3 years ago

ok, the case seem closed... EVR doesn't support anything other than YUY2 in a VirtualBox, cause

The graphics driver determines which video formats are supported and 0.10.0-1.1.0 doesn't have that input reconnection logic T 4868 @ 453: Pins are connected with media types: NV12 -> YUY2 T 4868 @ 453: Attempt to reconnect input pin with media type YUY2

the last build from 'Actions' works