Log in

View Full Version : fft3dGPU 0.8.2


Pages : 1 2 3 [4] 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

Revgen
20th May 2005, 23:56
This could be true, because I have to open my avi in Gordian Knot using the avs script that I created. Gordian Knot can't read my avi file because I captured it using a special directshow version of Huffyuv that uses YV12. The only way Gordian Knot and the Virtual Dub program included can read it is by using the "directshowsourece=myclip.avi" parameter in AVISynth.

Gordian Knot uses its own self-created .avs script and feeds it to Virtual Dub when it encodes video, so there may be a problem here.

tsp
21st May 2005, 00:54
Doh nvperfHud was messed up in 0.46 so I released version 0.46.1 that fixes it. Also added a FAQ section to the doc.

Revgen: From my first initial testing with GKNOT it seems a little random when it happends.

Revgen
21st May 2005, 01:26
Random?

It happens every time for me.

Does your filter use AGP memory?

I currently set aside 256mb of RAM for my AGP card to use. Would increasing it to 512mb help at all?

Backwoods
21st May 2005, 02:01
Just a silly little request. Can you rename your future Readme.txt to fft3dgpu_readme.txt?

MacAddict
21st May 2005, 02:20
Originally posted by Backwoods
Just a silly little request. Can you rename your future Readme.txt to fft3dgpu_readme.txt? Thank you, it was my next request as well ;)

Leak
21st May 2005, 10:18
Originally posted by Revgen
I captured it using a special directshow version of Huffyuv that uses YV12. The only way Gordian Knot and the Virtual Dub program included can read it is by using the "directshowsourece=myclip.avi" parameter in AVISynth.

Well, I encode quite a bit to YV12 HuffYUV files, but I'm using ffdshow's VfW interface for this - and with ffdshow set to decode HuffYUV in it's VfW settings I can directly open the file in Virtual Dub with no problems.

Just my .02 EUR...

np: Quinoline Yellow - Sealed (Dol-Goy Assist)

Revgen
21st May 2005, 17:28
Well, your suggestion works somewhat. I can now open my avi file without using avisynth, but unfortunately I still can't encode using FP32.

I guess I'll just have to do a manual 2-pass encode the old-fashioned way with Virtual Dub. Unless there is another frontend that can do a 2-pass encode other than GK.

vinetu
21st May 2005, 21:16
Revgen,
If you feed the fft3dGPU with low res image -let say add a "BilinearResize(320,240)" line before fft3dGPU - will that work with GK and FP32?
It's just for tracking - not a solution

MacAddict
21st May 2005, 21:48
Slightly OT but seems like you could use MeGUI or avs2avi to check the problem?

tsp
21st May 2005, 21:55
Revgen: I don't know much about GKNOT could you please descripe what exactly you do. Shrinking the source would work because it reduce the size of the needed memory but increasing the amount of AGP memory wouldn't because FFT3dGPU only use very little AGP memory (~1 MB).

Backwoods: Now you mentions it. It really annoys me when other filterwriters just call the docs readme.txt but it is really easy to forget that because I don't copy my own docs inside the plugin directory :o But in the next version it will definitely be called fft3dgpu_readme.txt or fft3dgpu.txt (I might even create a html doc).

Zetto
22nd May 2005, 05:30
So far, I didn't see any artifacts and encoding works with HT :D Finally! However, I am experimenting with sharpen now and it gives me problems every now and then. It works but does not accept values higher than +1 and it sometimes forces vdub to quit without any error messages or vdub just doesn't want to load the avs. I have to quit and reload the file to make it work (without making any changes to the script). Didn't try negative values since it seems a little unproductive - after all, fft3dgpu already softening up the image :D

tsp
22nd May 2005, 11:24
Zetto: What script are you using? This one works on my computer:
fft3dgpu(sharpen=200,plane=0)
The result are ugly but it works. But anyway I think i will rewrite the sharpening code so it does an ordinary unsharpen mask sharpen to avoid ringing(but I suspect the ringing could just be caused by the MJPEG compression and it is just more visible when applying the sharpening)

Revgen
22nd May 2005, 15:21
Originally posted by Zetto
So far, I didn't see any artifacts and encoding works with HT :D Finally! However, I am experimenting with sharpen now and it gives me problems every now and then. It works but does not accept values higher than +1 and it sometimes forces vdub to quit without any error messages or vdub just doesn't want to load the avs. I have to quit and reload the file to make it work (without making any changes to the script). Didn't try negative values since it seems a little unproductive - after all, fft3dgpu already softening up the image :D

