Avisynth Script for doubling video frame rates - Page 31 - AVS Forum
Forum Jump: 
Reply
 
Thread Tools
post #901 of 1968 Old 02-17-2011, 06:51 AM
Member
 
Join Date: Feb 2006
Posts: 79
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Quote:
Originally Posted by mark007 View Post

Just one quick question on cpu optimizations, shouldn't the isse=true and sadx264 optimization be automatically set depending on cpu detected, ie it shouldn't need to be manually set to true and 7?

Adding "isse=true, sadx264=7" is just for making sure MVTools use the best CPU instructions to run "dct" that's all. Yes the MVTools should auto detect it. "badrange=(-24)" could also be removed if you don't play it's value.

Quote:
Originally Posted by widezu69 View Post

@PetitDragon - what does thSAD do? What do the values control?

According to the official doc, lower "thSAD" will make "MRecalculate" to take more actions (Ex. "thSAD=100"). Of course it will charge more CPU time. I placed it just for experiment.
PetitDragon is offline  
Sponsored Links
Advertisement
 
post #902 of 1968 Old 02-17-2011, 02:04 PM
Member
 
mark007's Avatar
 
Join Date: Dec 2006
Posts: 196
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
widezu, the fftw3.dll you linked too seems very old, I guess it can only be good to use the latest version from here

http://fftw.org/install/windows.html

I renamed the libfftw3f-3.dll to fftw3.dll and put it in my syswow64 dir it works.
mark007 is offline  
post #903 of 1968 Old 02-17-2011, 02:34 PM
Senior Member
 
SubJunk's Avatar
 
Join Date: May 2010
Posts: 327
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Quote:
Originally Posted by Forfront View Post

@SubJunk: Thanks for the comparisons

You're welcome

I have done another test to demonstrate whose script is most effective, and this one is objective because it starts with actual 59.94FPS content.
Next I convert the video to 29.97FPS and re-convert it to 59.94FPS using our scripts.

This test objectively shows whose script produces a video that is closer to an actual 60FPS video

Firstly I have a set of screenshots:
Original - Mine - PetitDragon's

But most importantly here are the videos:
Original - Mine - PetitDragon's.

P.S. I did test Widezu's new one but the results were exactly the same as mine in this test so didn't upload it

P.P.S. Of course, it is possible that people like video that is less like real 60FPS, but this is operating on the assumption that the purpose of these scripts is to recreate the lost frames, as if it were actually taken at 59.94FPS.
SubJunk is offline  
post #904 of 1968 Old 02-17-2011, 04:23 PM
Member
 
mark007's Avatar
 
Join Date: Dec 2006
Posts: 196
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
After a few hours of tweaking for my current setup, I have come to the conclusion that on the whole that these are the right settings for me / my machine at least.

searchparam=1 (Reduces alot of the artifacts I'm usually here on the forums complaining about , James bonds hand flickering, buildings / bridges with certain patterns look like they are moving in the wrong direction etc)
dct=5 or even dct=8 (Has an absolutely massive positive impact on quality for me. Many scenes that would never appear without blockyness are perfect using dct=5 or 8)
pel=2, with pel=1 I can guarantee myself no frame drops ever, but the aliasing introduced by pel=1 is just too much, unless I can get rid of the horrible aliasing introduced with it I can never see myself being happy with pel=1. Anyone know a way to get rid of this aliasing effect with pel=1?)

I'm currently using the script below for 1080p incase anyone wants to take a look, and JUST ABOUT get 0 frame drops with it and madVR, any more quality tweaks like chroma=true give me dropped frames but I'm very happy with the quality of motion and image itself. I'll keep tweaking pnew to see can I get anymore quality out of it on scenes still very prone to blockyness with fast motion.

For the first time I'm happy enough with a script to watch a full 1080p movie with. Cheers guys.

