Log in

View Full Version : DirectShow VapourSynth filter


CrendKing
6th May 2021, 11:31
A while ago, I built a DirectShow filter for AviSynth (https://github.com/CrendKing/avisynth_filter/). Currently SVP uses it to do the frame interpolation for DirectShow video players (MPC-BE, MPC-HC, etc). Of course, in theory the filter should support any valid avs script.

Recently I added support for VapourSynth to the filter. So now not only mpv can use VapourSynth to do real-time filtering, you could do it in DS players. For example, I could do SVP frame interpolation with a hand-made vpy script.

Please give it a try and let me know what you think. Thanks!

PS: https://forum.doom9.org/showthread.php?t=174437 was very helpful. I really hope AviSynth+ could adopt the same asynchronous concurrency model. Would be much easier to use.

Also, is there a way to static link VapourSynth? AviSynth+ recently introduced (https://github.com/AviSynth/AviSynthPlus/pull/205) static link possibility. Would be cool to see the same happening in VS.

amayra
11th May 2021, 04:37
thank you

TheFluff
19th May 2021, 21:38
PS: https://forum.doom9.org/showthread.php?t=174437 was very helpful.

I'm very happy to hear that, I spent quite a bit of time on it and I'm glad someone found it useful :)

sofakng
27th July 2021, 18:38
I'm interested in this ... it seems like the SVP DirectShow integration works a bit better than VapourSynth.

Can you provide instructions on how to use this with mpv + vapoursynth + svp?

CrendKing
29th July 2021, 13:52
I'm interested in this ... it seems like the SVP DirectShow integration works a bit better than VapourSynth.

Can you provide instructions on how to use this with mpv + vapoursynth + svp?

This filter is for DirectShow. mpv does not use DirectShow.

This is to enable things like SVP to work on top of VapourSynth engine in players like MPC-HC/BE.

Or you can write your own VapourSynth script to inject to these players. The instruction can be found on the project page (https://github.com/CrendKing/avisynth_filter/#vapoursynth).