I've experimented with the sharpen filter a little, and I've never had this problem.

What version of VirtualDub do you use?

I use VirtualDubMod 1.5.10.1 app that comes with Gordian Knot.

Zetto
22nd May 2005, 19:43
I use fft3dgpu(sigma=5,bt=3,mode=1,sharpen=1) with latest regular vdub v1.6.5 build 23350. I guess it's the vdub's fault :D I'll try vdubmod a little later on. TSP, please do improve on sharpen.. Check out other sharpeners with a goal of integrating them ;)

BTW I just noticed the lockup in task manager - the cpu1 usage dropped to 0% while cpu0 kernel rose to 45% for about 10 sec - symptoms of when vdub locked up with .44 version of fft3dgpu... I wonder what happened to that frame that was being processed :confused: It was first pass though, so hopefully second pass will produce a nice frame ;)

So the good news is that the workaround works, but on the bad side of things it doesn't address the issue: why do lockups occur in the first place? After all, without HT, it's smooth sailing all the way throuh.

Revgen
22nd May 2005, 21:29
Originally posted by Zetto
I use fft3dgpu(sigma=5,bt=3,mode=1,sharpen=1) with latest regular vdub v1.6.5 build 23350. I guess it's the vdub's fault :D I'll try vdubmod a little later on.

According to the VirtualDub sourceforge website ( http://virtualdub.sourceforge.net/ ) the v1.6.5 build is an "experimental" build. The older 1.5.10 build is considered stable. I'm betting that the problem is VirtualDub's fault.

tsp
22nd May 2005, 21:31
Originally posted by Zetto
I use fft3dgpu(sigma=5,bt=3,mode=1,sharpen=1) with latest regular vdub v1.6.5 build 23350. I guess it's the vdub's fault :D I'll try vdubmod a little later on. TSP, please do improve on sharpen.. Check out other sharpeners with a goal of integrating them ;)

just tried fft3dgpu(sigma=5,bt=3,mode=1,sharpen=20) and it doesn't crash. wonder of it is HT again. Could you try running with only 1 cpu and see if that works


BTW I just noticed the lockup in task manager - the cpu1 usage dropped to 0% while cpu0 kernel rose to 45% for about 10 sec - symptoms of when vdub locked up with .44 version of fft3dgpu... I wonder what happened to that frame that was being processed :confused: It was first pass though, so hopefully second pass will produce a nice frame ;)

So the good news is that the workaround works, but on the bad side of things it doesn't address the issue: why do lockups occur in the first place? After all, without HT, it's smooth sailing all the way throuh.
that sounds look a lockup.

I think it happends because I use a rarely used directx command and it might be because of that it hasn't been tested that much with HT. So the command doesn't work right but because it doesn't affect the rendering the result should be ok.

JnZ
22nd May 2005, 23:54
Hi everybody,

I've just make some speed tests:

Settings:
FFT3DFilter(sigma=3,bt=3,bh=32,bw=32)
FFT3DGPU(sigma=3,bt=3,bh=32,bw=32)

Configuration:
Athlon 64 3000+@2400MhZ,MSI NX6200@550/680.

Clip resolution:720x384

Speed:
FFT3DFilter: ~7.5fps (CPU:800MhZ):D (extremly situation for my Athlon)
FFT3DFilter: ~15fps (CPU:1800MhZ)
FFT3DFilter: ~20fps (CPU:2400MhZ)
FFT3DGPU : ~15fps (GPU/MEM:300/450MhZ,CPU:1800,2400MhZ)
FFT3DGPU : ~21fps (GPU/MEM:550/680MhZ,CPU:1800,2400MhZ)
FFT3DGPU : ~18fps (GPU/MEM:550/680MhZ,CPU:800MhZ)


It seems that Athlon64 is very strong on high frequencies and my graphics card is too slow, to boost encoding proces rapidly. Maybe if I unlock next 4 pipelines...
But, as you see, FFT3DGPU is very good for people with slow CPU and fast graphics card.

Bye

EDIT: I make some real tests with XviD codec:
XviD settings: Single Pass Q2,BPHQ matrix,Qpel,2 B-frames,Trellis,VHQ4
I test 1000 frames from "Der Untergang" dvd source, LanczosResize(720x384). Whole film contains 223251 frames of video.

