Log in

View Full Version : HybridFuPP 0.98a (11/18/2007)


Pages : 1 [2] 3

rkalwaitis
22nd February 2009, 23:23
FuPP

I was using the following settings.

HybridFuPP(MP_Mode=2,fast=true,S_str=11,T_str=4,E_Auto_Str=false,Skin_Type=0,Skin=True,E_Str_X=5,E_str_Y=5,preset="medium", ARAdjust=false)

x264 codec 950kbps. I was previewing the output and noticed that there were black dashes in the sky. I removed every command in call until they disappeared. Turns out the culprit is the fast true option. Not one or two little dashes but multiple and very noticeable.

Im still testing stuff.

K

FuPP
22nd February 2009, 23:25
Skin_type should not exist anymore. Did avisynth throw you an error ?

FuPP
22nd February 2009, 23:38
About "dashes", did you edit the script or are you using 0.894a I have posted ?

I would need a piece of your source please.

FuPP

edit : I have tried your chain : can't see any dashes on my test clip...
edit2 : plugins versions, please ?

rkalwaitis
23rd February 2009, 07:21
yes i did use 0.894a. Skin type and using it did not through an error. I will remove it from my function call. Dashes = 0984a. I will try to figure out how to upload the things you need.

Adub
23rd February 2009, 09:18
Fupp,

Did you by chance look into this bug that I reported earlier? http://forum.doom9.org/showthread.php?p=1176145#post1176145

rkalwaitis
23rd February 2009, 10:08
Okay skin doesnt work when i call it now. It helps to remove the autoload earlier version from the directory :(

what site is used to put your photos and files on so I can add them to my posts? Is it free? I like free....it makes me feel warm all over.

FuPP
23rd February 2009, 10:40
@Merlin7777 : yes, I will look at it :)

@rkalwaitis : look at http://uploadhosted.filefront.com/

FuPP
23rd February 2009, 20:30
erm... nice ! But what am I supposed to see ?

Ideally, what I need is a clip (maybe 250 frames of your source) where I can see those "dashes" when using the same parameters than you :)

rkalwaitis
23rd February 2009, 20:59
Im Trying but its not working for me. Im still trying(filefront). But I think I figured out the dashes. I switched to Megui to encode and they are gone there in preview and encoded. The dashes appeared in Virtualdub. So I dont know. Ive been playing with the show functions, very nice. Additionally this whole time I thought I had been using spline64resize(dropped mt avisynth), I turned off the ARA, but forgot to change the default resizer. Im getting better results each time. You were correct the skin option is true or false seems to be off. not throwing any erros, but skin type may be working still? I dont know?

FuPP
23rd February 2009, 21:17
skin_type switch is no more necessary because it is now automatically evaluated. this is the reason why I have removed it from parameters list.

FuPP

rkalwaitis
23rd February 2009, 23:21
ah I understand. One of the older HybridFuPP.avs files required asharp be used. Is this still the case. The only sharp plugin I saw in the script is unfilter. Is this still correct?

FuPP
23rd February 2009, 23:31
I can't remember having ever used asharp :confused:

Maybe you want to talk about msharpen ? It is not necessary anymore.

FuPP

Leak
24th February 2009, 13:16
That was a test of me playing around, so I can learn how show you things im talking about. The next ones will be more constructive.
Before you do ANYTHING else: please test (and learn to use) that "Edit" button on your own posts.

Posting several times in a row instead of editing your last post is considered rude on just about any forum - just extend your last post if you forgot something, and delete your second post if you accidentally post twice in a row (or make an empty post like you did a few posts up).

(Note: it's totally legit to make a second post in a row a few days later since editing won't mark the thread as updated...)

rkalwaitis
24th February 2009, 17:04
Thanks Leak

Thanks Fupp

leiming2006
25th February 2009, 03:37
Fatal error: Call to undefined function: mysql_connect() in /home/mwiprod/unite-video/phpbb/db/mysql4.php on line 48

aNToK
25th February 2009, 08:15
Love to try this one, but I get an invalid call to function "deen" in line 235 according to virtualdub. The first post mentions using the "supplied" .dll, but I'm unable to find it. Would that be in the link at the top of the post? It doesn't seem to be working. (same as above post?)

FuPP
25th February 2009, 08:27
HybridFuPP Plugins and Doc (http://files.filefront.com/HybridFuPP+Plugins+and+Doczip/;13362783;/fileinfo.html)

Doc is 0.92b one. Please read post #1 of this thread to see major improvements and new parameters.

FuPP

rkalwaitis
25th February 2009, 20:36
Fupp is there a way to turn of the preset low, very low, or whatever, but still use the other functions. I want to use The N1 or N2 functions, but when I change them to my specific choices it seems that the preset is still running.

FuPP
25th February 2009, 21:11
Any parameter called in your command line will overwrite default ones, whatever the preset used. Why do you think yours are not taken into account ? Did you check with show="P" ?

Fupp

edit : Oups ! filters chains are not displayed when using 'Show' (this is pure scandal !) If I catch the guy who made that script, I will ask him to add this...

rkalwaitis
26th February 2009, 11:42
I think its still doing my settings and yours. Ill try again.

FuPP
26th February 2009, 15:50
@ rkalwaitis : ok, let me know...

I have put a little bit of magic in E_Auto_Str for Merlin7777 ;), I think (hope) it is ok now.

