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 |
typo lover
Join Date: May 2009
Posts: 595
|
TCannyMod
Canny edge detection filter for Avisynth2.6x based on tcanny by tritical.
slow (because almost all processings are performed in the floating point), but faster than tcanny about 1400% to 2500%(by the favor of SSE/SSE2 and smart hysteresis algorithm). binary: TCannyMod-1.2.0.zip source code: https://github.com/chikuzen/TCannyMod/ requirement: * Avisynth2.6.0/Avisynth+r1576 or greater * Microsoft Visual C++ 2015 Redistributable Package * WindowsVista sp2/7 sp1/8.1/10 * SSE2 capable CPU EDIT: 2016-05-25 update to 1.2.0
__________________
my repositories Last edited by Chikuzen; 25th May 2016 at 10:16. |
![]() |
![]() |
![]() |
#2 | Link | |
Registered User
Join Date: Sep 2008
Posts: 363
|
Quote:
![]() And more of a curiosity question, would this plugin be even faster if AVX optimization was added considering it's floating point heavy?
__________________
(i have a tendency to drunk post) |
|
![]() |
![]() |
![]() |
#3 | Link | ||
typo lover
Join Date: May 2009
Posts: 595
|
Quote:
Quote:
My machine is old penlyn.
__________________
my repositories Last edited by Chikuzen; 18th August 2013 at 11:40. |
||
![]() |
![]() |
![]() |
#5 | Link | |
typo lover
Join Date: May 2009
Posts: 595
|
Quote:
It is a foolish act to release a new binary whenever a bug is found in MSVCRT. The developer who likes static link is an irresponsible person who does not consider such a thing. And in my experience, dynamic linked binaries are a bit faster than static linked.
__________________
my repositories |
|
![]() |
![]() |
![]() |
#6 | Link |
LaTo INV.
Join Date: Jun 2007
Location: France
Posts: 701
|
|
![]() |
![]() |
![]() |
#7 | Link |
typo lover
Join Date: May 2009
Posts: 595
|
update to 0.1.0
* fix some typo * add new function 'GBlur' * add new argument 'sobel' * sigma allows to set to 0 (do not blur before edge detection)
__________________
my repositories |
![]() |
![]() |
![]() |
#8 | Link |
typo lover
Join Date: May 2009
Posts: 595
|
update to 0.1.1
* fix crash when sigma is too large.
__________________
my repositories |
![]() |
![]() |
![]() |
#9 | Link |
Registered User
Join Date: Aug 2011
Posts: 103
|
It seems using left Crop before TCannyMod will return error "TCannyMod: Invalid memory alignment".
This script returns error Code:
BlankClip(1000, 1920, 1080, "YV12") Crop(4, 0, 0, 0) TCannyMod() Code:
BlankClip(1000, 1920, 1080, "YV12") Crop(0, 4, -4, -4) TCannyMod() |
![]() |
![]() |
![]() |
#10 | Link | |
HeartlessS Usurer
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,660
|
Quote:
Code:
BlankClip(1000, 1920, 1080, "YV12") Crop(4, 0, 0, 0,align=true) TCannyMod()
__________________
I sometimes post sober. StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace "Some infinities are bigger than other infinities", but how many of them are infinitely bigger ??? |
|
![]() |
![]() |
![]() |
#11 | Link |
typo lover
Join Date: May 2009
Posts: 595
|
updated to v1.0.0
__________________
my repositories |
![]() |
![]() |
![]() |
#12 | Link |
typo lover
Join Date: May 2009
Posts: 595
|
update to 1.1.0.
__________________
my repositories |
![]() |
![]() |
![]() |
#14 | Link | |
typo lover
Join Date: May 2009
Posts: 595
|
Quote:
![]()
__________________
my repositories |
|
![]() |
![]() |
![]() |
#15 | Link |
typo lover
Join Date: May 2009
Posts: 595
|
update to 1.2.0
- Set filter mode as MT_NICE_FILTER automatically on Avisynth+ MT. - Use buffer pool on Avisynth+ MT. - Disable AVX2/FMA3/AVX code when /arch:AVX2 is not set. - Disable AVX2/FMA3/AVX code on Avisynth2.6.
__________________
my repositories |
![]() |
![]() |
![]() |
#16 | Link |
Registered User
Join Date: Oct 2002
Location: France
Posts: 2,233
|
A little question about things like this in your code :
Code:
#if defined(_MSC_VER) __cpuid(array, info_type); #else __cpuid(info_type, array[0], array[1], array[2], array[3]); #endif Is it Intel compiler, or another ? In what case do you put the Intel compiler ? ![]() |
![]() |
![]() |
![]() |
#17 | Link | |
typo lover
Join Date: May 2009
Posts: 595
|
Quote:
That code was written to use it by vapoursynth plugins originally. Since avisynth's GetCPUFlags() does not support AVX2 and FMA3, I use it on avisynth plugins too.
__________________
my repositories Last edited by Chikuzen; 26th May 2016 at 11:19. |
|
![]() |
![]() |
![]() |
#18 | Link |
Registered User
Join Date: Jul 2003
Location: Italy
Posts: 1,132
|
Don't know if this is the right place to post (or maybe in the avs+ topic?) but I get an "Avisynth open failure: system exception - access violation" when just loading the plugin (on latest dev avs+ r2397). The strange thing is that this happens only on x86 because the x64 version seems to work fine (at least it load the plugin).
|
![]() |
![]() |
![]() |
Thread Tools | Search this Thread |
Display Modes | |
|
|