FFT3DFilter: 193,1s (CPU:1800MhZ)
FFT3DFilter: 142,9s (CPU:2400MhZ)
FFT3DGPU : 147,9s (GPU/MEM:550/680MhZ,CPU:1800)
FFT3DGPU : 112,4s (GPU/MEM:550/680MhZ,CPU:2400MhZ)
-------------------------------------------------------------
Filesize:
FFT3DFilter: 7 946 240 b
FFT3DGPU : 9 310 208 b
-------------------------------------------------------------
Aprox. estimation to encode whole video:
FFT3DFilter: 8,862h (CPU:2400MhZ)
FFT3DGPU : 6,970h (GPU/MEM:550/680MhZ,CPU:2400MhZ)

So with GPU, I can shorten encoding proces abou 1 hour.
I never wanted strong graphics card,because not playing much,but now, I want 2x6800GT with SLI. With this,encoding process can be shorten rapidly. :D
Bye

Revgen
23rd May 2005, 17:19
@tsp

Have you gotten my email with the PDF and JPG's. I'm just asking because it was about 1.5mb in size and may have been too big for your email server to handle.

tsp
23rd May 2005, 18:35
Revgen: yes I got it. I will try testing it later.

JnZ: tnaks for the speed test. I think you could increase the compression by using mode=1 instead of the default mode=0 without increasing the encode time much(not compaired to when you just preview the video). I don't know if you could include
FFT3DGPU(sigma=3,bt=3,bh=32,bw=32,mode=1)
in you test(and the resulting filesize).
anyway the geforce 6200 performs quite good considering that it is a low budget card.

Revgen
23rd May 2005, 23:52
Originally posted by JnZ


It seems that Athlon64 is very strong on high frequencies and my graphics card is too slow, to boost encoding proces rapidly. Maybe if I unlock next 4 pipelines...


You can unlock the extra pipelines on your GPU depending on what revision of the 6200 chipset you have.

Go to this thread http://forums.guru3d.com/showthread.php?s=&threadid=136293 for more info.

tsp
24th May 2005, 12:25
Revgen: I reproduced your problem with GKnot and found a solution. GK doesn't close the videostream after you click on save and encode in the first window(with the title "FrameNo xxx/yyy") so the memory on the GPU (or main memory) is never deallocated so when you start the encoding fft3dGPU runs out of memory. The solution is simple: After you have clicked on "Add job to to Encoding Queue" you close GK instead of clicking on "start encoding". When you open GK again the job is still in the job list so just click on start encoding this time and it should work. Or you could first include fft3dgpu in the avs script generated by GKnot

Revgen
24th May 2005, 16:11
Your solution does work. Thanks:)

The only problem now is that the compressibility test still will not work. I can't exit Gknot and redo that. I guess I'm griping too much:D

Maybe, when you have some spare time, you can talk to Lenox about this and and maybe he can find a way to solve the problem peermanently in the next version of Gknot.


Thanks

tsp
24th May 2005, 18:53
revgen: what if you first add fft3dgpu in the script GKnot creates(save .avs script tab) (page 3 in the pdf file you send me)

Revgen
24th May 2005, 21:23
@tsp

I just discovered that both methods effectively when I want to do a straight encode. But changing the avisynth script still doesn't work when I want to do a correct compressibility check.

Try this.

1)Go to the "script" tab as shown on page 3, and change the script. However you do it doesn't matter. You can delete it all if you want.

2)Then click on the "compressibility check" tab.

3)Now click the "script" tab again and it will appear as it originally was before you changed it.

The compressibility check works, but I don't believe that it takes into account any of the FFT3dGPU settings. I believe this because Gordian Knot has suggested that I use a bitrate between 3500 and 5500 Kbps after I do the test. This may be true when it's not filtered, but I know that with FFT3dGPU I can encode this video at 1500-2000 kbps and it will still look good.

I'm not quite sure, but this seems to be a problem with Gknot rather than FFT3dGPU.

LordIntruder
24th May 2005, 22:53
Hi,


I don't know if this is what you are talking about but I use GordianKnot too to make the first calculations, bitrate, etc... I don't use it to encode, I use VDM manually, modify my script by hand, etc... My problem with GK and FFT3dGPU is whatever the resolution I select, I get the same result. Example:

