or Connect
AVS › AVS Forum › Video Components › Home Theater Computers › Avisynth Script for doubling video frame rates
New Posts  All Forums:Forum Nav:

Avisynth Script for doubling video frame rates - Page 12

post #331 of 1968
Hi all.. I have been following this thread with the utmost interest and shall I say confusion.

I have been running the following setup with limited results and in my quest of getting the perfect image and am still struggling with motion judders.

Plasma : professional Panasonic (max res 1366*768) screen that can be fed pretty much anything via VGA. I am currently running it with 1920*1080 at 24hz. TH58ph10uka

HTPC : GIGABYTE MOTHERBOARD GA-P43-ES3G INTEL P43, SAPPHIRE VAPOR-X HD 4870 1G, INTEL CPU CORE 2 DUO E8400 3.00GHZ

Software : Powerdvd with reclock, OS : Vista 64 sp2

Material : BR ripped in ISO

Issue: the picture is cristal clear in slow moving but as soon as I have panning or fast action judders appears. I have tried everyting from going native 1366*768 at 60 hz to 1920*1080 at 24fps reclocked at 24 hz with no real improvement.

Is this thread an answer.. pls be patient with my ignorance.
post #332 of 1968
James57, does judder appear only on 720, 1080 movies?
Your CPU might be too slow and result in frame dropping.
Also, make sure you are not using "mode=1" (mode=2 is preferred).
post #333 of 1968
Hi Domas4, I have not yet tried this method. The judder I am experiencing is on all br iso material. I am currently running my screen at 1366*768 60 Hz (24 or multiple did not really show any improvement).

Can I use avisynth with my current hardware, iso-br-powerdvd and is it worth it ..

Thks
post #334 of 1968
br iso powerdvd. Is that BluRay? I don't really understand your question.

I mean, I see you have 3.0 E8400 CPU. Mine is E8500 overclocked to 3.6
and I can play no more than 720p movies with these scripts...
post #335 of 1968
yes my htpc is almost dedicated to playing bluray ripped to the harddrive in a iso format. I am playing them via powerdvd. My screen's max resolution is 1366*768 so I don't need to go up to 1920*1080.
post #336 of 1968
Oh man. BluRay rip. How much does it weight? ~26-40GB?
E8400 is too slow for avisynth to do the job in real-time.
With E8400 and these scripts best you can do is watch 720p .mkv movies.

Your screen resolution doesn't matter. It's the format that is
being played.
post #337 of 1968
i have this running on my amd phenom QUAD 2.3 (fairly old) after following widezu69 #325 guide i got everything going. (thanks for that BTW)

i was wondering if anyone with a i7 had perfect results. in my case i get some hiccups here and there but id say with a lil more juice it would be perfect/

one tip is that make sure you check your windows power settings. remember the fan settings/advanced. if set to "passive" it will down-clock your CPU to control the temp. you obviously dont want this to happen.

this basically breathes life into my crappy 32" sony TV
now to try it on the panny S1

oh can someone clear up how to resize? i tried settings but it lags out my computer.


PS. Great board ,great community .. thank you all who are friendly and take the time to explain things !! you guys rock.
post #338 of 1968
So I have downloaded the tools and used the scripts provided but I keep getting this error:

Script error:there is no function named 'MVAnalyse'(ffdshow_filter_avisynth_script, line 11)

Here is the code I am currently using:

LoadPlugin("C:\\Program Files (x86)\\AviSynth 2.5\\plugins\\Motion_12Dec05.dll")
ffdshow_source()
fps=50 #last.framerate()*4
last.CombineFPS(fps, last. MotionFPS(fps, warpfast, move), last.MotionFPS(fps, source = next, warpfast, move))
SetMtmode(2,2)
global idx1 = 10
global source=ffdshow_source()
source=changefps(source,source,true)
# assume progressive PAL 25 fps or NTSC Film 23.976 source
idx1 = idx1 + 1
backward_vec = source.MVAnalyse(blksize=16, isb = true, chroma=false, pel=1, searchparam=1, idx=idx1)
# we use explicit idx for more fast processing
forward_vec = source.MVAnalyse(blksize=16, isb = false, chroma=false, pel=1, searchparam=1, idx=idx1)
source.MVFlowFps(backward_vec, forward_vec, num=3*FramerateNumerator(source), den=FramerateDenominator(source), mask=0, idx=idx1)
distributor()