Code:
super = MSuper(pel=2, hpad=16, vpad=16, levels=4, rfilter=2, isse=true)
backward_1 = MAnalyse(super,chroma=false, isb=true, blksize=16, searchparam=1, search=3,levels=4,plevel=0, isse=true, sadx264=7,dct=8,pnew=250)
forward_1 = MAnalyse(super,chroma=false, isb=false, blksize=16, searchparam=1, search=3,levels=4, plevel=0, isse=true, sadx264=7,dct=8,pnew=250)
MBlockFps(super, backward_1, forward_1, num=50, den=1, mode=0,isse=true)
CPU usage still hovering around the 45-50% which still baffles me..... even though this seems to be as high quality as I can get without madVR or any renderer for that matter dropping frames in some busy scenes..
Random crashes opening files or changing script or buffer sizes during playback still very annoying but hard to figure out if its ffdshow / mpc or avisynth / mvtools at fault etc...
mark007 is offline  
post #905 of 1968 Old 02-18-2011, 10:18 AM
Member
 
Join Date: Feb 2006
Posts: 79
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
The Last words about my previous suggestions for balancing smoothness and anti-artifact in scripts:

1, No matter how you prefer to set "levels" and "searchparam" (2, 3 or even 6), when you see artifacts annoying you, using "pnew" and/or "dct" always helps.

2, For "MFlowFps" users, especially having used "pnew" and/or "dct" to suppress artifacts, I highly recommend to remove "ml=10000". The default value is just "100" (no one knows the program better than the original author). Setting occlusion mask so weak like that (only 1/100 of the default) is really not a good idea. It will make using "MFlowFps" almost non sense.

Happy scripting and enjoy.
PetitDragon is offline  
post #906 of 1968 Old 02-18-2011, 11:25 AM
Member
 
mark007's Avatar
 
Join Date: Dec 2006
Posts: 196
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Guys, another tweak I have found that can significantly reduce frame drops if they only occur sporadically / your script is pushing the limits of your machine.

That is, to use the ffmpeg-mt decoder with ffdshow... I tweaked some settings to get a tiny bit of quality, but again tested with some scenes that I found just bring my machine over the edge and can drop bunches of frames. Switching from libavcodec to ffmpeg-mt h264 decoder in ffdshow completely got rid of these, I assume because its spreading the decoding load over the available cores better.....

EDIT: Wow just changing the decoder alone to ffmpeg-mt allows me to set chroma=true and use a second level of mrecalculate.... amazing what non avisynth tweaks can do
mark007 is offline  
post #907 of 1968 Old 02-18-2011, 04:30 PM
Member
 
soulkeeper's Avatar
 
Join Date: Dec 2006
Location: caldera!
Posts: 81
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 11
I'm now using mpc internal decoder..i'll try ffdshow's decoder!!

Has anyone tried plevel=1....

i tried it and artifacts are almost dissapeared!!

does it have any "negative" effect in smoothness or PQ?

I'm also trying to interpolate to 30fps instead of 60....the results are pretty good for me.. it reduces the soap opera effect,uses less cpu and it's sure better in terms of motion judder caused by the low framerate of original video source (23.976) and there shouldn't be any judder in a @60hz display cause it's a multiple...
soulkeeper is offline  
post #908 of 1968 Old 02-18-2011, 08:14 PM
Member
 
Join Date: Feb 2006
Posts: 79
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Quote:
Originally Posted by mark007 View Post

...Switching from libavcodec to ffmpeg-mt h264 decoder in ffdshow completely got rid of these, I assume because its spreading the decoding load over the available cores better...

Yeah. When I talked about your frame dropping before, I have asked what decoder you used (I assumed you should use ffmpeg-mt or CoreAVC). http://www.avsforum.com/avs-vb/showt...7#post19992287

Personally I prefer "ffmpeg-mt" (compared to CoreAVC) due to it's better decoded image quality, and stability with the script.

Quote:
Originally Posted by 8:13 View Post

I updated my scripts here: link. Thank you PetitDragon.

I learned a lot from your great guides (also Jeremy at doom9). Thank you.

Quote:
Originally Posted by soulkeeper View Post

...Has anyone tried plevel=1...

Please see number 4 at http://www.avsforum.com/avs-vb/showt...2#post20012932
PetitDragon is offline  
post #909 of 1968 Old 02-19-2011, 03:34 AM
Member
 
rinorho's Avatar
 
Join Date: Jun 2004
Location: italy
Posts: 188
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Hi,
Now I must manage 2 differents avsynth scripts automatically, with external player in Media Browser.