- I do a comp test in 640 x 480, say I get 45%. So I move the slider to increase the resolution until GK display ~38%. Says the resolution is now 672 x 496. If I do a comp test again, I get 45% too. And to verify I selected 560 x 416 and same here, again 45% which doesn't make any sense. 720 x ... I was getting 45% too. Great! :)

The work around is quite simple: I use the original FFT3DFilter by Fizick to make my comp test and encode with the GPU version the whole movie.

The first version of FFT3dGPU didn't have this problem. I use 0.43 and there were 2 versions out since. I'll see if the problem still remains but I do not care about that.

Revgen
13th June 2005, 17:42
TSP,

I'm thinking about buying a Dual-Core CPU sometime in the near future.

I know that you have said that DirectX doesn't work well with more than one thread.

Would it be possible to create a version of FFT3dGPU that worked with OpenGL.

AFAIK OpenGL works well with multiple CPU's.

tsp
13th June 2005, 23:15
Revgen: It should be possible but the anoying thing about OpenGL is that I would have to write separate code for ATI and NVidia cards because they don't support the same OpenGL extensions. Also fft3dgpu will work fine with dualcore/processors/hyperthreading. It will only use 1 processor/core/thread like most of the other filters for avisynth (allthough some of them can be used with MT my new filter for the multiprocessor people)

Revgen
14th June 2005, 01:02
I'm sure it will work fine with dual cores. My issue is that using two cores(possibly working with your MT filter) can increase speed.

And I may be wrong but I believe that new Nvidia beta drivers are now 100% compatible with OpenGL 2.0. I don't own an ATI card so I don't know for sure if they have OpenGL 2.0 in their drivers. I'm going check up on it and report back.

If ATI and Nvidia both comply fully with OpenGL 2.0 I figure that it shouldn't be too hard to program for both of them. But then again I'm not a programmer, so what do I know :D.

EDIT

From the new information that I've gathered, Nvidia beta drivers 75.90 and up support OpenGL 2.0 completely.

Catylyst drivers 5.3 and up support OpenGL 2.0 for ATI.

Unfortunately ATI hardware currently CAN execute all OpenGL 2.0 parameters, but they CANNOT perform certain parameters up to OpenGL 2.0 performance specs.

An ATI software engineer explains it here (http://www.rage3d.com/board/showpost.php?p=1333565842&postcount=34).

I'm not sure if these limitations will affect what FFT3dGPU does or not. You would probably know better. :D

I hope this helps.

tsp
14th June 2005, 15:25
Revgen: I don't think it would be faster with OpenGL compaired to DirectX on a dualcore machine if the driver works in another thread(and I think it does) because the limiting factor would still be the graphics card.

Also I haven't tried using OpenGL

acrespo
14th June 2005, 18:36
I have some problems with FFT3DGPU. Sometimes I have a interrupt in frame sequence to show a old frame and sometimes the frame is green instead of the correct image.
Source is PIC MJPEG 3, 640x480 PAL-M (29.97 fps).
My script:


AviSource("d:\capture.avi")
Trim(0,18455)++Trim(19452,53420)

Crop(8,8,-8,-8, align=true)
LanczosResize(width,height*2)
TurnLeft()
SangNom()
TurnRight()
SangNom()
BilinearResize(640,480)

FFT3Dgpu(sigma=2,bt=3,plane=0)
FFT3Dgpu(sigma=2,bt=3,plane=1)
FFT3Dgpu(sigma=2,bt=3,plane=2)

RemoveDirt(repmode=16)
awarpsharp(depth=20)
LimitedSharpen(ss_x=1.0, ss_y=1.0)

Revgen
14th June 2005, 21:12
It might be a problem with the MJPEG codec. In my personal experience, MJPEG formats usually run into problems when they are edited or converted to other formats.

You also are using plane=2. FFT3dGPU doesn't use plane=2. Both Chroma planes are processed when you use plane=1.

Also try getting rid of the other filters and see if the problem still persists.

I hope this helps.

Zetto
19th June 2005, 21:59
It'll work just fine with dual-core, I have the next best thing - Intel HT CPU and it works... although I had some troubles initially ;) BTW, it is much faster with HT enabled rather than disabled - by about 30% in my case. However, my cpu is not 100% loaded, it seems that my videocard is the bottleneck, it's a fast one too - 6800 ultra.

AI
29th July 2005, 09:11
I think download frame from VRAM slowly than upload to VRAM

may be include downsize frame in GPU? (Lanczos for Luma and Bilinear for Chroma)
because many people after this filter use resize.

possible script:
--------------------
MergeChroma(fft3dgpu(plane=0,x=512,y=384),fft3dgpu(plane=1,x=512,y=384))
--------------------

original chroma (luma) only crop (not resize, becouse slowly)

or if I use fast CPU and fact GPU (or slow CPU and slow GPU)
I can use this script:
-------------
MergeChroma(fft3dfilter(plane=0).LanczosResize(512,384),fft3dgpu(plane=1,x=512,y=384))
------------

PS Excuse me my english (my language is russian)

tsp
29th July 2005, 18:53
It should be posiible to implement that as a post processing filter before downloading the result to main memory. But currently my spare time to code this filter and the current multithreaded version of avisynth is very limited until late august.

AI
5th August 2005, 07:28
while you busy,
may be I say several my ideas?
(I am a generator ideas :D)

I think your first versions be only one buffer
New version is double buffering (first buffer coding in GPU, second coping to memory and then coding in CPU)

I suggest 3-buffering (first - coding in VRAM, second coping to RAM from VRAM and simultaneously third buffer coding in CPU next filters or encoder (for instance XviD))

i.e. we have 3 parallel proceses
1) fft3dGPU in GPU
2) Download from VRAM to main RAM
3) other proceses in CPU