And I am going to add a show function to display advanced parameters, ie filtering chains.

And, last, I am updating the whole documentation.

rkalwaitis
26th February 2009, 18:47
You are the man, So E_Auto_Str is back to working? I will put in on true. After I have the advanced parameters show function then I will now if both are working at the same time (my filters and HybridFupp) Thanks for humoring me and telling me how to get rid of my unneeded posts.

You rock as always.

what settings do you recommend for old black and white footage. Its the Duke.

Which script has the fix to E_Auto_Str=true

this one here?
HybridFuPP Plugins and Doc

Just checked out your anime settings and all I can say the default for anime1 nailed it first try, very nice Fupp. Only thing I changed is the resizer to 7 and turned off the ARA Adjust (false). You know Im hooked on that spline64resize.

K

FuPP
26th February 2009, 19:18
Which script has the fix to E_Auto_Str=true

Be patient, I have not posted new version yet :)

what settings do you recommend for old black and white footage
Humm. As far as I can remember, I did not process such material. It depends a lot on your source quality though...

About Spline64 : be aware that using a sharp resizer will improve percepted quality before re-encoding, but can degrade the final result after encoding if bitrate used is not sufficient. It is all a matter of trade-offs...

rkalwaitis
26th February 2009, 19:27
hmmm did not know that about Spline 64. I read somewhere maybe mftoon wrote that if I were to supersample my resizer with a sharpener (ie msharpen) it greatly improves the quality. ex. spline64Resize(1440,960).msharpen().spline64resize(720,480). Ill mess with it and see. I have noticed that since you added the resizer=7(spline64) my products are nicer, but I have to put the parameters to a mod to 16 in the script. Once I change away from the DAR and resize on my own or use a suggested resized size, like in MEGUI. My product suffers and becomes blurry.

# Set DAR in encoder to 108 : 79. The following line is for automatic signalling
global MeGUI_darx = 108
global MeGUI_dary = 79
DGDecode_mpeg2source("C:\Users\baba\Desktop\Testfile\VTS_01_1.d2v", cpu=4, info=3)
ColorMatrix(hints=true, threads=0)

It also adds a bit to encoding speed as you had mentioned. It was a worth tip from you and has paid off for me.


http://www.aquilinestudios.org/avsfilters/sharpeners.html#msharpen here is the link to where I read about keeping a sharper image through resizing, using msharpen. He is an anime guy, but something like that should apply to regular video too.

rkalwaitis
26th February 2009, 21:26
http://img516.imageshack.us/img516/2886/detailg.png


Fupp, the processed clip shown by your show command has loss of detail. Any suggestions of how to get some of it back. Also Im not sure if this is computer generated graphics falls under anime. Does it? At least I think its computer generated.

Thanks K

FuPP
26th February 2009, 23:27
I read somewhere maybe mftoon wrote that if I were to supersample my resizer with a sharpener (ie msharpen) it greatly improves the quality
I'm afraid you did not get it : supersampling before sharpening edges is only a way to avoid aliasing (ie "stairs" effect on edges)... at the cost of speed.

HybridFuPP does edge sharpening (but no supersampling here) as msharpen, but gives you control on horizontal and vertical sharpening strength : for instance, as a DVD source is generally anamorphosed, there is more "information" on vertical axis than on horizontal one ; for this reason, when you need to resize it in a more conventional way, you may want to give less sharpening effect on vertical axis than on the horizontal one.

I have noticed that since you added the resizer=7(spline64) my products are nicer
By the way, if you are happy with spline64, just use it :) ! I simply wanted to make you aware that you have to compare things after encoding and not before, because bitrate and codec (and the way the codec allocates bits...) are very important : a clip resized with a very sharp resizer will oblige the codec to allocate more bits to encode while maintening quality. If the bitrate you can give can't grow (because conditioned by final size for instance), the codec will have then to simplify as it can the frames encoded, and may give you at the end rather bad results (ringing, blocks - especially in moving parts...) And all of this, even if the picture semt to be more beautiful at the beginning :)

Fupp, the processed clip shown by your show command has loss of detail
Preset Anime2 has been designed for strong cleaning and is more adapted to "Disney-Like" Animes. You should give a try to anime1 preset and adapt settings if needed.

rkalwaitis
27th February 2009, 06:03
Thanks Fupp I get it now.

