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 Usage

Reply
 
Thread Tools Search this Thread Display Modes
Old 1st October 2009, 14:19   #281  |  Link
elguaxo
Registered User
 
elguaxo's Avatar
 
Join Date: Jun 2006
Posts: 260
Quote:
Originally Posted by vorob View Post
Any info on speeding this process
try faster settings:
http://forum.doom9.org/showthread.ph...35#post1325335
http://forum.doom9.org/showthread.ph...20#post1325620
elguaxo is offline   Reply With Quote
Old 24th November 2009, 08:31   #282  |  Link
Revgen
Registered User
 
Join Date: Sep 2004
Location: Near LA, California, USA
Posts: 1,545
I updated thetoof's tempgaussmc_beta1mod to support EEDI3 and NNEDI2. EEDI3 is very slow right now and IMO should only be used for testing until Tritical releases an optimized version. EEDI3 is enabled by default. Use EDImode="NNEDI2" to use NNEDI2.

http://www.sendspace.com/file/jyviyv
Attached Files
File Type: 7z TempGaussMC_beta1mod2.7z (20.2 KB, 507 views)
__________________
Pirate: Now how would you like to die? Would you like to have your head chopped off or be burned at the stake?

Curly: Burned at the stake!

Moe: Why?

Curly: A hot steak is always better than a cold chop.
Revgen is offline   Reply With Quote
Old 25th November 2009, 01:01   #283  |  Link
Terranigma
*Space Reserved*
 
Terranigma's Avatar
 
Join Date: May 2006
Posts: 953
His is the MT version. Update the non-MT version i've posted as well. :P
http://forum.doom9.org/showthread.ph...12#post1340412
Terranigma is offline   Reply With Quote
Old 25th November 2009, 09:42   #284  |  Link
aegisofrime
Registered User
 
Join Date: Apr 2009
Posts: 478
I have an urgent an unusual request:

I have been having problems with my Phenom II PC and am considering upgrading to a Core i7. Can somebody with the Core i7 help me out by running a quick benchmark? I need to know how many FPS you get by running TGMC x264 encoding on the Core i7-860/920 with DVD content. Thanks!
aegisofrime is offline   Reply With Quote
Old 25th December 2009, 11:22   #285  |  Link
sarmano
Registered User
 
Join Date: Oct 2006
Posts: 26
Computer: Core2Quad Q6600 - proc, 4gb - ram

TempGaussMC_beta1u(2,2,3, 0,0,53, "blah", sharpness=1.0, Sbb=3, Smode=2, pelsearch=2, blocksize=16, overlap=8, thSAD2=8*8*3, DCT=10, search=5, searchparam=5, rfilter=2, sadx264=12) (* - MRecalculate(8:4) of MAnalyse(16:8) for final stage, ** - MVTools2 MT version)

on HD movie 1920:1080p - encoding x264 ~ 0.40fps on 4pass
on DVD movie (not tested yet) I think ~2.8-3.6fps 2pass

So, I think Core i7 do this about 1.7-2.5x speed.

Last edited by sarmano; 25th December 2009 at 12:41.
sarmano is offline   Reply With Quote
Old 27th December 2009, 01:04   #286  |  Link
Didée
Registered User
 
Join Date: Apr 2002
Location: Germany
Posts: 5,389
Quote:
Originally Posted by sarmano View Post
TempGaussMC_beta1u(2,2,3, .....) (* - MRecalculate(8:4) of MAnalyse(16:8) for final stage, ** - MVTools2 MT version)
Your post is a bit confusing. There are * and ** footnotes, but I don't see the the corresponding * / **'s which they could refer to??

Whatever. Is there a mod of TGMC that actually implements MRecalculate? If so, I'd like to have a look at it!

(MRecalculate is a good potential addendum to TGMC indeed. The pitfall is that the most obvious place to put it in is a bad suited place to put it in. Doing it the obvious way means big effort for little benefit.)
__________________
- We´re at the beginning of the end of mankind´s childhood -

