Releases: CrendKing/avisynth_filter
v1.2.1
v1.2.0
The main change of this version is to add support for interlaced videos. Specifically, downstream will receive samples with AM_SAMPLE2_PROPERTIES::dwTypeSpecificFlags properly filled. Also, in the AviSynth variant, if AviSynth+ with version equal of above 3.6.0 is detected, the source video frames will have the reserved frame properties set like the VapourSynth variant.
Unfortunately, due to the lack of frame properties and historical reasons, if AviSynth+ v3.5.1 and below is used, the interlace status can't be conveyed, and downstream will always see the frames as progressive.
-
Preserve AM_SAMPLE2_PROPERTIES::dwTypeSpecificFlags in the output samples, fix issue 59
-
Move remote control starting point back to Active(), after a FS reload, so that metadata are available by then, fix issue 60.
-
VPSF: Instead of passing through the dwTypeSpecificFlags, properly construct this data from related output frame information. AVSF: AVS+ does not have API to support this until the introduction of frame properties in 3.6.
-
Add frame properties for AVS+ 3.6+
v1.1.6
v1.1.5
v1.1.4
-
Always use UTF-8 locale, fix issue 57
-
More reliable approach to handle track switch
-
Replace the static extraSourceBuffer config with a reactive, self-adjusting mechanism. The old hidden config is no longer used.
-
Fix bug of reporting incorrect source average FPS
v1.1.3
-
Wait for Receive() to finish before entering EndFlush(). This fixes a bug that a source frame is received before flush is finished.
-
Use actual system time (millisecond precision) instead of frame time for frame rate calculations. User will notice the slight change in status page.
-
Add delivery frame rate to the status page
-
Use our own output frame start time, fix issue 56
v1.1.2
v1.1.1
Important: Please review the new section in README for proper configuration.
-
Remove duplicate output media types from GetMediaType() results
-
Reinstate the input pin reconnection logic, again fix issue 37. This fixes the issue of having "Video Renderer" when using MPC-HC + EVR + 10-bit video content. New input and output format will be 8-bit. Other players are unaffected.
-
Reset enumerated input media types when pin breaks connection
-
Use the _AbsoluteTime RFP to store frame start time
-
Fix bug where VapourSynth frame_handler's GetSourceFrame() returns source frames before the frame duration RFPs become available
v1.1.0
-
Add relevant Reserved Frame Properties to VapourSynth filter
-
Set VapourSynth output frame duration by the "_DurationXXX" reserved properties.
-
Handle output media type change in case of not receiving an update from upstream
-
Lower VapourSynth API version requirement to R3.5
v1.0.0
Backward incompatible version. You will need to follow the notes below to change the config files.
Introduce support for VapourSynth:
-
New Visual Studio project that outputs a new "vapoursynth_filter.dll" artifact. Codes that share the same logic AviSynth version are placed in a Visual Studio Shared Project "filter_common", while each filter maintains their special frame server and handler codes.
-
Replace most "AviSynth" and "avs" words in the filter_common project with something neutral. For example, CAviSynthFilter -> CSynthFilter.
-
Settings are changed:
- For registry, the old settings are stored in "HKCU\Software\AviSynthFilter", the new settings are stored in "HKCU\Software\AviSynthFilter\AviSynth Filter" and "HKCU\Software\AviSynthFilter\VapourSynth Filter".
- For portable, the new VapourSynth settings are stored in vapoursynth_filter.ini.
- The old "AvsFile" setting name is renamed to "ScriptFile".
- Note that since VapourSynth does not natively support RGB24 format, the setting "InputFormat_RGB24" is removed for VapourSynth Filter.
-
The filters now links to the frame server's import library, but delay load the dlls at runtime.
-
Change the build script from Windows batch to PowerShell for more functionality and control, mostly due to batch's lack of JSON processing power, and now we need to call GitHub API for information.
-
Fix a bug where switching video files may cause a crash due to the streaming thread not properly shut down.