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.

 

Go Back   Doom9's Forum > Capturing and Editing Video > Avisynth Development

Reply
 
Thread Tools Search this Thread Display Modes
Old 10th May 2006, 21:53   #381  |  Link
G_M_C
Registered User
 
Join Date: Feb 2006
Posts: 1,076
Quote:
Originally Posted by tsp
Is that speed with fft3dgpu(sigma=2,plane=4,precision=2,bw=64,bh=64,ow=24,oh=24)?
The Geforce 7900 is a rather fast card.
I mean Graphics memory. The fft version I work on now should be less memory bandwidth dependent as I have cut down the number of texture lookup
Yes, I've modified my script exactly as you specified in your posting, with fft3dgpu(sigma=2,plane=4,precision=2,bw=64,bh=64,ow=24,oh=24). I was amazed too at the very big speed gain.

And speaking of the GPU; I've bought my card as a 7800GS GoldenSamplePlus, BLISS edition. I allways thought the 7800 series had a G70 class GPU.

But when i removed the cooler today (to change the heatpaste&heatpads to Arctic Silver 5) i saw that my card actually had a G71 on it. I mention this because its indeed a 7900GTX in AGP format. The difference between my version and the "real" 7900GTX is slower mem (512 Mb GDDR3 @ 1250 MHz). So im sort a lucky I guess buying a 7800 and getting a 7900 (BLISS indeed )

I never would have guessed it would be this fast, even with my AviSynth scripts this new Graphics board speeds things up (guess what it does to my 3DMark scores :P).

But as i said; Hope you keep developing filters that use GPU, and I hope others follow suit. Because results are absolutely amazing. Many complements on your work, and i'll keep using your filter (and hopefully more GPU filters in the future)

Last edited by G_M_C; 10th May 2006 at 22:06.
G_M_C is offline   Reply With Quote
Old 11th May 2006, 22:31   #382  |  Link
swaaye
Registered User
 
Join Date: Jun 2004
Posts: 144
So would SM2b add anything useful for FFT3DGPU & ATI's Xx00 series? Or do you think that would be a waste of your time (TSP) to implement?

I'd also like to see some of the favorite settings of the forumgoers here. I've settled on:
Code:
FFT3dGPU(sigma=2,bt=2,sharpen=0.5)
for speed and quality. My overclocked X800GTO2 at 510/610 can pull about 55fps with this. I run this with DIVX set at quality=4 on the slider and use DIVX's internal resizer that's multithreaded. Gives me about 90% CPU so I don't slow down because of either GPU or CPU.

Last edited by swaaye; 11th May 2006 at 22:35.
swaaye is offline   Reply With Quote
Old 11th May 2006, 23:02   #383  |  Link
tsp
Registered User
 
tsp's Avatar
 
Join Date: Aug 2004
Location: Denmark
Posts: 807
Quote:
So would SM2b add anything useful for FFT3DGPU & ATI's Xx00 series? Or do you think that would be a waste of your time (TSP) to implement?
well it is allready implemented. The code in fft3dgpu.hlsl is compiled and optimized by directx using the best shader model your card support (that is0 SM 2.0 for Radeon 9xxx,SM 2a for geforce fx 5xxx, SM 2b for Radeon Xxxx, SM 3 for Geforce 6xxx,7xxx and Radeon X1xxx)
__________________
Get my avisynth filters @ http://www.avisynth.org/tsp/
tsp is offline   Reply With Quote
Old 12th May 2006, 08:28   #384  |  Link
G_M_C
Registered User
 
Join Date: Feb 2006
Posts: 1,076
[offtopic & Brainstorm]
Reading one of you previous postings, i understood that you treat the AviSynth fram an a texture for processing with FFT3DGPU.

That would mean you've implemented a system to transfer the avisynth fram to the texture-buffer and back.

But now the brainstorm: Since you've got a frame into the texture buffer, it would be "kind of easy" toe implement a rezise to it, wouldn't it ? Rezising textures is one of the main functions of a graphics card after all.

This would be a usefull function, because a Graphics card has much more advanced functions for resizing than AviSynth. All GPU's support trilinear resizing for instance, and AviSynth doesn't up till now. And modern GPU's even have more advanced methods than trilinear allone ("called advanced" or "optimal" or such). And added to the advanced methods, most modern GPU's can do a AntiAliasing stage when resizing, if i'm not mistaking.

And this all would be bazingly fast, since it is one of the most optimized functions of any GPU.

So: What would your thoughts be on a "GPUresize ()" function ?
[/offtopic & Brainstorm]
G_M_C is offline   Reply With Quote
Old 12th May 2006, 17:20   #385  |  Link
Egh
Registered User
 