My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!)
Didée is offline   Reply With Quote
Old 27th December 2009, 20:53   #287  |  Link
sarmano
Registered User
 
Join Date: Oct 2006
Posts: 26
Didée , Terka

I edit TempGaussMC_beta1u.avs for myself, so probably it's code that will not be clear or seems superfluous, but it's well.

This is what I do and how
http://www.mediafire.com/?zdymw2jwmnn


Didée
MRecalculate does calculation of already made operations, specifies them and really in most cases it is only additional step for uncertain, but actually opportunities are more extensive on use, for example, use the following scheme

MAnalyse
MRecalculate
a = MDegrain1 (MAnalyse)
b = MDegrain1 (MRecalculate)
Something(a,b)

- or -

MAnalyse
MRecalculate
MRecalculate (again for the first MRecalculate)
b = MDegrain1 (MRecalculate on MAnalyse)
c = MDegrain1 (MRecalculate on MRecalculate)
Something(b,c)

- or -

MAnalyse (all vectors)
MRecalculate (only first and second vectors)
MRecalculate2 (again for the first MRecalculate only first vectors)
# do? b = MDegrain1 (MRecalculate on MAnalyse)
# do? c = MDegrain1 (MRecalculate2 on MRecalculate)
# do? Something(b,c)
MCompensate(all vectors)
MDegrain1(compensated)
MCompensate(only first vectors for MRecalculate2)


seems to me will be interesting step, but it is required to understand time all complexity of the conceived operations on vectors. For me now It's like a 1-2-3 pass stats of encoding.

I only experiment systems studying results of actions only from the visual point of view and speed at reception of necessary results.
The mathematical approach to calculations most likely will be more preferable, but on it there is no necessary time.

I know that I'm wrong on some operations but I try to understanding...


btw: If 3rd scheme used then MDegrain did smooth stronger on high thsad, it's cool I think.
Mdegian becomes operated at smaller quantity of passes and performance on blocks of overlappings less than 8.

Last edited by sarmano; 27th December 2009 at 22:35.
sarmano is offline   Reply With Quote
Old 28th December 2009, 02:55   #288  |  Link
Didée
Registered User
 
Join Date: Apr 2002
Location: Germany
Posts: 5,389
a) MRecalculate does not automatically provide better vectors.

b) that bunch of scripts and functions is pretty much convoluted. All I can see at a quick glance is that myriads of vectors are computed, and the myriads then even are MRecalulate'd.
I have no clue what you are doing there. Seriously, do you?

c) An easy one is that you are loading a source at 23.976 fps. Under normal circumstances, such a source is not even a target for TGMC. I have no clue what you are doing.


I don't feel like doing deeper analysis of what exactly your filter armada might be supposed to do or to improve. If you have a handy explanation, speek freely! Though, fFrom your description in the previous post I also can't see any hard points ... all of that is pretty nebulous to me. The only really interesting part, if at all, would be in the something(a,b) operation. Alas, there is zero hint what it should do, or why, or how ...

I'm generally all ears for questions of the type "Hey, there is problem 'X' / deficiency 'Y' / shortcoming 'XYZ' , couldn't we improve by doing [so] or [this] or [that]."

In contrast, strategies like "Hey, we have this funky MRecalculate filter, sounds like it's somehow made for improving, let's kick it in in a few places!" are of no interest to me.

My preferred strategy is "reckognize a problem, formalize it, solve it." (I'm not at all a strict formalist. But I like to have a clear red line of what should happen, and why.)

For those liking to poke in the blue - I wish happy poking, but don't expect me to comment if you're poking warm, or cold, or hot.
__________________
- We´re at the beginning of the end of mankind´s childhood -

My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!)

Last edited by Didée; 28th December 2009 at 02:57.
Didée is offline   Reply With Quote
Old 28th December 2009, 04:21   #289  |  Link
sarmano
Registered User
 
Join Date: Oct 2006
Posts: 26
Didée