rkalwaitis
27th February 2009, 10:07
http://img144.imageshack.us/img144/9312/detail2.png

Fupp following your advise and changed to anime1 and also changing the EM_Mode to 2. It has retained more detail.

thanks.

FuPP
27th February 2009, 10:38
For that kind of material (CG), you may want to give a try to presets 'High' or 'HybridQ'. But once more, make your comparisons after rencoding.

rkalwaitis
27th February 2009, 19:47
Okay, thanks Fupp. The above setting produced a very nice image.

FuPP
3rd March 2009, 01:07
0.985a

- Automatic calculation of edges sharpening strength (E_Auto_Str = true) should work better

- Show=”F” will display used filtering chains

- Dark scenes details enhancer and Skinned areas enhancer have now each their own strength parameter (DS_Enh_Str for dark scenes, S_Enh_Str for Skin processing)


I have updated the whole documentation too.

HybridFuPP 0.895a (http://files.filefront.com/HybridFuPP+0895azip/;13400097;/fileinfo.html)

FuPP

Adub
3rd March 2009, 02:16
Great! Thanks for the fix!

rkalwaitis
3rd March 2009, 06:25
Im gonna play with this Fupp and let you know what I think.

FuPP
3rd March 2009, 07:24
Forgot to say : HybridFuPP requires now avisynth 2.5.8 because of the use of min/max functions (really welcomed :)) and spline64resize.

FuPP

rkalwaitis
3rd March 2009, 21:05
FuPP

A couple of questions. When I use the E_Auto_Str the show function still shows a zero "0". Does the show function show the automatically detemined y and x numbers?

Ive also been playing with the N1 and N2 functions by putting in my own denoisers...whatever..Just playing. The show function shows that nothing has changed ie. N1 and N2 still show the same thing. I know if I show=f I get the filter chain. So I know filters are used. But do the defaults remain on too?

I know how to turn of denoisers for moving areas, MP_mode=0. How do I turn off the static areas? I thought that was the purpose of N1 and N2?

FuPP
3rd March 2009, 23:30
When I use the E_Auto_Str the show function still shows a zero "0". Does the show function show the automatically detemined y and x numbers
When upsizing (or not resizing), E_Auto_Str will disable itself : you will need therefore to specify manually E_Str_X and E_Str_Y (and disable E_Auto_Str).

When downsizing and using E_Auto_Str=true, E_Str_X and E_Str_Y values will be effectively computed (you will be able to check it using show="P" ;)).

This is E_Auto_Str behaviour for now, but I can change it if you convince me :).


Ive also been playing with the N1 and N2 functions by putting in my own denoisers...whatever..Just playing. The show function shows that nothing has changed ie. N1 and N2 still show the same thing. I know if I show=f I get the filter chain. So I know filters are used. But do the defaults remain on too

When you say "N1 and N2 still show the same thing", you probably mean that associated parameters to the default processing chains N1 and N2 are not modified. But as you have (probably) re-defined these chains without using these parameters, what is the problem ?

I mean : default N2 is :

"""Deen("a3d", S_Radius, S_Str, 3*C_Str, T_Str, C_Str, S_Dist, 9)""".
Imagine now you re-define N2 as :

"Levels(0, 1, 255, 255, 0)"
S_Radius, S_Str, C_Str, T_Str, C_Str and S_Dist will be simply ignored because not used anymore !

BUT if you write now :

HybridFuPP(preset="Medium", N2="Levels(0, 1, S_Str, S_Str, 0)")
S_Str default value for preset "medium" will be taken into account to compute levels.

And if you write :

HybridFuPP(preset="Medium", N2="Levels(0, 1, S_Str, S_Str, 0)"=, S_Str=255)
S_Str value you have specified in the command line will be taken into account to evaluate levels function.


These are all stupid examples, only to illustrate :)


How do I turn off the static areas [denoising]?
simply write : N2="" (N1 is not used by default , so equal to "")

A couple of questions (...)
seems to be a few more ;)

FuPP

rkalwaitis
4th March 2009, 08:53
Thanks FuPP back to playing with it using your advise :)

Im sure Ill have more questions to follow, thanks for helping me out as always, you rock.

rkalwaitis
16th March 2009, 19:16
Havent forgotten you Fupp, im back and ready to test. Got hurt working on the car :) But am much better.

FuPP
16th March 2009, 23:55
:scared:

Oh ! I wish you a speedy recovery Robert, and hope there is nothing serious !

FuPP

rkalwaitis
17th March 2009, 19:47
Broken fingers. No biggie. Im having a real hard time with an older video. I will try to upload a shot with my parameters so you can tell me what Im dorking up.

K

rkalwaitis
17th March 2009, 20:12
FuPP how would I add something like the below in the N2 spot of HybridFupp, Of course I would have the appropriate plugins? I would I call a script in the N1 or N2 position?