Join Date: Jun 2005
Posts: 630
Quote:
Originally Posted by G_M_C
[offtopic & Brainstorm]

So: What would your thoughts be on a "GPUresize ()" function ?
[/offtopic & Brainstorm]
Called "Haali renderer" As for advanced resizing, I dont' think cards natively support Lanczos. And even bicubic resizing is not straightforward and require quite a lot of GPU resources.
Egh is offline   Reply With Quote
Old 12th May 2006, 19:32   #386  |  Link
Fizick
AviSynth plugger
 
Fizick's Avatar
 
Join Date: Nov 2003
Location: Russia
Posts: 2,183
http://www.avisynth.org/JapanesePlugins
Fizick is offline   Reply With Quote
Old 12th May 2006, 23:57   #387  |  Link
G_M_C
Registered User
 
Join Date: Feb 2006
Posts: 1,076
Quote:
Originally Posted by Fizick
Thx,

never thought of looking in that section ... because my Japanese isn't up to spec atm

Guess i missed something

Quote:
Originally Posted by Egh
Called "Haali renderer" As for advanced resizing, I dont' think cards natively support Lanczos. And even bicubic resizing is not straightforward and require quite a lot of GPU resources.
GPU resources I have enough (I think) since my new card arrived

But what i meant is that there are some "standard" filtering / resizing methodes build into the hardware of any GPU that have a equivelant command in AviSynth (bilinear). Those could be "transferred" to the GPU to gain speed, at least that was my thought. And doing so could gain at least one extra resizing method; Trilinear, wich isnt in AviSynth, but is standard in all GPU's.

Last edited by G_M_C; 13th May 2006 at 00:03.
G_M_C is offline   Reply With Quote
Old 13th May 2006, 00:25   #388  |  Link
foxyshadis
Angel of Night
 
foxyshadis's Avatar
 
Join Date: Nov 2004
Location: Tangled in the silks
Posts: 9,559
Trilinear isn't made for the totally planar video frames, though. It'd be interesting if someone came up with a good way to use it, but the way trilinear works is that it uses prerendered larger and smaller textures, interpolates both to the desired size, and averages them, weighting based on how close the result is to each prerendered size. (The gpu has certain efficiency requirements, like each step up being a power of two.) Thing is, how often do you have two videos, one twice the size of the other, that you can pass to the gpu?

I can only name one: When using eedi2 reconstruction.

You'd be better off implementing spline or gaussian, or even some crazy vector/fractal resize, in the gpu if you want the top quality, or bilinear/bicubic for hardware asic speed.
foxyshadis is offline   Reply With Quote
Old 13th May 2006, 02:20   #389  |  Link
G_M_C
Registered User
 
Join Date: Feb 2006
Posts: 1,076
Ive been watching GPU programmabillity for some time now, and awaiting the first atual uses it would have for me personally. FFT3DGPU is one of the first more "gereral" apps designed to take advantage of the computational power of the GPU.

Stanford univerety has been doing a lot of research in to the usage of GPU's in geberal progamming. Much of their research is open sourced, and might be of some use.

So i give the link: http://graphics.stanford.edu/project...gpu/index.html
G_M_C is offline   Reply With Quote
Old 13th May 2006, 02:25   #390  |  Link
Egh
Registered User
 
Join Date: Jun 2005
Posts: 630
Quote:
Originally Posted by G_M_C
Ive been watching GPU programmabillity for some time now, and awaiting the first atual uses it would have for me personally. FFT3DGPU is one of the first more "gereral" apps designed to take advantage of the computational power of the GPU.
I would call Haali renderer much more "general app" than FFT3DGPU. Besides, even older builds of mpc used bicubic resizing implemented with PS 2.0 (i.e. GPU was used).
Egh is offline   Reply With Quote
Old 13th May 2006, 02:41   #391  |  Link
foxyshadis
Angel of Night
 
foxyshadis's Avatar
 
Join Date: Nov 2004
Location: Tangled in the silks
Posts: 9,559
3D renderers, like Maya, and video software like Combustion and AE, have been able to use them for years too, although mostly limited to the Quadro/FireGL lines of pro cards (because the GeForce/Radeon drivers are slightly crippled, though hardware is nearly identical, a bit of a scam). AGP also wasn't really suited to GPU computation at all - returning to main memory is painfully slow - so the PCIe transition has started the evolution now.
foxyshadis is offline   Reply With Quote
Old 14th May 2006, 00:26   #392  |  Link
tsp
Registered User
 
tsp's Avatar
 