When I start the video up theanimatrix.m2ts it plays the video but it has a real loud choppy staticy sound instead of normal sound. I am not sure what's causing this and I get that script error at the top.

I am currently running a Windows 7 Ultimate 64bit, AMD Turion X2, 8gb ram, 320gb hard drive, ATI Radeon HD 3200 video, and ATI High Definition Audio Device, IDT High Definition Audio Codec. The system is an HP Pavilion DV7 1240-us.

I just want to get the .m2ts and .mkv files to play properly. I have gotten the .m2ts to play fine and then all of a sudden this starts.

I have the 64bit versions of the applications installed as well for mvtools, ffdshow, mpc-hc, and whatever else it was I needed. Thanks I hope I can troubleshoot this issue.
post #339 of 1968
You are using a outdated script from the first post. Use this guide:

http://www.avsforum.com/avs-vb/showt...6#post18612386

Word of advice start from scratch to minimise chances of failure.
post #340 of 1968
For those of you still following this thread and have high power computers ie quad all the way up to i7, here is a good script optimised to use all the power you have maintaining the smoothest motion, change num= to your monitor refresh rate. No reclock needed. I recommend using coreavc if you have an nvidia card.

SetMTMode(5,8)
ffdShow_source()
SetMTMode(2)
super=MSuper(pel=2, hpad=0, vpad=0)
backward_1=MAnalyse(super, chroma=false, isb=true, blksize=16, blksizev=16, searchparam=2, plevel=0, search=3, badrange=(-24))
forward_1=MAnalyse(super, chroma=false, isb=false, blksize=16, blksizev=16, searchparam=2, plevel=0, search=3, badrange=(-24))
backward_2 = MRecalculate(super, chroma=false, backward_1, blksize=8, blksizev=8, searchparam=1, search=3)
forward_2 = MRecalculate(super, chroma=false, forward_1, blksize=8, blksizev=8, searchparam=1, search=3)
backward_3 = MRecalculate(super, chroma=false, backward_2, blksize=4, blksizev=4, searchparam=0, search=3)
forward_3 = MRecalculate(super, chroma=false, forward_2, blksize=4, blksizev=4, searchparam=0, search=3)
MBlockFps(super, backward_3, forward_3, num=60, den=1, mode=0)
SetMTMode(1)
GetMTMode(false) > 0 ? distributor() : last
post #341 of 1968
Also, you can just change the first line to:
SetMTMode(5,0)
Since that means it will automatically detect the amount of cores (so there is no editing needed for different CPUs)

I've also taken the script widezu used and made a guide on how to encode videos like that using MeGUI, which means that if your computer isn't powerful enough to do the best quality conversion in real-time you can still enjoy it.
It is also great for people like me who use media servers like PS3 Media Server to stream content to our TVs.

Check out how to convert videos to 60fps if you're interested.
post #342 of 1968
Quote:
Originally Posted by widezu69 View Post

You are using a outdated script from the first post. Use this guide:

Word of advice start from scratch to minimise chances of failure.

Thanks however I am still having issues. I followed your steps which are very nice by the way and this is the script I am using the same one you posted with some tweaking around:

SetMemoryMax(1280)
SetMTMode(5,0)
ffdShow_source()
SetMTMode(2)
super=MSuper(pel=2, 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=16, blksizev=16, searchparam=2, search=3)
forward_2 = MRecalculate(super, chroma=false, forward_1, blksize=16, blksizev=16, searchparam=2, search=3)
backward_3 = MRecalculate(super, chroma=false, backward_2, blksize=8, blksizev=8, searchparam=1, search=3)
forward_3 = MRecalculate(super, chroma=false, forward_2, blksize=8, blksizev=8, searchparam=1, search=3)
MBlockFps(super, backward_3, forward_3, num=59, den=1, mode=0)
SetMTMode(1)
GetMTMode(false) > 0 ? distributor() : last


