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.

Domains: forum.doom9.org / forum.doom9.net / forum.doom9.se

 

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

Reply
 
Thread Tools Search this Thread Display Modes
Old 8th March 2010, 22:12   #381  |  Link
danielkun
Registered User
 
Join Date: Aug 2002
Posts: 21
Quote:
Originally Posted by Didée View Post
Of course it is possible to use the general processing chain of TGMC also for progressive content. Basically, all that's needed is to deactivate the internal bobbing. Just lately someone has asked for a progressive-TGMC (though in a different context, for postprocessing after MFlowFPS) ... short of putting one more switch into the function, see here for the necessary changes, it's really not difficult. (If you don't speak German - the changes are in red.)

It's not 100% optimal this way, since a few things in TGMC assume that the vertical resolution is blurred much more than the horizontal resolution. Perhaps Smode=1 is better than the default Smode=2 in ths case, and probably you'd want to reduce SVthin, or even set it to 0.0. Also, it might be good to put Vinverse between IVTC and TGMC ... like

Code:
TFM().TDecimate()
Vinverse()
TGMC_b2(Smode=1,SVthin=0.49) # script modified as shown!!
It's all theory, I didn't try this myself yet.
Danke Didée
I'll look into this and try your different suggestions.
danielkun is offline   Reply With Quote
Old 8th March 2010, 23:11   #382  |  Link
osgZach
Registered User
 
Join Date: Feb 2009
Location: USA
Posts: 676
Quote:
Originally Posted by 2Bdecided View Post
wow - can people delete posts without leaving a trace? That can make for some strange looking conversations (see above!).

Cheers,
David.
Yes.. Although some forums can be set up to not allow the user to delete their posts after a certain amount of time has passed.. I'm pretty sure I have posted on boards like that before.. If so, I would think a hack / mod of some sort would be available for VBulletin.
osgZach is offline   Reply With Quote
Old 9th March 2010, 15:45   #383  |  Link
2Bdecided
Registered User
 
Join Date: Dec 2002
Location: UK
Posts: 1,673
Whether people should be allowed to delete posts is one thing - but on most forums it says "deleted by user" in place of the missing post.

Cheers,
David.
2Bdecided is offline   Reply With Quote
Old 10th March 2010, 03:14   #384  |  Link
henryho_hk
Registered User
 
Join Date: Mar 2004
Posts: 889
I suggest case-insensitive comparison on the EDIMODE parameter. It is now rather tricky ("NNEDI" vs "nnedi2").
henryho_hk is offline   Reply With Quote
Old 10th March 2010, 11:24   #385  |  Link
Didée
Registered User
 
Join Date: Apr 2002
Location: Germany
Posts: 5,407
Quote:
Originally Posted by henryho_hk View Post
I suggest case-insensitive comparison on the EDIMODE parameter. It is now rather tricky ("NNEDI" vs "nnedi2").
I fully agree that this is bad style. The excuse is that Avisynth's parser accepts it.
(And the 2nd excuse is that the lowercase string was not added by me - that was done by third-party scripter/s.)

It's definetly not clean, but ... laziness has learned that the parser does not care for upper/lowercase when checking identity: it evaluates "big"=="BIG" = TRUE. Has been like that for over a decade.

Is someone about to change the parser's behaviour?

Also, there's lots of bad style that frequently is used in Avisynth ... A similar case:

a = [some float]
b = [some int]

result = a * b

In a clean programming style, such mixing of var types should not be done. Strict parsers/compilers would complain. Wanna urge some billion instances in some thousands of Avisynth scripts that do an INT*FLOAT multiply?
__________________
- 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 10th March 2010, 16:53   #386  |  Link
WorBry
Registered User
 
Join Date: Jan 2004
Location: Here, there and everywhere
Posts: 1,197
@Didee,

Any thoughts about my last post above ?

Hope it wasn't too dumb; if complete nonsense, just let me know.

Cheers.
__________________
Nostalgia's not what it used to be

Last edited by WorBry; 10th March 2010 at 16:57.
WorBry is offline   Reply With Quote
Old 10th March 2010, 17:33   #387  |  Link
henryho_hk
Registered User
 
Join Date: Mar 2004
Posts: 889
No.

While the parameter name is case insensitive, the parameter value (avisynth's string compare) is case sensitive. "NNEDI2" has the same result as "Blah".
henryho_hk is offline   Reply With Quote
Old 10th March 2010, 17:54   #388  |  Link
Gavino
Avisynth language lover
 
Join Date: Dec 2007
Location: Spain
Posts: 3,442
Quote:
Originally Posted by henryho_hk View Post
... the parameter value (avisynth's string compare) is case sensitive.
No, it isn't. Case is ignored in all string comparisons.
Gavino is offline   Reply With Quote
Old 10th March 2010, 18:39   #389  |  Link
Didée
Registered User
 
Join Date: Apr 2002
Location: Germany
Posts: 5,407
@ henryho_hk - what do you get with this little script?
Code:
check = ("BIG"=="big") ? "size doesnt matter!" : "size DOES matter!"

version().subtitle(check,align=2)


@ WorBry - only one small issue: don't put "levels=1" in the sclip_super line. Don't you get "MAnalyse: it is not enough levels in super clip (1), while MAnalyse asks [n]" ... ? - The searchclip should have all levels available.

The rest of the script seems OK to me. Same as your conclusion about AA strategy - in this case, there is not much AA to get from temporal processing. Spatial interpolation is the most-promising approach, and averaging two EDI's (top/bottom) is a good way.

Also,
Quote:
Also I found that the temporal gauss treatment itself tended to introduce conspicuous warping/undulation of lines/edges.
is not surprising. When applying TGMC to progressive input, there's a problem because the number of different motion states in forward- and backward-direction are different. This un-balance can mislead the motion engine.
__________________
- 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 10th March 2010, 19:07   #390  |  Link
WorBry
Registered User
 
Join Date: Jan 2004
Location: Here, there and everywhere
Posts: 1,197
OK, thanks for the advice

My only frustration with the 'double-Edi' approach is the line thickening, but I guess that's a better trade-off than other detail-destroying blur AA techniques, and thankfully NNEDI2 is a great improvement over its predecessors in this respect.
__________________
Nostalgia's not what it used to be
WorBry is offline   Reply With Quote
Old 10th March 2010, 23:01   #391  |  Link
Revgen
Registered User
 
Join Date: Sep 2004
Location: Near LA, California, USA
Posts: 1,545
Small question.

Does the "edeint=" parameter override the "EDIMode=" parameter?
__________________
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 10th March 2010, 23:12   #392  |  Link
Didée
Registered User
 
Join Date: Apr 2002
Location: Germany
Posts: 5,407
Small answer: Yes. "Edeint" has priority over "EdiMode". (Assumption: if the user takes the effort of producing a bobbed clip and feeding it into TGMC, then it's probably not by accident.)
__________________
- 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 10th March 2010, 23:17   #393  |  Link
Revgen
Registered User
 
Join Date: Sep 2004
Location: Near LA, California, USA
Posts: 1,545
^Thanks. That's the way it works in TDeint, so I just wanted to be sure.
__________________
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 19th March 2010, 13:21   #394  |  Link
Terka
Registered User
 
Join Date: Jan 2005
Location: cz
Posts: 704
Didee,
regarding the clips where the VCrep function cant catch the mvtools errors:
1.what about build the repair function based on mmask?
2.comparsion of vectors from 2 vectors search is not possible in mvtools for now.
(mean use your recalculate idea and apply it where the 1st search vec. differ from 2nd vectors search by more than threshold.
this means where 2nd search is 'more' different from 1st one, use 2nd. because usually they should be +-pixel the same.)

Last edited by Terka; 19th March 2010 at 13:55.
Terka is offline   Reply With Quote
Old 19th March 2010, 14:25   #395  |  Link
Didée
Registered User
 
Join Date: Apr 2002
Location: Germany
Posts: 5,407
Quote:
1.what about build the repair function based on mmask?
That's the Chicken-vs-Egg problem, once again. The issue takes place in stage1. No motion data is available at that point. After the motion data has been computed in stage2 (based on the possibly-erroneous result of stage1), it is not reliable to catch errors of stage1.


Quote:
where 2nd search is 'more' different from 1st one, use 2nd. because usually they should be +-pixel the same.)
I.e., making some sort of self-validation. That's not a bad idea in general. Basically, it even is a rather nice idea. Be surprised or not, pretty much that is what I have tried already. Precisely, years back when I was fiddling with MCBob ... and as much as I like the principle, I didn't get the method to work out.
__________________
- 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 19th March 2010, 14:35   #396  |  Link
Terka
Registered User
 
Join Date: Jan 2005
Location: cz
Posts: 704
1. mean like this:
# IF rep2=true: Allow only bob-typical vertical differences
stage2 = (rep2!=0) ? stage2.VCRep(edi,ed=ed2,od=od2) : stage2

but do this on seachclip. so the 'final' searchclip will be done from
2 searchclips, classical tg and not preprocessed.


2.
why you didnt?
Terka is offline   Reply With Quote
Old 20th March 2010, 00:13   #397  |  Link
translucent
Registered User
 
Join Date: Mar 2010
Posts: 1
First off, thanks to Didée for such a useful script. Just had to point out this (seemly longstanding) bug:
Code:
# cheap halo-reduction for sharp pel modes (for Lmode=2|4)
cx1=comp_fw1.width()
cx3=comp_fw3.width()
cy1=comp_fw1.height()
cy3=comp_fw3.width() #!?!?

Last edited by translucent; 22nd March 2010 at 12:24.
translucent is offline   Reply With Quote
Old 27th March 2010, 05:21   #398  |  Link
henryho_hk
Registered User
 
Join Date: Mar 2004
Posts: 889
Is it a bug or a feature? lol
henryho_hk is offline   Reply With Quote
Old 29th March 2010, 11:24   #399  |  Link
Terka
Registered User
 
Join Date: Jan 2005
Location: cz
Posts: 704
Didee,
remember the grass problem with the dogs clip?
(For the ones who dont know the clip:
realatively static clip, handheld camera. People on grass filmed from 10m. On the static grass after tempgauss appeared large up/down moving areas.)
this helped:
searchclip=searchclip.HQdn3D(4,3,6,3)
its line before
# Get motion vectors

(the idea was stolen from TemporalDegrain)
tested on tr2=1 where most visible.

Could please other tgmc users test this tweak? Thank you, Terka.
Terka is offline   Reply With Quote
Old 29th March 2010, 11:59   #400  |  Link
Didée
Registered User
 
Join Date: Apr 2002
Location: Germany
Posts: 5,407
That's also a "you win here, you loose there" game. It'll work out in quasi-static areas. But if you have, for example, a panning shot where the top half of the frame shows a cloudy sky, then it is very likely to harm.

(In TemporalDegrain, the according "HQ" option better should be labelled "BF" ... because this trick is not "high quality", but rather "brute force".)
__________________
- 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
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 19:10.


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