The first script is oriented to DVD and Standard Definition media files.

----------------------------------------------------------------------------
SetMemoryMax(1280)
SetMTMode(5,4)
ffdShow_source()
SetMTMode(2)
super=MSuper(pel=1, hpad=0, vpad=0)
backward_1=MAnalyse(super, chroma=false, isb=true, blksize=16, blksizev=16, searchparam=3, plevel=0, search=3, badrange=(-24))
forward_1=MAnalyse(super, chroma=false, isb=false, blksize=16, blksizev=16, searchparam=3, plevel=0, search=3, badrange=(-24))
backward_2 = MRecalculate(super, chroma=false, backward_1, blksize=8, blksizev=8, searchparam=0, search=3)
forward_2 = MRecalculate(super, chroma=false, forward_1, blksize=8, blksizev=8, searchparam=0, search=3)
MBlockFps(super, backward_2, forward_2, num=FramerateNumerator(last)*2, den=FramerateDenominator(last)*1, mode=0)
SetMTMode(1)
GetMTMode(false) > 0 ? distributor() : last
-----------------------------------------------------------------------------------
The second to Blu-ray and Full HD media files (mkv expecially)

-----------------------------------------------------------------------------------
SetMTMode(1, 16)
ffdshow_source()
SetMTMode(2)
Height(last) < 1080 ? Eval("""
super = MSuper(pel=2, hpad=0, vpad=0, rfilter=4)
backward_1 = MAnalyse(super, isb=true, blksize=16, searchparam=3, plevel=0, search=3, badrange=(-24))
forward_1 = MAnalyse(super, isb=false, blksize=16, searchparam=3, plevel=0, search=3, badrange=(-24))
backward_2 = MRecalculate(super, backward_1, blksize=8, searchparam=1, search=3)
forward_2 = MRecalculate(super, forward_1, blksize=8, searchparam=1, search=3)
backward_3 = MRecalculate(super, backward_2, blksize=4, searchparam=0, search=3)
forward_3 = MRecalculate(super, forward_2, blksize=4, searchparam=0, search=3)
MFlowFps(super, backward_1, forward_1, num=FrameRateNumerator(last)*2, den=FrameRateDenominator(last), ml=10000)
""") : Eval("""
""")
SetMTMode(1)
GetMTMode(false) > 0 ? distributor() : last
-----------------------------------------------------------------------------

How I can resolve it?
Is better to use FFDshow multiconfig or Zoom Player multiconfig/multinstance?

Thanks a lot
bye
rinorho is offline  
post #910 of 1968 Old 02-19-2011, 09:33 AM
Member
 
mark007's Avatar
 
Join Date: Dec 2006
Posts: 196
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Guys, what vc1 decoder are you guys using. I can watch all of my non vc1 blu-rays now with 0 dropped frame and very good quality but not vc1 as there is no ffmpeg-mt decoder in ffdshow for it.... Are there any multithreaded vc1 decoders?

rinhorho, I use the code below to use my 1080p and non 1080p scripts in the one place.

SetMTMode(1,0)
ffdshow_source()
SetMTMode(2)
(Framerate >=23 && Framerate <= 30 && Height(last) < 1080) ? Eval("""

# your non 1080p scripts

distributor()
""") : (Framerate >=23 && Framerate <= 30 && Height(last) >= 1080) ? Eval("""

# your 1080p script

distributor()
""") : last
mark007 is offline  
post #911 of 1968 Old 02-19-2011, 01:03 PM
Member
 
rinorho's Avatar
 
Join Date: Jun 2004
Location: italy
Posts: 188
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Quote:
Originally Posted by mark007 View Post

Guys, what vc1 decoder are you guys using. I can watch all of my non vc1 blu-rays now with 0 dropped frame and very good quality but not vc1 as there is no ffmpeg-mt decoder in ffdshow for it.... Are there any multithreaded vc1 decoders?

rinhorho, I use the code below to use my 1080p and non 1080p scripts in the one place.