What happens is this, it plays my .m2ts video the animatrix/ now but it's playing the audio normally and the video itself is playing really slow like it's not catching up to the audio. My monitors refresh rate is 59/60. ATI force 60. My buffer back ahead is 0/24. So I am still not sure how to fix this.

I get the same with a .mkv video file as well.

However I tested a .MP4 video format and it works great! And seems to be better quality as well. So what is it with this .m2ts/.mkv files?

Also the .m2ts file video stream is AVC and the Audio Stream is AC-3.
post #343 of 1968
i recall way back when trimensionDNM was introduced i rushed out and got a Dual core intel processor and saw most of my movies. not im on the same boat but with high def Mkvs. i hope the developers dont give up!!!
i tried the last scripts but my cpu is around 80% load and i get random crashes. what is very weird is that i have to wait around 1 minute for the filters to get going. its like its trying to catch up


thank you again for the info
!!!
post #344 of 1968
Quote:
Originally Posted by jca2012 View Post

What happens is this, it plays my .m2ts video the animatrix/ now but it's playing the audio normally and the video itself is playing really slow like it's not catching up to the audio. My monitors refresh rate is 59/60. ATI force 60. My buffer back ahead is 0/24. So I am still not sure how to fix this.

I get the same with a .mkv video file as well.

However I tested a .MP4 video format and it works great! And seems to be better quality as well. So what is it with this .m2ts/.mkv files?

Also the .m2ts file video stream is AVC and the Audio Stream is AC-3.

