Log in

View Full Version : TComb v2.0 (x86/x64)


Elegant
18th July 2015, 05:29
Hi guys, I decided to update tritical's old filter encompassing his to-do-list of changes as well as porting the code to x64 among other things. An attachment of the filter can be found at the bottom of this post.

Further information can be found in the readme as well as on my GitHub (https://github.com/Elegant996/TComb).

Enjoy!

ChiDragon
20th July 2015, 02:18
It's been a long time since I personally have had occasion to use TComb, so as far as functionality I'll just say thank you very much and place it in my plugins folder for the next time I'm playing with a LaserDisc capture.

Meanwhile, I guess I'm in a perfectionist mood because I noticed a couple things reading the description. Sorry, just trying to help! I'll use itty-bitty font to emphasize how unimportant these are. :o

Under Programmer Notes: "There work led to the port of this project."
Your section of the change-list in the readme.txt is using DD/MM/YYYY while tritical used the American format. This could get a little confusing if there are future updates.

Reel.Deel
20th July 2015, 03:05
Thanks Elegant! Nice to see another plugin from tritical available in 64-bit. I still have a handful of (yet to be processed) DVD's with dot crawl and rainbows. :)

mastrboy
29th July 2015, 20:17
Thanks :)

This is my goto filter for dotcrawl so a update is warmly welcomed.

Offtopic: Has Tritical left the Avisynth community for good? Been a while since I've seen a post from him...

SaurusX
24th November 2018, 17:18
This filter doesn't quite work the same as the 32-bit version. Much less effective, unfortunately. Anyone else come across this and have a workaround?

poisondeathray
24th November 2018, 18:40
This filter doesn't quite work the same as the 32-bit version. Much less effective, unfortunately. Anyone else come across this and have a workaround?

Can you be more specific ? For example, do you get different results with the same settings ? It might help to improve it if you provided an accurate description

A workaround would be to run the original 32bit version through mp_pipeline

StainlessS
24th November 2018, 19:13
Can you be more specific ? For example, do you get different results with the same settings ? It might help to improve it if you provided an accurate description


And a small sample file that exhibited differences would probably help someone to find any problems.

SaurusX
24th November 2018, 20:20
Here's a sample of the clip I'm looking at. I recently upgraded meGUI to the x64 version and I've been working at rebuilding my filter library. So far, the 64-bit TComb is far less effective at removing the dot crawl in comparison to the 32-bit version. In the clip below I'm focusing on the vertical lines of the rock monument at the very opening scene as a prime example. I'm using these same exact parameters for both cases:

TComb(mode=0, fthreshL=5, othreshL=4)


This is my entire script (if it helps):
MPEG2SOURCE("J:\Videos\DVDRips\!WORK\Roswell25.d2v")
i=MPEG2SOURCE("J:\Videos\DVDRips\!WORK\Roswell25.d2v")
edeint=i.nnedi3(-2)
TComb(mode=0, fthreshL=5, othreshL=4) #5,4 are the ideal setting for Roswell
TFM(slow=2,pp=7,mode=3,clip2=i.tdeint(mode=2,mthreshl=0,mthreshc=0,edeint=edeint))
TDecimate(mode = 1)
crop(0,2,-12,0)
chromashiftsp(x=2)
QTGMC(preset="slow",inputtype=1,tr0=0,tr1=2,tr2=1,smode=0,ezdenoise=1.3)
FineDehalo2(hconv="-1 -1 1 1 40 1 1 -1 -1", vconv="-1 -1 1 1 40 1 1 -1 -1")
dehalohmod(smooth=true) #kill those skeeters
dehalo_alpha(darkstr=0,brightstr=.2,ss=2) #De-halo the whole thing. In original video and from msharpen
dehalo_alpha(darkstr=0,brightstr=.4,ss=2,cs=true)
dehalo_alpha(darkstr=0,brightstr=.6,ss=2,cs=true)
aWarpSharp2(thresh=128, blur=2, type=0, depth=8, chroma=6)
hysteria(showmask=false,luma_cap=63,lowthresh=10,highthresh=15)
msharpen(mask=false,threshold=22,strength=40)
nnedi3_rpow2(rfactor=2,cshift="Spline36Resize",fwidth=720,fheight=480)
sharpen(.1)