SetMTMode(1,0)
ffdshow_source()
SetMTMode(2)
(Framerate >=23 && Framerate <= 30 && Height(last) < 1080) ? Eval("""

# your non 1080p scripts

distributor()
""") : (Framerate >=23 && Framerate <= 30 && Height(last) >= 1080) ? Eval("""

# your 1080p script

distributor()
""") : last

Thanks mark,
You say that I can use only one script, as following:


----------------------------------------------------------------

SetMTMode(1,0)
ffdshow_source()
SetMTMode(2)
(Framerate >=23 && Framerate <= 30 && Height(last) < 1080) ? Eval("""
SetMemoryMax(1280)
SetMTMode(5,4)
ffdShow_source()
SetMTMode(2)
super=MSuper(pel=1, hpad=0, vpad=0)
backward_1=MAnalyse(super, chroma=false, isb=true, blksize=16, blksizev=16, searchparam=3, plevel=0, search=3, badrange=(-24))
forward_1=MAnalyse(super, chroma=false, isb=false, blksize=16, blksizev=16, searchparam=3, plevel=0, search=3, badrange=(-24))
backward_2 = MRecalculate(super, chroma=false, backward_1, blksize=8, blksizev=8, searchparam=0, search=3)
forward_2 = MRecalculate(super, chroma=false, forward_1, blksize=8, blksizev=8, searchparam=0, search=3)
MBlockFps(super, backward_2, forward_2, num=FramerateNumerator(last)*2, den=FramerateDenominator(last)*1, mode=0)
SetMTMode(1)
GetMTMode(false) > 0 ? distributor() : last

distributor()
""") : (Framerate >=23 && Framerate <= 30 && Height(last) >= 1080) ? Eval("""
SetMTMode(1, 16)
ffdshow_source()
SetMTMode(2)
Height(last) < 1080 ? Eval("""
super = MSuper(pel=2, hpad=0, vpad=0, rfilter=4)
backward_1 = MAnalyse(super, isb=true, blksize=16, searchparam=3, plevel=0, search=3, badrange=(-24))
forward_1 = MAnalyse(super, isb=false, blksize=16, searchparam=3, plevel=0, search=3, badrange=(-24))
backward_2 = MRecalculate(super, backward_1, blksize=8, searchparam=1, search=3)
forward_2 = MRecalculate(super, forward_1, blksize=8, searchparam=1, search=3)
backward_3 = MRecalculate(super, backward_2, blksize=4, searchparam=0, search=3)
forward_3 = MRecalculate(super, forward_2, blksize=4, searchparam=0, search=3)
MFlowFps(super, backward_1, forward_1, num=FrameRateNumerator(last)*2, den=FrameRateDenominator(last), ml=10000)
""") : Eval("""
""")
SetMTMode(1)
GetMTMode(false) > 0 ? distributor() : last

distributor()
""") : last
----------------------------------------------------------------------

Sorry, but I have not alot experience with avsynth scpripts.


I don't know if this can help you: mkv VC-1 format, is problematic format file, always. In Zoom player, I solved it, configuring H264 decoder with Pre-Defined ffdshow Profile
Bye
rinorho is offline  
post #912 of 1968 Old 02-19-2011, 04:46 PM
Newbie
 
zenebona's Avatar
 
Join Date: Jul 2008
Posts: 12
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Hello
Do you use zoom player without any problems ?
Unfortunately it sometimes crashes with an exception error in ffdshow.ax, but when I don't use avisynth, it runs perfectly, so it has something to do with avisynth itself, but couldn't find a solution so far.
zenebona is offline  
post #913 of 1968 Old 02-19-2011, 05:06 PM
Member
 
mark007's Avatar
 
Join Date: Dec 2006
Posts: 196
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
rinorho, this should do the trick for you hopefully regarding your script.

----------------------------------------------------------

SetMTMode(1,0)
ffdshow_source()
SetMTMode(2)