i think you should mention your pc spec and resolutions you are playing first. please keep in mind even with quad cores it's still a very hard work to play full hd (1080p) content while setting "pel=2".
post #345 of 1968
I see that the big problem of play full hds with these scripts (lose frames.. high cpu usage) is the VC-1 codec (yes.. all these wmv porn videos

H.264 performs better.. and its cause there are decent decoders.. like coreavc, Diavc or ffmpeg-mt.

There is any VC-1 "software" decoder that performs better than M$ or libavcodec ones?

or maybe some tweaked/hacked decoders to improve decoding speed?
post #346 of 1968
CoreAVC is the fastest software and hardware (if you have nvidia) decoder around. There is a reason it costs money but its worth it. Even if you have an ATi card, in software mode it is still faster than the competition.
post #347 of 1968
Quote:
Originally Posted by widezu69 View Post

CoreAVC is the fastest software and hardware (if you have nvidia) decoder around. There is a reason it costs money but its worth it. Even if you have an ATi card, in software mode it is still faster than the competition.

Coreavc decodes h.264.. but it does not decode vc-1!!!

exist something similar to decode VC-1 by software?

Probably everyone here uses coreavc and notice that h.264 with the framedoubling scripts works amazing.. but fails with the 1080 wmv(vc-1) cause the crappy M$ decoder
post #348 of 1968
Travolter, for the instances when it won't work in realtime you can encode videos using the script instead. There's a guide I wrote here
post #349 of 1968
Quote:
Originally Posted by travolter View Post

Coreavc decodes h.264.. but it does not decode vc-1!!!

exist something similar to decode VC-1 by software?

Probably everyone here uses coreavc and notice that h.264 with the framedoubling scripts works amazing.. but fails with the 1080 wmv(vc-1) cause the crappy M$ decoder

Oops could have sworn it did. My mistake.
post #350 of 1968
Quote:
Originally Posted by travolter View Post

I see that the big problem of play full hds with these scripts (lose frames.. high cpu usage) is the VC-1 codec (yes.. all these wmv porn videos

H.264 performs better.. and its cause there are decent decoders.. like coreavc, Diavc or ffmpeg-mt.

There is any VC-1 "software" decoder that performs better than M$ or libavcodec ones?

or maybe some tweaked/hacked decoders to improve decoding speed?

I doubt the problem is the VC-1 codec; probably your problem is not having CPU horse power, hehehe. But maybe you should try PowerDVD 9 VC-1 decoder.
post #351 of 1968
I think that instead a new decoder I need some tweak to enable fast seeking in wmv.

really I dont have 100% cpu usage.. my problem is that the seek of wmv(VC-1) is very slow incomparison with other formats.. so you have the impression that vc-1 decoder is really poor.

(probably its something related to the wmv format.. keyframes and all that stuff)

MPC have an option in the tweak settings named "WM asf reader" that enables fast seeking...

There is a directshow filter to do that?
post #352 of 1968
Quote:
Originally Posted by SubJunk View Post

Also, you can just change the first line to:
SetMTMode(5,0)
Since that means it will automatically detect the amount of cores (so there is no editing needed for different CPUs)

I've also taken the script widezu used and made a guide on how to encode videos like that using MeGUI, which means that if your computer isn't powerful enough to do the best quality conversion in real-time you can still enjoy it.
It is also great for people like me who use media servers like PS3 Media Server to stream content to our TVs.

Check out how to convert videos to 60fps if you're interested.


is there any difference in picture quality if you do it this way compared to on the fly (realtime)?
post #353 of 1968
Quote:
Originally Posted by widezu69 View Post

For those of you still following this thread and have high power computers ie quad all the way up to i7, here is a good script optimised to use all the power you have maintaining the smoothest motion, change num= to your monitor refresh rate. No reclock needed. I recommend using coreavc if you have an nvidia card.

SetMTMode(5,8)
ffdShow_source()
SetMTMode(2)
super=MSuper(pel=2, hpad=0, vpad=0)
backward_1=MAnalyse(super, chroma=false, isb=true, blksize=16, blksizev=16, searchparam=2, plevel=0, search=3, badrange=(-24))
forward_1=MAnalyse(super, chroma=false, isb=false, blksize=16, blksizev=16, searchparam=2, plevel=0, search=3, badrange=(-24))
backward_2 = MRecalculate(super, chroma=false, backward_1, blksize=8, blksizev=8, searchparam=1, search=3)
forward_2 = MRecalculate(super, chroma=false, forward_1, blksize=8, blksizev=8, searchparam=1, search=3)
backward_3 = MRecalculate(super, chroma=false, backward_2, blksize=4, blksizev=4, searchparam=0, search=3)
forward_3 = MRecalculate(super, chroma=false, forward_2, blksize=4, blksizev=4, searchparam=0, search=3)
MBlockFps(super, backward_2, forward_2, num=60, den=1, mode=0)
SetMTMode(1)
GetMTMode(false) > 0 ? distributor() : last

thanks man the scripts you and domas provide are very nice. i really do appreciate it.
post #354 of 1968
Quote:
Originally Posted by blazed View Post

is there any difference in picture quality if you do it this way compared to on the fly (realtime)?

No, it should be the same picture quality, however the motion should be smoother when using a converted video.

P.S. I'll be writing a similar guide but this time for x64 (20%+ faster encoding speed than before) soon, hopefully in the next few days.
post #355 of 1968
a new yet another plugin for multithread processing has been introduced.

http://forum.doom9.org/showthread.php?t=154886

they say it maybe faster than setmtmode. what do you guys think about it applied to the scripts (realtime or re-encode). following is my script of 1080/24p anime:

"add ffdshow video source" checked
bufferback 10 ahead 20
-------------------------------------
SetMemoryMax(1536)
cache=30
queue=5
warmingup=1
RemoveGrain(mode=1).ThreadRequest(cache,queue,warmingup)
# FFT3DGPU(sigma=1.5, bt=4, mode=2, degrid=0).ThreadRequest(cache,queue,warmingup)
GradFun2DB().ThreadRequest(cache,queue,warmingup)
super=MSuper(hpad=16, vpad=8, pel=1, levels=4, rfilter=3, isse=true).ThreadRequest(cache,queue,warmingup)
backward_1=MAnalyse(super, blksize=32, blksizev=16, levels=4, search=3, searchparam=1, isb=true, chroma=true, plevel=2, badrange=(-24)).ThreadRequest(cache,queue,warmingup)
forward_1=MAnalyse(super, blksize=32, blksizev=16, levels=4, search=3, searchparam=1, isb=false, chroma=true, plevel=2, badrange=(-24)).ThreadRequest(cache,queue,warmingup)
backward_2=MRecalculate(super, backward_1, blksize=16, blksizev=8, search=3, searchparam=0, chroma=true).ThreadRequest(cache,queue,warmingup)
forward_2=MRecalculate(super, forward_1, blksize=16, blksizev=8, search=3, searchparam=0, chroma=true).ThreadRequest(cache,queue,warmingup)
MBlockFps(super, backward_2, forward_2, num=50, den=1, mode=0)
-------------------------------------

above, for example.

p.s.: re-encoding to 50/60p is a brilliant idea. l hope all those rippers on the net do it for me. sadly it's mid-june and still no news for splash pro.
post #356 of 1968
Great that new plugins for multi-threading appear.
However, this message by author does not give much confidence:

"(This plugin was made impulsively, and it isn't being checked so much.
Therefore when weird params are established, this may crash.
I'm wishing that more wonderful plugin appear using this program as a hint.)"


Still, plugin seems to be working fine, but I stick to SetMT

P.S. Getting tired of waiting for Splash Player Pro. They said they said the delay
is because of licensing. They also said it should be released this week.
post #357 of 1968
I tried with ThreadRequest.. but I get better performance with SetMT
(maybe I dont have correct settings of cache,queue,warmingup)

About splash.. yes.. Im waiting it too.. but something says me that our current players armed with scripts will perform better.

We are improving our scripts each month and everyone add other filter plugins for their needings and tastes..

Splash is closed in that way.. so no way to change script to improve smoothness or have less artifacts.. and also I dont know if it will support all video formats available today.

I hope be totally wrong a see in splash the perfect player with framedoubling
post #358 of 1968
Yeah, if the player does good motion 'smoothing', better than our scripts, the only
drawback will be that it cannot use different decoders/filters to customize
video any way we want. We'll see.
post #359 of 1968
Quote:
Originally Posted by PetitDragon View Post

i think you should mention your pc spec and resolutions you are playing first. please keep in mind even with quad cores it's still a very hard work to play full hd (1080p) content while setting "pel=2".

Here are my computer stats:

I am currently running a Windows 7 Ultimate 64bit, AMD Turion X2, 8gb ram, 320gb hard drive, ATI Radeon HD 3200 video, and ATI High Definition Audio Device, IDT High Definition Audio Codec. The system is an HP Pavilion DV7 1240-us.
post #360 of 1968
Ooops my previous script had a fatal mistake in it which meant power as going to waste here is a new one:

SetMTMode(5,8)
ffdShow_source()
SetMTMode(2)
super=MSuper(pel=2, hpad=0, vpad=0)
backward_1=MAnalyse(super, chroma=false, isb=true, blksize=16, blksizev=16, searchparam=2, plevel=0, search=3, badrange=(-24))
forward_1=MAnalyse(super, chroma=false, isb=false, blksize=16, blksizev=16, searchparam=2, plevel=0, search=3, badrange=(-24))
backward_2 = MRecalculate(super, chroma=false, backward_1, blksize=8, blksizev=8, searchparam=1, search=3)
forward_2 = MRecalculate(super, chroma=false, forward_1, blksize=8, blksizev=8, searchparam=1, search=3)
backward_3 = MRecalculate(super, chroma=false, backward_2, blksize=4, blksizev=4, searchparam=0, search=3)
forward_3 = MRecalculate(super, chroma=false, forward_2, blksize=4, blksizev=4, searchparam=0, search=3)
MBlockFps(super, backward_3, forward_3, num=60, den=1, mode=0)
SetMTMode(1)
GetMTMode(false) > 0 ? distributor() : last

Original post also edited.
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Home Theater Computers
AVS › AVS Forum › Video Components › Home Theater Computers › Avisynth Script for doubling video frame rates