What you thin about this?

tsp
6th August 2005, 00:04
well currently fft3dgpu does process the filters before fft3dgpu in the next frame while the gpu is working on the current frame. I don't know how well the gpu handles simultaneously downloading from the gpu and proccessing on the gpu at the same time.

AI
8th August 2005, 04:46
I think you understand me.
(In a complicated way write on unacquainted language)

I want to elaborate that I bore in mind:

1) current your version: (algorithm steps)
- download from VRAM already ready frame (N)
- upload to VRAM next frame (N+1)
- run GPU (N+1 frame)
- end (send management AVISynth)

2) I offer: (N = integer, number curent frame)
- upload to VRAM N+2 frame
- run in GPU N+2 frame
- run download from VRAM already ready frame N+1
- send AVISynth already downloaded frame N

PS say you so have understood previous my post?
PPS if I use DePanInterleave, I want every third frame... What you think about this optimization?

tsp
9th August 2005, 15:59
Slight corection currently fft3dgpu works like this:

-check if needed frame is in the gpu cache(bt=1 uses 1 frame at a time bt=2 uses 2 and bt=3 uses 3 frames at a time) if not shift pixels(because the order the pixels are stored are different when uploaded in a texture compared to in an avisynth frame) and upload frame to GPU and do a 2d fft
-start processing in GPU
-while this is running get the next frame needed. Currently the frame is NOT uploaded to the GPU but this is a thing I'm thinking to implement.
-when this is done and if the GPU is not done then suspend avisynth until the GPU is done so if the result us encoded the encoder gets cpu time to work
-download the result to main memory and return it

AI
31st August 2005, 08:40
why fft3dfiltre(plane=0).fft3gpu(plane=1) faster,
then fft3gpu(plane=1).fft3dfiltre(plane=0)

i.e. use CPU before fft3gpu faster,
then use CPU after fft3gpu...

tsp
31st August 2005, 12:59
because when the fft3dGPU is using the GPU the CPU is fetching the next frame, that is all the filters before fft3dGPU is running concurrent with the GPU. Because fft3dGPU doesn't know about the filters after fft3GPU it is not pissible to run these concurrent with fft3dgpu. To understand this you need to understand how avisynth works. If you script looks like this:

Avisource("c:\test.avi")
fft3dfilter(plane=0)
fft3dGPU(plane=1)

when virtualdub ask avisynth to deliver a frame it first ask ft3dGPU to return a frame. fft3dGPU then ask fft3dfilter to deliver a frame that again asks Avisource to return a frame. Avisource load the frame and returns it to fft3dfilter that process it at returns the result to fft3dgpu. fft3dGPU then works on the frame but because it uses the GPU the CPU is free so fft3dGPU ask fft3dfilter to deliver the next frame while the GPU works so when avisynth asks fft3dGPU to deliver the next frame fft3dGPU already have the result from fft3dfilter. You can see if fft3dfilter and fft3dgpu was used in the reverse order fft3dGPU would only call AVISource to deliver the next frame.