(Framerate >=23 && Framerate <= 30 && Height(last) < 1080) ? Eval("""

super=MSuper(pel=1, hpad=0, vpad=0)
backward_1=MAnalyse(super, chroma=false, isb=true, blksize=16, blksizev=16, searchparam=3, plevel=0, search=3, badrange=(-24))
forward_1=MAnalyse(super, chroma=false, isb=false, blksize=16, blksizev=16, searchparam=3, plevel=0, search=3, badrange=(-24))
backward_2 = MRecalculate(super, chroma=false, backward_1, blksize=8, blksizev=8, searchparam=0, search=3)
forward_2 = MRecalculate(super, chroma=false, forward_1, blksize=8, blksizev=8, searchparam=0, search=3)
MBlockFps(super, backward_2, forward_2, num=FramerateNumerator(last)*2, den=FramerateDenominator(last)*1, mode=0)

distributor()
""") : (Framerate >=23 && Framerate <= 30 && Height(last) >= 1080) ? Eval("""

super = MSuper(pel=2, hpad=0, vpad=0, rfilter=4)
backward_1 = MAnalyse(super, isb=true, blksize=16, searchparam=3, plevel=0, search=3, badrange=(-24))
forward_1 = MAnalyse(super, isb=false, blksize=16, searchparam=3, plevel=0, search=3, badrange=(-24))
backward_2 = MRecalculate(super, backward_1, blksize=8, searchparam=1, search=3)
forward_2 = MRecalculate(super, forward_1, blksize=8, searchparam=1, search=3)
backward_3 = MRecalculate(super, backward_2, blksize=4, searchparam=0, search=3)
forward_3 = MRecalculate(super, forward_2, blksize=4, searchparam=0, search=3)
MFlowFps(super, backward_1, forward_1, num=FrameRateNumerator(last)*2, den=FrameRateDenominator(last), ml=10000)

distributor()
""") : last

Guys isn't it unsafe for some of you to be setting mt mode back to 1 before your line

GetMTMode(false) > 0 ? distributor() : last

----------------------------------------------------------
With mtmode 1 before this line I often get blobs of one frame mixed in with another, I think using mode 2 is needed here.

Regarding multithreaded decoders, I managed to get rid of all of my random bunch of frame drop problem by using ffmpeg-mt multithreaded decoder which seemed to allow the load of decoding / avisynth accross my cpu's better. I was tweaking my scripts with "The Dark Knight" blu-ray today and am getting lots of frame drops here and there but notice i uses the wvc1 codec, and coreavc doesn't support it, and the decoders within ffdshow don't seem to distribute load very wells I'm back to my old frame drop problem because of this. What I have done is to scale back the number of threads aviynth is allowed use from 0 (detected as 8), to 6 which again got rid of frame drops...

So my question here is, while I still search for a multithreaded wvc1 decoder, do you believe a report should be created against mvtools / avisynth in this case, where it mustn't be using the available 8 threads very well, ie whatever core / threads the decoder is using still must be getting sent an even load by avisynth, whereas I believe it shouldn't as the decoder needs a certain percentage of one obviously.

I think avisynth / mvtools must be set in the way it distributes the load and isn't dynamic, like it must send say a work packet to each thread, and because my decoder is eating up a certain percentage of one core, the work sent to them isn't coming back as fast as the others would have but it musn't react to this?

Reducing the number of threads from 8 to 6 to fix my current issue just doesn't seem appropriate, I feel theres an issue with how avisynth is distributing its load out.
mark007 is offline  
post #914 of 1968 Old 02-20-2011, 06:54 AM
Member
 
HolyWu's Avatar
 
Join Date: Nov 2010
Posts: 21
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Thanks for PetitDragon's tips, I can get rid of the subtitle deformation which has annoyed me for a long time. My previous post's comment was wrong. Here is how my script gets improved.

Firstly, this was the original script I modified from SubJunk's.
Code:
super = MSuper(hpad=0, vpad=0, rfilter=4)
backward_vec = MAnalyse(super, blksize=16, search=3, searchparam=3, isb=true, plevel=0)
forward_vec = MAnalyse(super, blksize=16, search=3, searchparam=3, isb=false, plevel=0)
backward_vec = MRecalculate(super, backward_vec, blksize=8, search=3, searchparam=1)
forward_vec = MRecalculate(super, forward_vec, blksize=8, search=3, searchparam=1)
backward_vec = MRecalculate(super, backward_vec, blksize=4, search=3, searchparam=1)
forward_vec = MRecalculate(super, forward_vec, blksize=4, search=3, searchparam=1)
MFlowFps(super, backward_vec, forward_vec, num=FrameRateNumerator()*2, den=FrameRateDenominator(), ml=10000)