It's just experiments that all.
All I want - totally denoising movie with perfect image and faster of course .
Naked TempGauss make terrible results for me, so I disable it.
I'm using TGMC only as function of MC.
Another ideas U're using inside TGMC very impressive.


Compare please my little idea with source and original TGMCmod:




My last idea much much faster then TGMC.
So...


PS. Try my scripts, it's easy.
I used not only "stupid" code

Last edited by sarmano; 28th December 2009 at 04:41.
sarmano is offline   Reply With Quote
Old 28th December 2009, 14:31   #290  |  Link
Didée
Registered User
 
Join Date: Apr 2002
Location: Germany
Posts: 5,389
Well ... did you hear what I said? Your source is progressive. TGMC is a deinterlacer. Using a deinterlacer on a progressive source is not such a good idea in general.

Also, the denoising effect of TGMC is just a sideffect of the method. It's in no way optimized to be particularly good at denoising ... if the task is just about denoising+sharpening a progressive source, then of course I would not use TGMC, but some other dedicated scripts or functions.

So you used the wrong filter in the wrong place, and then present the conclusion that you get better results with some other filter chain. Very entertaining! - I've seen comedy shows with worse plots than that.
__________________
- We´re at the beginning of the end of mankind´s childhood -

My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!)
Didée is offline   Reply With Quote
Old 28th December 2009, 14:48   #291  |  Link
sarmano
Registered User
 
Join Date: Oct 2006
Posts: 26
I hear, U cant...

TempGauss
Quote:
# create linearily weighted temporal averaging
t1 = dbob.temporalsoften(1,255,255,28,2)
t2 = dbob.temporalsoften(2,255,255,28,2)

# construct temporal gaussian average from linear averages
t = (tr0==1) ? t1.merge(dbob,0.25)
\ : (tr0==2) ? t1.merge(t2,0.357).merge(dbob,0.125)
\ : dbob
Deinterlacer
Quote:
# Create spatially interpolated bob-clips
dbob = clp.bob(0,0.5)
edi = (EdiMode=="NNEDI") ? clp.nnedi(field=-2)
\ : (EdiMode=="EEDI2") ? clp.SeparateFields().EEDI2(field=-2, maxd=EEDI2maxd)
\ : (EdiMode=="Yadif") ? clp.Yadif(mode=1)
\ : dbob
Thats all. Is it wrong?
You used Mdegrain1 for first vectors and again MDegrain(1-2-3) for all vectors as option, is it for deinterlacing?


Try some like this:
MVDegrain1 to clp.nnedi(field=-2)
MVDegrain3 to eedi3(searchclip=nnedi2())

Last edited by sarmano; 28th December 2009 at 15:22.
sarmano is offline   Reply With Quote
Old 28th December 2009, 15:38   #292  |  Link
Didée
Registered User
 
Join Date: Apr 2002
Location: Germany
Posts: 5,389
Yes, you quoted the script parts correctly. But what is your suggestion aiming at? Plain deinterlacing? Bobbing? Or neither of both, but just denoising? And again ... whatever you are aiming at: what is the improvement over existing methods? In which respect is it supposed to do better?

See, you throwed a bunch of code on the table. I asked "Why/what for?". The answer I got is: "Try this: <code>".
__________________
- We´re at the beginning of the end of mankind´s childhood -

My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!)
Didée is offline   Reply With Quote
Old 28th December 2009, 20:15   #293  |  Link
sarmano
Registered User
 
Join Date: Oct 2006
Posts: 26
Didée

I cant explain all I want to say, my english to bad for this.
Your scripting more usefull for another operations then You right now thinking
So we can develop more and more. This is my idea.

I think TGMC be very popular not for it functions, it's slow, very slow and it will do some cool but no one i think trying to do to make some more specific parts for better work of it.

For me right now tgmc's a script that can do deep compared sharping without loosing data (maybe a little) and compensating. MDegrain do some to make image more precisely that has spoiled by temporalsoften. This part slow down to much the speed.

I need a clip to make some stuff on it.
The code I see in TGMC do the same I wrote early. I try change only parts that important for myself and do it faster and better a little.
Deinterlacer inside it's a directly EDI function, so if we've it then we can try manipulating them.

