Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
|
![]() |
#1 | Link |
Registered User
Join Date: Jan 2014
Posts: 2,412
|
RemoveDirt - pfmod
RemoveDirt v1.0 (20250108)
https://github.com/pinterf/RemoveDirt/releases/tag/v1.0 Milestone: Vapoursynth (API v4) support RemoveDirt v0.9.2 (20190324) https://github.com/pinterf/RemoveDir...ses/tag/v0.9.2 Link to the previous topic: https://forum.doom9.org/showthread.p...threadid=70856 Code:
# RemoveDirt - pfmod A plugin for removing dirt from film clips. Port of classic RemoveDirt 0.9 to Avisynth v2.6 interface (x86/x64), adding new color spaces, bugfixes. Functions in plugin: RestoreMotionBlocks and SCSelect. This mod does not support other filters appearing in 1.0beta. Note: Previous v0.9 DLL versions named differently (RemoveDirtT.DLL, RemoveDirtSSE2.DLL) should be deleted from your plugin folder. - (20190324 v0.9.2) - RestoreMotionBlocks: 10-16 bit support. Relevant threshold and noise parameters are bit depth independent. - minor speedup - SCSelect: add support for 10-16 bits and 32 bit float clips - SCSelect: add support for planar RGB - FIX: SCSelect: make it work properly for large frames (>8MPixel) - FIX: SCSelect: Makes use the whole frame: now counts the rightmost non-mod32 pixels as well. - Clang 7.0.1 support (LLVM) with Visual Studio 2017 (15.9.9) (LLVM 8.0.0: not tried yet) - Install LLVM 7.0.1 (http://releases.llvm.org/download.html, Windows pre-built libraries) - Install Clang Power Tools & LLVM Compiler Toolchain - https://marketplace.visualstudio.com/items?itemName=caphyon.ClangPowerTools - https://marketplace.visualstudio.com/items?itemName=LLVMExtensions.llvm-toolchain - update html docs - add clang-built DLLs to the released version - (20190314 v0.9.1) - project moved to github: https://github.com/pinterf/RemoveDirt - built using Visual Studio 2017 - x64 build for Avisynth+ - Added version resource to DLL - Changed to AVS 2.6 plugin interface - Fix: RestoreMotionBlocks: grey=false: it was copying 8x4 chroma pixels for YV12 and 8x8 for YUY2 instead of 4x4 and 8x4 blocks - Fix: SCSelect: Old v0.9 SSE2 code omitted difference checking for every second 8 columns - Removed MMX code, now requires SSE2 - Reports MT Modes for Avisynth+: MT_SERIALIZED for SCSelect - Reports MT Modes for Avisynth+: MT_MULTI_INSTANCE for RestoreMotionBlocks (may not be any faster) - Added Y, YV16 and YV24 support besides existing YV12 and planar-hacked-YUY2 - (20190312) Initial source v0.9 (2005/05/07) moved to VS2017 project Links ===== Project: https://github.com/pinterf/RemoveDirt Forum: https://forum.doom9.org/showthread.php?t=176199 Additional info: http://avisynth.nl/index.php/RemoveDirt Last edited by pinterf; 8th January 2025 at 17:35. Reason: New build |
![]() |
![]() |
![]() |
#7 | Link |
Registered User
Join Date: Dec 2005
Location: Germany
Posts: 1,822
|
I think the VS port wasn't finished yet. The one dll I found crashes often. Thx for the release.
I always wondered how hard it is to make "hybrid plugins" now which supports vs and avs+, since avs+ now supports 16bit and the same color spaces? Some plugins like this exists: knlmeans, f3kdb, ffms2 Or is it just too cumbersome because of the different threading models? p.s. You can also install RemoveDirt via avsrepo now
__________________
AVSRepoGUI // VSRepoGUI - Package Manager for AviSynth // VapourSynth VapourSynth Portable FATPACK || VapourSynth Database Last edited by ChaosKing; 14th March 2019 at 22:51. |
![]() |
![]() |
![]() |
#8 | Link |
Registered User
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,607
|
been waiting for this, thanks
__________________
See My Avisynth Stuff |
![]() |
![]() |
![]() |
#9 | Link | |
Professional Code Monkey
Join Date: Jun 2003
Location: Kinnarps Chair
Posts: 2,598
|
Quote:
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet |
|
![]() |
![]() |
![]() |
#10 | Link |
Registered User
Join Date: Jan 2014
Posts: 2,412
|
New build.
Download RemoveDirt v0.9.2 Just now: experimental (and for me quicker) clang build inside. Original code is almost completely rewritten by now. Code:
- (20190324 v0.9.2) - RestoreMotionBlocks: 10-16 bit support. Relevant threshold and noise parameters are bit depth independent. - minor speedup - SCSelect: add support for 10-16 bits and 32 bit float clips - SCSelect: add support for planar RGB - FIX: SCSelect: make it work properly for large frames (>8MPixel) - FIX: SCSelect: Makes use the whole frame: now counts the rightmost non-mod32 pixels as well. - Clang 7.0.1 support (LLVM) with Visual Studio 2017 (15.9.9) (LLVM 8.0.0: not tried yet) - Install LLVM 7.0.1 (http://releases.llvm.org/download.html, Windows pre-built libraries) - Install Clang Power Tools & LLVM Compiler Toolchain - https://marketplace.visualstudio.com...langPowerTools - https://marketplace.visualstudio.com...llvm-toolchain - update html docs - add clang-built DLLs to the released version |
![]() |
![]() |
![]() |
#11 | Link | |
Registered User
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,607
|
Quote:
![]() any plan to port RemoveGrainT to x64? it only one missed for run RemoveDirtMC_SE in x64
__________________
See My Avisynth Stuff |
|
![]() |
![]() |
![]() |
#13 | Link |
Registered User
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,607
|
__________________
See My Avisynth Stuff |
![]() |
![]() |
![]() |
#14 | Link |
Registered User
Join Date: Jan 2014
Posts: 2,412
|
I'm near the end of porting (including to make the source human readable, re-creating plain C language versions, these works take a huge amount of time as well). Right now I put it in the RemoveDirt DLL, I woudn't create a new DLL just for the sake of this single function. Opinion?
|
![]() |
![]() |
![]() |
#15 | Link | |
Broadcast Encoder
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 3,180
|
Quote:
![]() Out of curiosity, what are the benefits of the Clang compiled version over the normal x86 version? Thank you in advance. |
|
![]() |
![]() |
![]() |
#16 | Link |
Registered User
Join Date: Jan 2014
Posts: 2,412
|
Clang sometimes generates quicker code, it seems that it features with smarter optimizer than MS. For example the above mentioned TemporalRepair has modes that run 10-15% faster in clang version than with MS built DLL.
I was also looking at the generated assembly code based on pure C source. clang was able to vectorize (parallel computing of pixel data using mm registers) situations where MS simply stuck with linear one-by-one processing. |
![]() |
![]() |
![]() |
#18 | Link |
Registered User
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,607
|
I just tried clang in xp in vm, it's can't load the dll with error 0x36b1, normal one work fine, clang 64 bit work fine in windows server 2016
__________________
See My Avisynth Stuff |
![]() |
![]() |
![]() |
#19 | Link | |
Acid fr0g
Join Date: May 2002
Location: Italy
Posts: 2,871
|
Quote:
![]()
__________________
@turment on Telegram |
|
![]() |
![]() |
![]() |
Thread Tools | Search this Thread |
Display Modes | |
|
|