Secondly, I changed searchparam of MAnalyse from 3 to 1. Still serious deformation.



Thirdly, I tuned the parameters suggested by PetitDragon. Much better, but not perfect yet.
Code:
super = MSuper(hpad=0, vpad=0)
backward_vec = MAnalyse(super, blksize=16, search=3, searchparam=1, isb=true, plevel=0, pnew=450, dct=5)
forward_vec = MAnalyse(super, blksize=16, search=3, searchparam=1, isb=false, plevel=0, pnew=450, dct=5)
backward_vec = MRecalculate(super, backward_vec, blksize=8, search=3, searchparam=1, pnew=450, dct=5)
forward_vec = MRecalculate(super, forward_vec, blksize=8, search=3, searchparam=1, pnew=450, dct=5)
backward_vec = MRecalculate(super, backward_vec, blksize=4, search=3, searchparam=1, pnew=450, dct=5)
forward_vec = MRecalculate(super, forward_vec, blksize=4, search=3, searchparam=1, pnew=450, dct=5)
MBlockFps(super, backward_vec, forward_vec, num=FrameRateNumerator()*2, den=FrameRateDenominator())



Finally, I changed hpad and vpad of MSuper from 0 to 16.



By the way, I dug MVTools's source code and found two thing. The first is searchparam. Searchparam's minimum value is 1 for all types of search, except NStepSearch(search=1) which is 0. Value less than 1 will be set to 1 internally. That's why I didn't change searchparam to 0 in my script.

The second is badrange. No matter what value you set badrange to, it will not work unless you specify badSAD to a lower value. badSAD's default value 10000 makes badrange no functionality at all. This is already mentioned in the official documentation.
HolyWu is offline  
post #915 of 1968 Old 02-20-2011, 11:47 AM
Senior Member
 
SubJunk's Avatar
 
Join Date: May 2010
Posts: 327
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Yes, changing searchparam from 3 to 1 really helps with text warping. Unfortunately it also makes interpolation much less accurate with real things, as opposed to text.

I do fully recommend using searchparam 1 for animated content, since all you really want the script to do with that is to make panning smooth, and I recommend searchparam 3 for live video.
In fact, PetitDragon's settings are probably all the best for animated content.

Of course, if you watch live video with subtitles, it is best to apply the subtitles after the interpolation, that way there will be no warp.

PetitDragon's settings will, however, do almost no interpolation. They don't try to recreate frames, they only average them, which means it is almost the same as watching at the original 23.976 framerate.
So we have my script which can guess wrong in infrequent situations, and PetitDragon's script which doesn't try to guess.
I showed this in my previous post with an objective test, too.

I'm still waiting for an update to MVTools2 which will allow for greater control over those values which will let me remove the bad guesses from my script without removing the good guesses like PetitDragon's.
Fizick is working on it but it is taking some time

I am considering adding the padding values, though, but I'm still completing tests on that
SubJunk is offline  
post #916 of 1968 Old 02-20-2011, 12:37 PM
Member
 
mark007's Avatar
 
Join Date: Dec 2006
Posts: 196
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Subjunk, I would imagine you'll be adding the dct=5 tweak to your guide Has a fantastic impact on quality for me anyways... Youll probably have to add the new dll to your zip obviously
mark007 is offline  
post #917 of 1968 Old 02-20-2011, 12:54 PM
Senior Member
 
SubJunk's Avatar
 
Join Date: May 2010
Posts: 327
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Quote:
Originally Posted by mark007 View Post

Subjunk, I would imagine you'll be adding the dct=5 tweak to your guide Has a fantastic impact on quality for me anyways... Youll probably have to add the new dll to your zip obviously

Yeah, I think one of the dct options will be added. In my tests I have found that sometimes 5 is better and sometimes 8 is better, but also sometimes default is better, so I need to continue to test different sources to see which is better in more situations
I am leaning more toward dct=8, though, as 5 seems to sometimes cause even more warping than default (I know you will hate that hehe, but I will post test results)
SubJunk is offline  
post #918 of 1968 Old 02-20-2011, 01:43 PM
Senior Member
 