SAMPLE CLIP HERE (https://www101.zippyshare.com/v/56xpG83j/file.html)

poisondeathray
24th November 2018, 21:40
Yes, I can replicate the issue. This x86 version works, and the original x86 tritical version works at similar strengths. This x64 version is "less effective" as you describe when using the same settings

Elegant looks to be active still (last post ~ 1 month ago)

Another option in the meantime would be to use x86 version, and avfs into the x64 script

SaurusX
6th April 2019, 18:39
A user named saiclabs at a different site compiled a new version of 64-bit TComb from Tritical's original source code. I don't think it has the 2.0 updates in it that Elegant tried to put in, but at least it works in 64-bit now.

https://www.upload.ee/files/9792816/TComb.7z.html

Reel.Deel
6th April 2019, 18:43
A user named saiclabs at a different site compiled a new version of 64-bit TComb from Tritical's original source code. I don't think it has the 2.0 updates in it that Elegant tried to put in, but at least it works in 64-bit now.

https://www.upload.ee/files/9792816/TComb.7z.html

But Elangant released a x64 version: https://github.com/Elegant996/TComb/releases

SaurusX
6th April 2019, 19:27
But Elangant released a x64 version: https://github.com/Elegant996/TComb/releases

It does not work unfortunately.

Shinkiro
20th February 2021, 02:56
The x64 version does not work for me either, maybe someone has a working one?

SaurusX
20th February 2021, 20:26
Here' is the saiclabs version of x64 TComb, again. As an attachment this time.

kedautinh12
21st February 2021, 01:54
Can you share another link?? Ex: Gdrive, mediafire

pinterf
21st February 2021, 11:53
A simple rebuild won't help, there is a small bug in x64 asm.

pinterf
22nd February 2021, 10:41
TComb v2.1 with a lot of bugfixes.
https://github.com/pinterf/TComb/releases

kedautinh12
22nd February 2021, 13:05
Thanks for your hard work

pinterf
22nd February 2021, 17:43
There still left one nasty bug in x64. An unsaved register in one of the assembler routines. And the bug appeared only on release version, and not every time. So it was undebuggable :) I caught it but I'll leave it for tomorrow. I think I'm gonna rewrite all those external assembler code to simd intrinsics. Yes. A future linux build will probably like it.

Reel.Deel
22nd February 2021, 21:51
I think I'm gonna rewrite all those external assembler code to simd intrinsics. Yes. A future linux build will probably like it.

Maybe you'll like it :D - https://github.com/dubhater/vapoursynth-tcomb/blob/master/src/simd_sse2.c

pinterf
22nd February 2021, 22:07
Thanks, too late :)
This was not a difficult stuff, meanwhile the rewrite is ready done from scratch. Plus I don't need to check again the correctness of another code. Variable types can differ, rounders, etc. I checked against C and they are the same. Happiness.

StainlessS
22nd February 2021, 22:11
Wi don need no steenkin vapersint code.

pinterf
22nd February 2021, 22:18
I need :) No XP, no MMX, no YUY2 and RGB24 compatibility, no Avisynth 2.5 interface problems, no users asking compatibility with fifteen-year-old scripts.

Reel.Deel
22nd February 2021, 22:21
Thanks, too late :)


You're too quick :scared:

pinterf
23rd February 2021, 09:10
New release v2.2.
I'm not saying that it comes with the remaining x64 fix, because though I fixed it for the sake of completeness then dropped all assembly and rewrote the whole assembler thing in SIMD.
Which was needed for the linux port as well.
So this source comes with CMake support -> Linux/gcc and Intel-less option

kedautinh12
23rd February 2021, 11:04
Thanks

SaurusX
23rd February 2021, 17:30
Brilliant. I had been making do with the saiclabs version of TComb x64, but it was definitely buggy. Thanks for doing a real update.

StainlessS
23rd February 2021, 18:57
Thanks :)

pinterf
23rd February 2021, 19:36
Y8/YV16/YV24/YV411 support is done but I usually don't do more than one release a day

pinterf
24th February 2021, 11:57
v2.3 (https://github.com/pinterf/TComb/releases/) is released with Y8, YV16, YV24, YV411 support

Emulgator
27th February 2021, 23:08
Deepest respects for all that cleanup work across so many plugins, pinterf !