For example, EDI can do change not directly on image but

origImage 720/480:
luma -> resize image to 1420/480 -> do sharp then mini or medium thin smooth -> resize back to 720/480
chroma -> resize image to 360/240 -> do strong smooth -> resize back to 720/480 -> sharp it
compare it with original
merge important different parts with original
compensate with light mdergain1
This is a reflection.

I need too a plan what and why I do something but I need a real clip not generated to try.
Everyone want more speed of operation. This part very very important.

Last edited by sarmano; 28th December 2009 at 20:27.
sarmano is offline   Reply With Quote
Old 28th December 2009, 23:17   #294  |  Link
Didée
Registered User
 
Join Date: Apr 2002
Location: Germany
Posts: 5,389
Okay ... now you raise twi points: 1) speed of TGMC and possible improvement / 2) Usage of TGMC for applications other than deinterlacing


a) Speed

You won't get TGMC worthwile faster than it is now. Remember that you can reduce or switch-off several of its "sophisticated" operations. I know what TGMC does and why, and be assured: whatever TGMC is told to do, the implementation is at least so good that you won't squeeze out noticeably more speed, for the same result.

What about this: (Note I'm on a single-core, still...)

source.NNEDI2(field=-2)
=> 8.5 fps

source.TGMC_beta1u(1,1,0,EdiMode="In.a.hurry",Smode=1,SVthin=0.0,Sbb=0,SLmode=1|2)
=> 9.0 | 8.5 fps

Those are heavily reduced settings that still do something "reasonable". TGMC is still doing "complex" spatio-temporal processing, including active motion search & compensation, contra-sharpening, and all that stuff. In contrast, NNEDI2 is "only" doing spatial interpolation. Leaving multithreading aside, looking only at the mere computational effort, one can see that TGMC is about the same speed as NNEDI2. (!)

Seeing that TGMC's basic speed is similar to NNEDI2, I consider point a) hereby finished.


b) Other applications than deinterlacing

Sure. The possible ways to do [this] or to achieve [that] often are quite similar, or atleast appear to be so. Several principles and tidbits of TGMC can be successfully used for denoising, for sharpening, to some extend even for upscaling. And for possible combinations for all of these.
But, if I want to do any of these, then surely I won't use TGMC. Instead, I would just use those tidbits that are suited for the planned operation. There's plenty of stuff in TGMC that has not the slightest justification to be used in conjunction with progressive input ... examples: all "bobbing" operations in TGMC of course are total nonsense on progressive input. The "gaussian" temporal element does not make much sense in that case as well. And a few more hidden ones ... e.g. several operations are "vertically oriented", which is fully on purpose for bobbing, but rather pointless for progressive input.
Taking these two major elements out of the game, there is not any good reason to take TGMC as basis for further investigations ... because at this point, there's not much left over.
Instead, start from scratch. It's the better way.

Useful elements are (or can be) ... the pre-denoising principle, but that's an old hat, the method is used for a long time by now. Also the contrast-reducing trick, though it could be made a bit smarter for general application (SAD threshold scaled to presence of edge-magnitude in a given block, that would be something). Sharpening plus temporal-limiting is also useful - but this, too, has been shown before. The thinning principle is a useful puzzlepiece for upscaling, but for that purpose it should (IMHO) be assisted by some impulse enhacement.

And so on, bla blah, bla bleh, bla bluh ...


If you want to point me to something that I didn't think of yet, that's a nice intention. But to succeed with that, you need to try harder. Much harder. You have no picture how far my mind has been travelled already.
__________________
- We´re at the beginning of the end of mankind´s childhood -

My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!)
Didée is offline   Reply With Quote
Old 29th December 2009, 00:03   #295  |  Link
sarmano
Registered User
 
Join Date: Oct 2006
Posts: 26
Didée

Yeah...
Quote:
You have no picture how far my mind has been travelled already.
I think this a big problem!
Be simple.