widezu69's Avatar
 
Join Date: Feb 2010
Posts: 319
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Sub are you keeping the pnew values at default?
widezu69 is offline  
post #919 of 1968 Old 02-20-2011, 07:10 PM
Senior Member
 
SubJunk's Avatar
 
Join Date: May 2010
Posts: 327
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Quote:
Originally Posted by widezu69 View Post
Sub are you keeping the pnew values at default?
I'm not sure, I have to test them.
Since PetitDragon made his post of suggestions I have only done one proper test, which was with all his suggestions applied at once.
Now I have to go through and test them individually and in different combinations.
So far I haven't seen anything that can increase the quality substantially, but I have a long way to go before I am finished testing.

Do you think they make a good difference?
SubJunk is offline  
post #920 of 1968 Old 02-20-2011, 10:50 PM
Member
 
Join Date: Feb 2006
Posts: 79
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
It's nice to see the tweaking of "anti-artifact" for the scripts is reactivated again in the thread. It had stuck for a long time you know, especially since the so-called "the best quality" script appeared (oh come on just kidding, Sub. Please don't bite me.).

No doubt suppressing artifacts will hurt smoothness and precision. Arnold told me that's called "Collateral Damage". Users have to find the balance within their own acceptable range.

Quote:
Originally Posted by mark007 View Post
Guys, what vc1 decoder are you guys using. I can watch all of my non vc1 blu-rays now with 0 dropped frame and very good quality but not vc1 as there is no ffmpeg-mt decoder in ffdshow for it.... Are there any multithreaded vc1 decoders?.....
FYI, Concerning contents of VC1 and Mpeg2 (progressive), it seems only frame doubling interpolation is possible (Ex. 24p->48p, 30p->60p). If you use ICL12 compiled ffdshow, try "wmv9" decoder that is fully optimized with the latest Intel instructions.