Join Date: Aug 2004
Location: Denmark
Posts: 807
Another GPU filter by antitorgo: http://forum.doom9.org/showthread.php?t=86793
As foxyshadis stated trilinear filtering wouldn't be all that usefull even if non power of two textures can be used (as on geforce 6xxx/7xxx and maybe radeon X1xxx) more advanced resizers can be used as postprocesing using shaders (and is used in virtualdub) but currently it is not one of my highest priority.
G_M_C: The first two versions of fft3dgpu was created with brook.
__________________
Get my avisynth filters @ http://www.avisynth.org/tsp/
tsp is offline   Reply With Quote
Old 15th May 2006, 01:37   #393  |  Link
swaaye
Registered User
 
Join Date: Jun 2004
Posts: 144
Well honestly the GPU is tapped out pretty much just doing fft3DGPU. If you're running a dual core setup the GPU quickly becomes the bottleneck, unless of course you were using fft3dfilter or some such. I didn't even bother with noise filtering until this GPU filter. Speed is fairly critical for me. The normal resizers don't seem to have that much overhead relatively, especially DIVX's multithreaded resizers in their codec.

I'd like to hear from someone endowed with a SLI/Crossfire setup.

Last edited by swaaye; 15th May 2006 at 01:41.
swaaye is offline   Reply With Quote
Old 15th May 2006, 15:55   #394  |  Link
tsp
Registered User
 
tsp's Avatar
 
Join Date: Aug 2004
Location: Denmark
Posts: 807
You can use another GPU filter after fft3dgpu without interfering with it. Unfortunatly SLI/Crossfire doesn't work with fft3dgpu as there would be excesive texture transfers from one GPU to anhother when running in Split frame rendering and Alternative frame rendering wouldn't work because fft3dgpu needs the result from the previous frame.
__________________
Get my avisynth filters @ http://www.avisynth.org/tsp/
tsp is offline   Reply With Quote
Old 20th May 2006, 19:59   #395  |  Link
tsp
Registered User
 
tsp's Avatar
 
Join Date: Aug 2004
Location: Denmark
Posts: 807
new test version 0.6.2.9 that includes new fft code. Should improve speed for larger bw, bh size(>32). Doesn't work with geforce fx 5xxx card currently. Please try it and report back if you experience slowdown or other problem with.
Link:
http://www.avisynth.org/tsp/fft3dgpu0.6.2.9.exe
__________________
Get my avisynth filters @ http://www.avisynth.org/tsp/
tsp is offline   Reply With Quote
Old 26th May 2006, 10:50   #396  |  Link
modsoul
Registered User
 
Join Date: Feb 2006
Posts: 41
i ried using this simple scriupt as a beginnig test
Quote:
directshowsource("C:\anime\black

cat\[Ani-Kraze]_Black_Cat_-_01_[C93856CD].avi")
ConvertToYV12()
fft3dgpu (sharpen=3)
but i get this error
error X1507 failed to open source file C:\program file\ avi synth 2.5\plugins\ps.hlsl

what am i doing wrong.
modsoul is offline   Reply With Quote
Old 26th May 2006, 11:02   #397  |  Link
Boulder
Pig on the wing
 
Boulder's Avatar
 
Join Date: Mar 2002
Location: Finland
Posts: 5,731
Do you have the ps.hlsl file in your Avisynth plugins directory?
__________________
And if the band you're in starts playing different tunes
I'll see you on the dark side of the Moon...
Boulder is offline   Reply With Quote
Old 26th May 2006, 11:06   #398  |  Link
modsoul
Registered User
 
Join Date: Feb 2006
Posts: 41
NOPE. its not there. where can i find. it.
modsoul is offline   Reply With Quote
Old 26th May 2006, 11:30   #399  |  Link
modsoul
Registered User
 
Join Date: Feb 2006
Posts: 41
ok i renamed fft3dgpu.hlsl to ps.hlsl ( i did not remove fft3dgpu.hlsl)
is that what i am supposed to do
forgot to mention. now it gives error
"sharpen entry point not found.
is my script ok ?
ok i downloaded version 0.47 and that seems to have the pd.hlsl file. usingthat file and the dlls from the latest version i can run it. am i doing this all wrong ?

Last edited by modsoul; 26th May 2006 at 14:32.
modsoul is offline   Reply With Quote
Old 26th May 2006, 16:28   #400  |  Link
AI
Registered User
 
Join Date: Jul 2005
Location: Russia, Ural
Posts: 77
Quote:
Originally Posted by modsoul
where can i find. it.
see first message in this thread

PS manual

Last edited by AI; 26th May 2006 at 16:31.
AI is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 08:11.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.