I've understood all aforesaid. TempGauss as idea not working for me as method on video, for static image maybe.
Nevertheless, thanks a lot for ideas. They're really new, interesting and usefull.

I try that all.

Last edited by sarmano; 29th December 2009 at 00:17.
sarmano is offline   Reply With Quote
Old 29th December 2009, 10:34   #296  |  Link
Didée
Registered User
 
Join Date: Apr 2002
Location: Germany
Posts: 5,389
Quote:
TempGauss as idea not working for me as method on video, for static image maybe.
I give up.
__________________
- We´re at the beginning of the end of mankind´s childhood -

My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!)
Didée is offline   Reply With Quote
Old 29th December 2009, 20:32   #297  |  Link
Terka
Registered User
 
Join Date: Jan 2005
Location: cz
Posts: 704
Hi Didee,
i must smile to see there are even worse ones ^, than i am.
I didnot play with the deint stuff for a while, because no new cray-sy ideas. But.. you mention something, so i hope, you will
jump over the pitfall you mentioned.
So do you think you will show us something new?
ive tried to put mrecalculate to tgmc, because for static using of larger blocks looked better for me.
so the 'mod' if i can call it so, was only 2 different blksizes and thresholds.
but you were speaking about correct place to put the mrecalculate....
Terka is offline   Reply With Quote
Old 30th December 2009, 01:56   #298  |  Link
Didée
Registered User
 
Join Date: Apr 2002
Location: Germany
Posts: 5,389
There are two different possible aspects of vector recalculation: a) adaptive blocksize, and b) better catch on motion.

a) is obvious - just recalculate the vectors with a smaller blksize.

The point with b) is that TGMC uses a "flattened" searchclip, because of the thSAD problem I explained in the past. That's okay for getting SADs that allow MDegrain to do the expected job. But it's suboptimal in regard to the plain motion search: the flattening reduces data, hence the motionsearch could be impaired. It would be better to do the MAnalyse's on the original calmed searchclip (namely "t2"/"t2_super"), and only then use MRecalculate to update the SADs in respect to "searchclip"/"srch_super".

The pity is that to do *both* a) and b) together in a reasonable way, you need two instances of MRecalculate for each vectorset. Together with the possibility that one may specify different search parameters for each recalculation stage, this would allow to boost TGMC from (now) 20 different parameters to (then) 50 different parameters. (Or thelike, I didn't count those numbers. You know what I mean: too much parameters are too much parameters.)

It's actually not very difficult to implement such options, only a bit elaborative. (And I'm lazy with scripting these days - much less time for digital video, much more for square art.)
Also, I hardly see complaints that TGMC isn't good enough - but complaints that TGMC is too slow, those I see quite often. Therefore my motivation is low to make a boring implementation that enables small improvements (which most people never would even notice), but makes things a good bit slower (upon which everyone would cry MURDER).
__________________
- We´re at the beginning of the end of mankind´s childhood -

My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!)
Didée is offline   Reply With Quote
Old 30th December 2009, 17:36   #299  |  Link
Terka
Registered User
 
Join Date: Jan 2005
Location: cz
Posts: 704
i see.
and the pitfall is to do the select of the more precise ones?
how to do it?
btw.
1. there are complaints about 'artefacts'.
2. imho some people complaining about speed want to spend the processor time for insane x264 settings
to lower the bitrate and have better quality. so IMHO coplaints about speed are de-facto complaints about quality.

Last edited by Terka; 30th December 2009 at 17:44.
Terka is offline   Reply With Quote
Old 30th December 2009, 17:51   #300  |  Link
Boulder
Pig on the wing
 
Boulder's Avatar
 
Join Date: Mar 2002
Location: Finland
Posts: 5,718
Quote:
Originally Posted by Didée View Post
It's actually not very difficult to implement such options, only a bit elaborative. (And I'm lazy with scripting these days - much less time for digital video, much more for square art.)
OT: Is your surname by any chance "Gaff"? Nice work
__________________
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
Reply

Tags
deinterlace, flickering

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 15:46.


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