Quote:
Originally Posted by HolyWu View Post
.....Thirdly, I tuned the parameters suggested by PetitDragon. Much better, but not perfect yet. Finally, I changed hpad and vpad of MSuper from 0 to 16.....
Hey Holy I did suggest setting "hpad" and "vpad" to 16 (see No.2 at http://www.avsforum.com/avs-vb/showt...2#post20012932). Anyway, congrate for solving your problem, finally. (I like Gosick too.)
PetitDragon is offline  
post #921 of 1968 Old 02-20-2011, 10:55 PM
Senior Member
 
SubJunk's Avatar
 
Join Date: May 2010
Posts: 327
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
After testing all 11 values I've narrowed down dct to 0, 5 or 10.
They are all very close to eachother so I will need to keep testing, but for now I need a break so I'll post more after I've done more.

Quote:
Originally Posted by PetitDragon View Post
It's nice to see the tweaking of "anti-artifact" for the scripts is reactivated again in the thread. It had stuck for a long time you know, especially since the so-called "the best quality" script appeared
I certainly never meant to imply that my script is the best possible script, only that it is the best script in this thread and that I'm aware of
SubJunk is offline  
post #922 of 1968 Old 02-21-2011, 04:40 AM
Member
 
mark007's Avatar
 
Join Date: Dec 2006
Posts: 196
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
For me experimenting with dct settings, some of the scenes in movies that I mostly sit and notice big blotches / corruption and think.... hmm are these avisynth scripts every going to be high quality enough for me or other family members to not "notice" them so blatantly....

Well dct=5 is the only one so far that I can say I havn't seen these massively noticible corruption problems with yet. Even simply the 20th Century fox intro when the lights pan accross the face of the 20th Century Fox sign, without dct or with dct=8, the white light seems to pull parts of the sign with it.

with dct=5 its absolutely perfect, amazingly good. So for me anyways dct=5 seems superiour to dct=8 and not setting dct at all, as I say, for all of the scenes where I would usually think, "ewww thats bad". thats my 2c
mark007 is offline  
post #923 of 1968 Old 02-21-2011, 11:01 AM
Senior Member
 
SubJunk's Avatar
 
Join Date: May 2010
Posts: 327
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Yeah I didn't find 8 good, either. Have you tried 10?
SubJunk is offline  
post #924 of 1968 Old 02-21-2011, 11:07 AM
Member
 
mark007's Avatar
 
Join Date: Dec 2006
Posts: 196
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Just tried 10 now, well on those scenes that I know I can reproduce horrible dragging effects, 10 doesn't solve them either. 5 is in another world compared to 8 and 10 in these scenes for me... Im not sure if it should mathematically always be better. I just did a bit of googling on SATD vs SAD and SATD is supposed to be superior so for me anyways 5 is doing a great job
mark007 is offline  
post #925 of 1968 Old 02-21-2011, 11:08 AM
Senior Member
 
SubJunk's Avatar
 
Join Date: May 2010
Posts: 327
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Is that anime or live-action? If it's live-action, which vid?
SubJunk is offline  
post #926 of 1968 Old 02-21-2011, 11:10 AM
Member
 
mark007's Avatar
 
Join Date: Dec 2006
Posts: 196
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
I'm watching Avatar, certain scenes where the navi are on those flying dragon things. And the tricky 20th Century fox intro that really is a good test for me, with the light passing over the sign.

It drags like crazy unless I use dct=5 so 5 is the closest I have ever gotten to what I would think an actual interpolated frame should be in this case.
mark007 is offline  
post #927 of 1968 Old 02-21-2011, 11:30 AM
Senior Member
 
SubJunk's Avatar
 
Join Date: May 2010
Posts: 327
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Cool, I just confirmed that. 0, 5 and 10 are so similar to eachother in terms of interpolation accuracy but I think you are right that 5 is best at keeping things in their right places instead of moving them.
I'm updating my script now.
SubJunk is offline  
post #928 of 1968 Old 02-21-2011, 11:54 AM
Member
 
travolter's Avatar
 
Join Date: May 2009
Posts: 162
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Quote:


Im trying to avoid the ghost effect that appear when you move forward in a movie... (everyone know the effect.. old images and new images overlapping for some secs)

I was doing my tests..

-At moment I notice that its not necessary use buffers back ahead ( so uncheck them). Really they are not needed and only create more ghost effect.

-the amount of setmemory max also creates more or less ghosting.
If you use a low value.. there is less ghost effect.. but your player crashes more often than using 1024.. so Ill leave 1024 as "safe"

-Where do you place Setmemorymax in the script?

Check that you can use setmemorymax in 3 different positions.. and they work different

- What about SetMTMode?
there are 3 instances of SetMTMode in our scripts...

what values are the most safe to avoid the ghost effect?


Im testing for months.. and really I cannt find a properly setting... there are lot of combos of setmemorymax positions and setmtmode values to change...

maybe some of you have some working setting



Problem gone updating software. Dlls and avisynth 2.6 from subjunk pack and ffdshow 3356 are the stable software to go.
travolter is offline  
post #929 of 1968 Old 02-21-2011, 12:40 PM
Senior Member
 
SubJunk's Avatar
 
Join Date: May 2010
Posts: 327
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
I just did some updates to my guide which hopefully make it easier to use, as well as added that dct setting.

I should also point out that it makes no difference where Setmemorymax goes when you convert the file. I'm not sure about running realtime since I haven't tried, but I don't think it would make a difference there either.

I think what you are probably noticing travolter is that your CPU speed varies - which is why people should aim to use scripts that max out at 70-80% CPU to leave room - which causes inconsistent results.
SubJunk is offline  
post #930 of 1968 Old 02-21-2011, 02:12 PM
Senior Member
 
widezu69's Avatar
 
Join Date: Feb 2010
Posts: 319
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Been looking and as far as I can see, when using mblock, the pel value helps a lot we aliasing but I don't seem to see any difference when using mflow. Sub can you help me out here? Could you do some comparisons using your new script with pel=1 and 2? Thanks a lot. I'm currently maxing my cpu in realtime using your newest dct implentation and seeing what I can compromise.
widezu69 is offline  
Reply Home Theater Computers

User Tag List

Thread Tools
Show Printable Version Show Printable Version
Email this Page Email this Page


Forum Jump: 

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
Trackbacks are Off
Pingbacks are Off
Refbacks are Off