src = last
super = src.MSuper(pel=2)
bvec = super.MAnalyse(isb=true, overlap=4)
fvec = super.MAnalyse(isb=false, overlap=4)
src.MDegrain1(super, bvec, fvec)

FuPP
18th March 2009, 11:30
Happy to know that it remains you one or two fingers to type on your keyboard ;)

FuPP how would I add something like the below in the N2 spot of HybridFupp, Of course I would have the appropriate plugins? I would I call a script in the N1 or N2 position?


I suppose you should first define a function. Something like :

function MyDenoise(clip src)
{
super = src.MSuper(pel=2)
bvec = super.MAnalyse(isb=true, overlap=4)
fvec = super.MAnalyse(isb=false, overlap=4)
return src.MDegrain1(super, bvec, fvec)
}


and then insert it in your HybridFuPP command line. Use N1 to apply it on the clip before resizing, N2 if you want to apply it after resizing.

If you apply it on N1, disable both N2 and M (ie N2="", M="")

If you apply it on N2, disable M (ie M="")

ex :
HybridFuPP(...., N1="MyDenoise()", N2="", M="")


Rem :

Denoising before or after resizing is all a matter of taste and of tests :). But before is always slower...

'M' has to be disabled because your denoising function is already motion compensated. And moreover, HybridFuPP is probably not compliant with MVTOOLS2. This could be a further improvement :)


FuPP

rkalwaitis
18th March 2009, 13:48
okay ill give it a shot. Thanks Ill let you know what happens.

rkalwaitis
19th March 2009, 21:26
I guess its not compliant with MVTools2. I can not get it to work for me.

Im gonna play around with it more. Are you going to make the auto sharpening unfilter function to work all the time and not only under certain circumstances?

And MVTools2 Compliant. Still trying to understand MVflow for denoising....does it use motion estimation? I think not.

Sagekilla
20th March 2009, 01:02
Unless you have both MVTools 1 and 2 in your plugins directory, you won't be able to mix and match those code snippets that do processing with either MVTools 1 or 2.

To make HybridFuPP MVTools 2 compliant, you find MM and MDenoise then replace them with these updated copies:

Function MM(clip i, int m_th, int scd, int bl_sz)
{
s = i.MSuper()
return mt_Binarize(i.MMask(s, MAnalyse(s, isb=false, lambda=1000, blksize=bl_sz), ml=m_th, Gamma=50, thSCD1=scd, thSCD2=135),\
Upper=False, Threshold=30)
}

Function MDenoise(clip i, int m_th, int scd, int bl_sz)
{
s = i.MSuper()
b1 = s.MAnalyse(isb = true, blksize = bl_sz, lambda = 1000)
f1 = s.MAnalyse(isb = false, blksize = bl_sz, lambda = 1000)
return i.MDenoise(s, b1, f1, tht = m_th, thsad = scd)
}

rkalwaitis
20th March 2009, 07:44
Thanks Sagekilla, Im gonna give it a shot :)

YES! It worked!!

Im gonna play with this and let you guys know what I learned or if I have questions.

rkalwaitis
21st March 2009, 11:30
Fupp

Im very interested in your idea of auto sharpening with the unfilter.dll Im not very script friendly and I think you are using it with an edgemask? I do not know for sure. I can not see any clear cut function. Could you please point it out to me. Inquiring minds want to know.

I was also curious since the use of the mvtools if this would be possible or just me not thinking. mt_edge pulls the edges from the source and holds on to them. (keep them seperate for now) Now denoise with perferred way. Recall the edges intensify the edge mask. (now I have the orginal edge mask and the intesified one) Get the average of those two masks and reapply them to the denoised film. To see what happened.

Sagekilla
21st March 2009, 17:28
This the function you're looking for?


Function AutoStrCalc(float rw, float rh, int ra, string axis)
{
ref = axis == "X" ? rw : rh
return ref == 0 ? 0 : min(60, max(0, int((1-(float(ra)/10-0.2))*(max(rw, rh) == ref ? -360*ref+360 : (-360*max(rw, rh)+360) \
*(min(rw , rh)/max(rw, Rh))))))
}


That's the code for automatically calculating unsharp strength.

rkalwaitis
21st March 2009, 18:20
I played with that but I could not get it to work by itself. ie just use that function alone. It works fine when I use it with Hybridfupp.avs

Sagekilla
21st March 2009, 23:31
You need to feed the appropriate resizer value:


# Resizer values
# Bilinear: 0
# Bicubic: 1-4
# Lanczos: 5
# Spline36: 6
# Spline64: 7

Resizer = 7

x_str = AutoStrCalc(width, height, Resizer, "X")
y_str = AutoStrCalc(width, height, Resizer, "y")

Spline64Resize(src, width, height).Unsharp(x_str, y_str)