Fizick
2nd September 2005, 19:52
tsp,
please edit this line in your FAQ (first post):
A: fft3dGPU(mode=1,usefloat16=false) is similair to fft3dfilter(oh=bh,ow=bw)

to correct line:
A: fft3dGPU(mode=1,usefloat16=false) is similar to fft3dfilter(oh=bh/2,ow=bw/2) for same bt and power 2 bw,bh

LordIntruder
8th October 2005, 08:25
Hi,

Tsp is there any new update planned? Thanks a lot. :)

tsp
9th October 2005, 16:11
LordIntruder: I'm nearly done with the MT version of avisynth so I will turn my attention to fft3dGPU again and after Fizick released the sourcecode for fft3dfilter(Fizick thank you very much) I will try to convert fizick's code to a GPU version (by using my own fft code instead of fftw and convert fft3dfilter_c.cpp to directx 9 HLSL) also the cachecode will need a minor rewrite. I have my last 3 large exams in the next 3 month before I'm done at the university so my time might be rather limited :sly:

aberforthsgoat
10th October 2005, 07:59
Hiya guys!

What's the lowdown on fft3dgpu and interlaced source material? With fft3dfilter you can set it to interlaced=true - but we don't seem to have an option like that here. I've run some searches but haven't found much so far. What would you guys recommend?

Mike

Backwoods
10th October 2005, 16:24
Have you tried,

SeparateFields()
FFT3DGPU()
Weave()
?

tsp
10th October 2005, 18:04
sf=SeparateFields()
Interleave(sf.selecteven().FFT3DGPU(),sf.selectodd().FFT3DGPU())
Weave()

will be better else the even and odd field will be mixed

Mug Funky
11th October 2005, 05:49
wouldn't that only happen if bt=3?

tsp
11th October 2005, 06:58
or bt=2 yes that's right

aberforthsgoat
11th October 2005, 14:12
sf=SeparateFields()
Interleave(sf.selecteven().FFT3DGPU(),sf.selectodd().FFT3DGPU())
Weave()

will be better else the even and odd field will be mixed

Thanks - that seems to be giving me a great start. I'm now running into some trouble, however. I've put together the following script to work on a DVD of a football game:

LoadPlugin("C:\PROGRA~1\GORDIA~1\DGMPGDec\DGDecode.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\UnDot.dll")
LoadPlugin("C:\Program Files\GordianKnot\AviSynthPlugins\fft3dgpu.dll")
LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\TomsMoComp.dll")

mpeg2source("D:\Football4\Chargers-Pats.d2v")

sf=SeparateFields()
Interleave(sf.selecteven().FFT3DGPU(bt=3, sigma=4, sharpen=0.4, mode=1, plane=1),sf.selectodd().FFT3DGPU(bt=3, sigma=4, sharpen=0.4, mode=1, plane=1))
Interleave(sf.selecteven().FFT3DGPU(bt=3, sigma=4, sharpen=0.4, mode=1, plane=2),sf.selectodd().FFT3DGPU(bt=3, sigma=4, sharpen=0.4, mode=1, plane=2))
Interleave(sf.selecteven().FFT3DGPU(bt=3, sigma=4, sharpen=0.4, mode=1, plane=0),sf.selectodd().FFT3DGPU(bt=3, sigma=4, sharpen=0.4, mode=1, plane=0))
Weave()

TomsMoComp(1,5,1)

crop(2,6,348,568)

Lanczos4Resize(1024,768)

Undot()



I thought I was doing things exactly right - first processing, then deinterlacing. But it's not working right. Without the TomsMoComp line, the output is rather amazing - except for bad combing artifacts. (Which my on-the-fly deinterlacers in ZP only make worse.)

*With* TomsMoComp I get an error message from ps.hlsl about an unexpacted #else following #else (X1514) and redefinition of "o" (X3003).

If I'm asking a stupid question (i.e., one that a million people have already asked), please feel free to direct me to the nearest FAQ and/or residential facility for the criminally dense.

Best,

Mike

acrespo
11th October 2005, 14:33
If you need deinterlace your video, put FFT3DGPU after deinterlacer. Also, try TDeint instead TomsMoComp.
FFT3DGPU don't have plane=2. plane=1 denoise all chroma planes.