Sections:
Introduction:
Many modern TVs now include an extra frames feature, usually either 120Hz or 240Hz. This just means they take the source video, which is usually between 24-30FPS, and add new, interpolated frames between the original frames that make the motion look much more smooth.
High framerate (HFR at 48fps) was used in The Hobbit and will be used in upcoming films like the Avatar sequels, so why not watch all your movies at higher framerates?
A lot of people don’t realize this, but 99% of TVs made before this feature was introduced are actually capable of displaying 50FPS and 60FPS, and of course most LCD monitors display 60FPS as well.
This tutorial will allow you to convert videos of any framerate to higher framerates; 25FPS becomes 50FPS and 24/30FPS becomes 60FPS by default, or you can specify whichever framerate you want.
This script offers greater quality than any televisions I have seen.
I’m sure many people will want to see how well this script works, so here’s a comparison:
Original File
Converted File
Note: This can now be done in realtime using Universal Media Server!
Purpose:
This post provides instructions on how to easily convert any video to 60FPS, which allows you to take advantage of this feature of modern TVs on your computer monitor or TV without actually buying anything.
Step 1:
The files needed for this step are found in this zip folder (~3MB).
Run and install the file AviSynth.exe.
It is an early version of AviSynth 2.6 that is more stable and faster for multithreading than 2.5 releases.
Download and install MeGUI, run it, let it update all the things it wants to and import all of the presets.
Optional Tip: If you want MeGUI to update to the very latest stuff (at your own risk) you can push ctrl+s, go to the Extra Configuration tab, and in the Auto Update section select “Use development update server”
Close MeGUI and extract the files in the tools folder from our zip file into your MeGUI tools folder, which for most people will be either C:\Program Files (x86)\MeGUI\tools\ or C:\Program Files\MeGUI\tools\.
Step 2:
Download and install MKVToolnix.
When that is installed, run MKVMerge (Start Menu -> All Programs -> MKVToolnix -> mkvmerge GUI).
You will also need codecs installed. If you don’t already have them I recommend K-Lite Mega Codec Pack. If you install K-Lite, make sure to select “Profile 9: Lots of Stuff” during installation.
Step 3:
Start MeGUI again. You should be left with a window that looks similar to this:
Step 4:
Push ctrl+r, or go to Tools -> AVS Script Creator.
Now you should see something like this:
Step 5:
Click the Config button next to Avisynth profile.
It should look like this:
Step 6:
Click the New button down the bottom and type 60FPS in the name box, so it should look like this:
Step 7:
Now for the script that will do the actual 60FPS conversion.
Just copy and paste the following code into the text input area.
Cores=4
SetMemoryMax(512)
SetMTMode(3,Cores)
PluginPath = "C:\Program Files (x86)\MeGUI\tools\avisynth_plugin\"
LoadPlugin(PluginPath+"svpflow1.dll")
LoadPlugin(PluginPath+"svpflow2.dll")
Import(PluginPath+"InterFrame2.avsi")
<input>.ConvertToYV12()
SetMTMode(2)
<deinterlace>
<crop>
<denoise>
<resize>
InterFrame(Cores=Cores)
Important note #1: Make sure the path on the third line is correct.
For example, if you are running 32-bit Windows, you will need to modify the path to “Program Files” instead.
Important note #2: You should change the number “4” in the script (on line 1) to your number of CPU cores. If you don’t know how many cores your CPU has just Google your CPU and you should be able to find the specs somewhere, or 4 should be fine anyway.
Important note #3: If you have a video card, you can improve quality by adding “GPU=true” to the script. However, it may make encoding time slower, so take that into account.
So InterFrame(Cores=Cores) would turn into InterFrame(Cores=Cores, GPU=true)
If you do this, you may also need to go into your MeGUI tools folder (usually C:\Program Files (x86)\MeGUI\tools\x264) and rename the file opencl.dll to opencl.dll.bak. This will let MeGUI use the version of opencl.dll that your video card drivers have installed, instead of the generic one from MeGUI.
Important note #4: This script always outputs either 50FPS or 59.94FPS (60FPS) for compatibility reasons. If you want to always double the framerate instead, so that for example 23.976FPS turns into 47.952FPS (48FPS), you can use the “FrameDouble” parameter.
So InterFrame(Cores=Cores) would turn into InterFrame(Cores=Cores, FrameDouble=true)
So now your window should look similar to this (with different text):
Step 8:
Click the Extra Setup tab and make sure “Prefer DSS2 over DirectShowSource” is checked.
Optional tip #1: You might also want to choose your preferred resizer. For aspect-ratio changes (like from 720×576 to 720×480) a neutral filter like Spline36 will be nice. For actual resizing (like from 1920×1080 to 1280×720) a sharp filter like Spline64 will be best. I usually just leave it on Spline36. Make sure to untick the checkbox on the option after you change the default resizer, otherwise it will always be used by default which is often unnecessary.
Optional tip #2: I recommend changing the “MOD value used for resizing” to mod4. This gives the best balance between compatibility (a lot of devices like PS3 don’t have good mod2 support) and aspect ratio accuracy (the higher the MOD value, the more likely the aspect ratio is to be skewed more heavily).
Now it should look something like this:
Then just click the Update button then the OK button
Step 9:
Now we’re back to the AviSynth script creator window and now that we have our 60FPS AviSynth template made and selected, it’s time to choose which video we want. Just click the … button next to Video Input up the top of the window and find your video, then click Open.
A window will pop up with buttons, click the option on the right, usually either “DirectShowSource” or “AviSource”.
A window will pop up to show you the video, you can just close that.
Now you should see something like this:
Step 10:
Click the Save button. The video preview window might pop up again, you can close it again.
Step 11:
Now is the time when you need to choose the quality of the video and audio.
If you don’t know what to do here, something quick and easy is to just use CRF, which means you let the codec decide on the bitrates itself. So you can click the “Config” button next to the “Encoder settings” dropdown when you have a x264 option selected, then just enter a number between 16-20 in the “Quality” input box. 16 means your video will be almost exactly the same quality as the source, while 20 will look good too while taking up less space. Personally I use 16 for everything because why not? 🙂
So when you have your quality, click Queue in the Video encoding section.
Step 12:
Now your video is ready for conversion.
Now just go to the Queue tab and click Start down the bottom, then wait for it to finish.
Step 13:
The final step is to add your audio and/or subtitles from the original file to the converted file. This process uses muxing, not conversion, so there is no quality loss.
For this we will use the program we installed earlier, MKVMerge.
So run that and drag the converted file into that program, then do the same with the original file. If you can’t drag them on, you can use the add button instead.
Now you have several items in the Tracks, chapters and tags section. You just need to untick the ones you don’t want. Usually you will want to leave them all selected except for the original video track, as I’ve done in the following example:
Finally, set the Output filename down the bottom of the window and click Start muxing.
When that is done, you have your final video!
Final Thoughts:
This might seem like a long process, but actually it is only long once. Since we have now made templates, the process for the videos from now on will be much faster; instead of entering the script each time, now you can just make sure your 60FPS AviSynth script is selected.
This file can now be played just like any other video. I personally watch videos on my TV which is linked up to my computer using the awesome, free program called Universal Media Server, and that handles these 60FPS videos perfectly with no configuration.
Any comments are appreciated. If you can think of an improvement to the script, or to the process, or if you just found it useful and want to say thanks, please do leave a comment. I would love to know that it’s being used.
If you want to donate to help me with server costs and time spent keeping this article updated, you can do so here with my thanks 🙂
FAQ:
- How can I fix random crashing of vfw4x264.exe?
This probably means you are encoding a file using an input mode other than DSS2, which can happen if the clip is .m2ts or .dga (blu-ray) or another uncommon format.
You can fix it by changing the 2 in the second line of the script to either 3, 4, 5 or just removing that line (try them in that order, since the options get progressively slower) - The option “Prefer DSS2 over DirectShowSource” is disabled. or
I get an error like “can’t load avss.dll”.
This means your computer is missing Haali Media Splitter. You can download it here or as part of a K-Lite Mega Codec Pack and the error should go away after you install it. If you install K-Lite, make sure to select “Profile 9: Lots of Stuff” during installation. - The file stops encoding after 99%.
This usually indicates a codec configuration issue. Try installing/reinstalling K-Lite Mega Codec Pack, and make sure to let it select its preferred defaults (not “quick upgrade”) - Can I customize the output framerate to make it 48FPS, 75FPS, 120FPS, or anything else?
Yes, you can choose any framerate you want. It is best to choose a framerate that is divisible in some way with the original video, but even that is your choice. You just need to add the options “NewNum” and “NewDen”, like this:
InterFrame(Cores=Cores, NewNum=48000, NewDen=1001)
NewNum stands for “New Numerator” and NewDen stands for “New Denominator”. In general, with NTSC material the NewDen should be 1001 and the NewNum should be 1000x your desired framerate (so for 48FPS you want 48000 and 1001) while for PAL content you might just want something like NewNum=75,NewDen=1 to output 75FPS content. - The output seems choppy, can I make it smoother?
Yes, by default we output a video that sacrifices a little smoothness in order to reduce errors, but different people’s eyes pick up on different things so it can all be a matter of taste. You can try the Smooth tuning, like this:
InterFrame(Cores=Cores, Tuning="Smooth")
Also, using GPU mode produces more accurate results and therefore should appear smoother, though it can be slightly slower overall. You can try it like this:
InterFrame(Cores=Cores, GPU=true)
Or try both options at once like this:
InterFrame(Cores=Cores, Tuning="Smooth", GPU=true)
- Why isn’t the GPU being used much in GPU mode?
Only some things are done with the GPU in GPU mode, it’s still mostly done by CPU but helped by GPU. - Why is the video still the original framerate after running it through MKVMerge?
You probably selected the wrong tracks in MKVMerge so you’re getting the original video track instead of the new one; make sure you untick the original video stream before muxing. - Why does MeGUI give an error “SVSmoothFPS: unable to load library given in ‘compose’ […svpflow2.dll]
Try re-installing or updating your video card drivers, and if that doesn’t work then maybe your video card doesn’t support OpenCL so remove GPU=true from your script. - Why am I getting the error “SVSmoothFps: unable to load library given in ‘compose'” when I try to run the encoding process, but not when I preview?
Go into your MeGUI tools folder (usually C:\Program Files (x86)\MeGUI\tools\x264) and rename the file opencl.dll to opencl.dll.bak. This will let MeGUI use the version of opencl.dll that your video card drivers have installed, instead of the generic one from MeGUI. - Why am I getting the error “Error message for your reference: Can not read the video stream”?
MeGUI can’t read from folders or files with certain characters, so try moving the video to a different folder and/or renaming the file.
Thanks:
Widezu69 for providing the original AviSynth script that I used as a base.
Fizick for MVTools, the library that does all the work, and SVP for the modifications to MVTools that make it even better for our purposes.
Everyone on various forums for their feedback, this is really a community effort.
Changelog:
21/05/2015:
- Updated InterFrame to 2.8.2, which improves speed
16/03/2015:
- Corrected and improved the instructions and FAQ
05/03/2015:
- Updated InterFrame to 2.8.0, which improves speed and lowers memory usage
- Updated conversion script
24/02/2015:
- Updated the instructions and FAQ
27/09/2014:
- Updated InterFrame to 2.6.0
- Added a tip about using framedoubling mode
- Updated most images to reflect the minor changes to MeGUI
- Minor improvements to instructions
22/07/2014:
- Added more items to the FAQ
10/07/2014:
- Added more items to the FAQ
- Shortened the changelog to only the latest 3 changes by default
20/05/2014:
- Updated instructions
- Added more tips
- Added to and updated the FAQ
- Updated the link to MKVToolnix to always point to the latest version
January 31, 2013 at 5:43 am
It won’t let me open any videos…it’s actually about as useful as my VHS camcorder is now that my capture card doesn’t work.
February 6, 2013 at 11:08 am
Thank you for your article! I’ve read it and done some work… So I’ve got more simple way to encode double-fps video… with Avidemux and Avisynth Proxy…
AVS script is like in article, but FFVideoSource function is needed to open video file, then run it from Avisynth Proxy, simple connection with Avidemux and ChangeFPS filter – that is what you need 🙂
February 6, 2013 at 11:36 am
@Explosive: ChangeFPS will only duplicate frames, this guide is about creating frames between the real ones
February 11, 2013 at 4:44 am
Surely this is pointless if there aren’t actually any extra “in between” frames in the video?
February 11, 2013 at 8:38 am
@J Smith: See the sample video for an idea of the accuracy
February 14, 2013 at 1:19 pm
So, I finally decided to give your tutorial a try and I’m running into a few issues:
1.) GPU encoding isn’t working. When using this line: InterFrame(Cores=4, GPU=true). I get the error message of SVSmoothFps: Unable to init FlowLib [Code 0x10000] (after hitting save in AviSynth script creator inside MeGUI).
2.)Also, for some odd reason the video comes out upside down and I have 0 clue as to why it’s doing this (Some newer code I need for the script..? Perhaps certain commands have changed inside the newest build of MeGUI perhaps and I don’t have them all adjusted properly..?).
I’m using the latest versions of the programs (MeGUI v2287, Interframe v2.40, AviSynth v2.6, etc.) that it says to use in the guide (which I also noticed some things that are part of the interface are different inside MeGUI as compared to the pictures in your guide). I’ve also made sure to setup the AviSynth script exactly as you’ve instructed to (it works without the GPU line, but with I get an error message) as well.
What can I do to fix this? Your help would be much appreciated. Thanks for the guide! I’m highly interested in learning how to properly convert videos to a higher framerate. 🙂
February 15, 2013 at 12:24 am
@kuroukage: Thanks for posting the comment here.
1) This usually means one of two things; either you’re using a relatively new video card which may not be supported yet, or you’re using a driver version that breaks InterFrame support. Which video card do you have and which driver version?
2) Must be a codec setting/conflict. You can re-flip it by either rotating or flipping in AviSynth as a workaround. Doing a fresh K-Lite install will usually fix this type of thing but I know you don’t want to use a codec pack.
I know about the MeGUI screenshots being outdated but I don’t think they’re outdated enough to be misleading, if MeGUI ever do major changes I’ll update them. Cheers!
February 15, 2013 at 1:06 am
@SubJunk
1.) AMD Radeon 6970. Catalyst v13.1 (latest) for the video card drivers.
2.) Well, I typically use LAV filters + madVR for the decoding with MPC-HC. I had to install Haali Media Splitter and CoreAVC for AviSynth to work properly under UMS. I also have FFDShow installed as well (which I mainly use just for audio upscaling). So do you think it’s because LAV and Haali are conflicting in some way? I used to not have a problem using codec packs until I found them becoming more bloated and when I tried K-Lite I didn’t care much for it. I used to stick with Shark’s until I was having problems with it. I find it easier to just install what I want manually and not have to worry about a bunch of extra codecs/bloat I don’t need. Now it’s just a matter of figuring out what is conflicting with what and that I’m unsure of. Everything seems to be running just fine except for when I tried the encoding with MeGUI. Do you think using a codec pack is the only way to fix it?
February 15, 2013 at 3:42 am
Hello
it is the same script into xvid4psp5,interframe 2 ?
it run perfectly.
i used svp for create the script to.
sorry for my english
best regards
February 15, 2013 at 5:35 pm
So, I figured it out. The problem was CoreAVC. Once I defaulted back to FFDShow for the video decoder for x264 the video comes out fine. It was that codec that was causing the problem all along. 🙂 Another question though..how do I set this up in UMS to do 60FPS on the fly with AviSynth? I’m still confused about that. Thanks for your help/suggestions.
February 15, 2013 at 6:39 pm
@kuroukage: Glad you found the fix. To enable it in UMS just tick the “Enable True Motion” box in either/both of the AviSynth engine settings (Transcoding Settings tab)
February 15, 2013 at 9:25 pm
@SubJunk
Awesome, thanks for your help/suggestions. 🙂
February 16, 2013 at 11:06 pm
“Then extract the tools folder over the top of your MeGUI tools folder, which for most people will be C:\Program Files\MeGUI\tools\.”
Do you mean overwrite the MeGUI tool folder? I’m not sure what you mean by “over the top”
February 16, 2013 at 11:24 pm
@steve: Yes, overwrite 🙂
February 17, 2013 at 12:10 am
@SubJunk: Thanks for quick reply! I have one more question: I will be encoding mostly .tp/.ts files that come interlaced, and you recommended NNEDI3+ABS for deinterlacing. Can you tell me how I can use this? Thanks again!
February 17, 2013 at 9:36 am
@steve: My current recommendation for deinterlacing is QTGMC, the following page has the download and instructions 🙂 http://forum.doom9.org/showthread.php?t=156028
February 17, 2013 at 7:15 pm
@SubJunk: Thanks, I’ll follow the instructions via link you provided.
February 26, 2013 at 8:25 am
Hi Subjunk, thank you for your wonderful tutorial, i have been using it the last few days and testing on various types of games. Unfortunately i’m still not 100% happy with the final output, for 2 reasons. Firstly, the interpolated frames are not clean (i.e are slightly transparent instead of being clean, and there is also ghosting (where two of the frames are displayed instead of one). I’m trying to find a solution for this, as i dont mind the laborious process of converting 30fps video just as long as it looks like 60 at the end of the day, and not some kind of half-way approach.
Kind Regards, and thanks again for your hard work in keeping this place relevant and insightful.
D
February 26, 2013 at 9:16 am
@Dario: It’s certainly not perfect but it gets better all the time 🙂 For your first point, I’m not sure what you mean by transparent, can you describe it differently? For the second point, InterFrame blends two frames together when it determines that the two frames are too dissimilar to interpolate a good result. It doesn’t look great but it looks worse to try to interpolate when there isn’t enough information.
You might like the results of Tuning=”Smooth” better than default, and if you want an extra clean image you can try OverrideArea=0 too.
So something like InterFrame(Cores=4, Tuning=”Smooth”, OverrideArea=0, GPU=true) and InterFrame(Cores=4, Tuning=”Smooth”, GPU=true)
February 26, 2013 at 12:15 pm
Im busy running some more tests now, probably going to be busy the whole night trying to get this right. I did find SVP (the software package for interframe) seemed to interpolated footage a lot better, so i’m guessing you are right and it is just my settings. What i mean by transparent is with regards to sprite animations… instead of a frame containing the new interpolated sprite in proper opacity, instead i’m receiving two sprites (one original, and one interpolated & translucent). I hope that explains it a bit better?
Thanks again for your feedback.
D
February 26, 2013 at 12:49 pm
@Dario: The main difference between SVP and InterFrame scripts are that SVP switches to a less-smooth mode when there will be more artifacts. I’ve decided to keep the smoothness instead. If you want to change it yourself you can edit InterFrame2.avsi and remove the 2 occurrences of “mode:0” near the bottom of the page.
February 26, 2013 at 1:15 pm
your earlier script worked. >>>>>>You are the man<<<<<
March 3, 2013 at 9:52 am
Interesting. I’ve converted Avatar, Prometheus and a 720p copy of Casablanca. Avatar is the most impressive, sections of which have that “staged” look about them, but mostly the higher frame rate is a distinct improvement, even when watching on a fairly old but capable projector. Casablanca at 60fps is even more interesting. The original copy was good, but now it seems much crisper, and pans are very smooth. The improvement is so good, I’m going to try some standard definition b/w movies. It’s a little like going from DVD to HD, it’s going to be hard to watch standard frame rates now…
March 3, 2013 at 10:48 am
@Johnm: Thanks for the feedback!
March 4, 2013 at 11:12 am
First off, thanks for continuing improvements to this guide and method of making double frame rates video(s).
I just want to point out that, for all of you people having problems, make sure to follow the guide to the letter. I ran into some problems myself, if anyone can relate, that instead of following the guide to the letter, I took some shortcuts. One of that shortcut is letting MeGUI transcode both the video and audio and muxing them together within it’s application. This causes a lot of issues with video problems such as distortion, bad frames, colouration defects, etc.
So just only transcode the video first, then if you still need, transcode the audio seperately (I do gameplay videos, so transcoding the audio was necessary). Then use mkvmerge GUI to merge them together. Don’t let MeGUI do it, it’s buggy.
Thanks again for this guide, SubJunk.
By the way, what settings would I adjust to, to ensure I’m getting the best performance for my system spec?
I’m on i7 3930k (6 logical cores)
64GB of Ram
Geforce 670 GTX 4GB
My current script setting I’ve adjusted it to:
Setmemorymax(32768)
SetMTMode(3,6)
PluginPath = “C:\Program Files (x86)\MeGUI\tools\avisynth_plugin\”
LoadPlugin(PluginPath+”svpflow1.dll”)
LoadPlugin(PluginPath+”svpflow2.dll”)
Import(PluginPath+”InterFrame2.avsi”)
.ConvertToYV12()
SetMTMode(2)
InterFrame(Cores=6, GPU=true)
Let me know if there’s any optimization settings I’ve missed that I can take advantage of, much appreciated!
March 5, 2013 at 12:13 pm
@Sin: Thanks for the feedback, and yes you’re right, I have a good reason for every little step in the guide 🙂
Your script looks optimized to me 🙂 If you run into any crashes with very high resolution videos then I would lower the Setmemorymax line to 512, that is the best value I have found for stability.
March 8, 2013 at 7:43 am
Hi SubJunk, Thnks so much for this script and tutorial it works a treat for me but can take days for a full movie! Yes I only have a dual core laptop but is there anyway of making it faster? Wondering if I could change it somehow to produce a 48fps video instead and would this render it any faster?
Thanks again for sharing.
March 8, 2013 at 8:09 am
@Lee: Sure, you can choose any framerate you want, here is for 48fps:
InterFrame(NewNum=48000, NewDen=1001, Cores=2, GPU=true)
March 9, 2013 at 12:35 pm
Since I watched your fhd avatar video on hfrmovies.com and I am very interested at your technique.
The video is very fluid and amazing.
I wish I can find a place where I can download full length interpolated movies, I think this will be awesome to your website, since I can’t find hfr movies on the whole internet.
Thanks…
March 11, 2013 at 1:22 am
Hey Subjunk & Sin,
I just found out today that Subjunk’s scipt actually can be tuned for better performance!
Setmemorymax(512) –> makes no difference in encoding speed (FPS) whether is a 480p or a 1080p video!
SetMTMode(3,6) –> depends on your system i guess.. but I could notice any difference when chaing from 3,4 to 3,6 .. what do the numbers actually mean?
InterFrame(Cores=4, GPU=true)
GPU enabled encodings are usually very unstable and dropping FPS constantly! I tried on 3 different computers.. after I removed it encodes went up a few FPS and are stable ever since.
the SECOND ” SetMTMode(2) ” actually slows everything down! removing it speeded up encoding on 2 different computers :
i7 920 by 8 FPS
i3 3225 by 4 FPS.
also
InterFrame(Cores=4, GPU=true)
GPU enabled encodings were very unstable and dropped FPS constantly, after I removed it encodes went up a few FPS and are stable ever since.
so I suggest everyone to try and remove those two things from the script and then try your encode..
March 11, 2013 at 1:25 am
oops previous message contains the GPU line twice.. sorry
March 11, 2013 at 2:09 am
Oh wait i forgot my question also:
Subjunk, is there a way to prevent the picture quality not to degrade..?
I noticed that when I encode e.g. from 720p to 720p/60 I always get a little degradation is overall quality. Even if I crank up the bitrate e.g. by 200kbps
When encoding and resizing from 1080p/29 to 720p/60 the quality-loss is noticeably less ..
is there a way to prevent this? maybe change from Spline64 (Sharp) to Lanczos4 (Sharp) ..
lemme know, thx!
March 11, 2013 at 3:28 am
I just left a few comment.. but these were removed.. ? WHY !?
March 11, 2013 at 10:26 am
@polanski: Your comments weren’t removed, they just hadn’t been approved yet. To improve quality just increase the x264 CRF value. In my experience using 14 is lossless.
March 11, 2013 at 10:36 am
@polanski: Also, it’s normal for GPU mode to be slower because it is higher quality. CPU mode is less precise
March 12, 2013 at 5:45 am
SubJunk is there a way for you to provide the smoothness and quality of the GPU mode to the CPU mode in a later update? I had to go back to Interframe 1.12.2 (The one with mvtools) for comparable smoothness and quality.
March 12, 2013 at 8:48 am
@Reiko: You can make it more smooth by using the smooth tuning
March 12, 2013 at 9:16 am
Already tried it. I can’t reproduce the smoothness of your example without GPU=true.
March 12, 2013 at 9:33 am
CPUs just aren’t capable of it because they work differently to GPUs. I could probably do a better job of estimating it though in the next version
March 12, 2013 at 12:28 pm
@ Subjunk
I use ABR encoding-mode because I have to have and exact KBps rate, what should I do in that instance? I already tried cranking up the bitrate. if the original is 4800 kbps I usually do 5200
the GPU mode on a HD4000 intergraded GPU’s in Core i3 processor of the 3rd gen. is very instable, if the computer on does a minor task which causes CPU activity MeGUI looses all power and will not regain it and eventually slowly drop to 0.0 FPS after a few hours.
could you elaborate on your comment that a GPU encoding has better quality, cus it doesnt make any sense imho.. I could be wrong, thats why I want you to explain.
thx alot, and keep up the good work on the version!
March 12, 2013 at 12:32 pm
oh on more thing the second ” SetMTMode(2) ” line do ? and what do the (3,4) in the 1st actually mean/do ?
thx
March 12, 2013 at 12:47 pm
just tried something, with a CRF value of 14 a video that is originally 3800kbps become oversized and gains twice the bitrate: around 7000kbps.. so that wont work for me im afraid ..
March 12, 2013 at 1:35 pm
@polanski: There are lots of things you can try with the x264 encoder to increase compressibility, like cabac, trellis, ref frames, complex searches, etc. that are all in the settings. CRF 14 is a very high setting for lossless encoding so just increase the number until you find a bitrate you like more. For example, most online video release groups use values between 19-23.
GPUs calculate math differently to CPUs and in this case it allows them to be more precise.
The MTMode things control multithreading. A Google search will find you the documentation 🙂
March 13, 2013 at 12:07 am
thanks for explaining.. but :p
I know it has to do with multi-threading.. but what does the second MT line do which in your script is set to (2) compared to the first one? (3,4)
March 13, 2013 at 8:24 am
@polanski: http://avisynth.org/mediawiki/Internal_functions/Multithreading_functions
March 13, 2013 at 9:22 pm
thx!
The weird thing is actually that the 2nd SetMTMode line is actually suppose to speed things up as those filters beneath that line dont need mode 3 (so says the table) but in my case the encoding is less stable and dropped frames as it progresses..
March 14, 2013 at 12:39 am
how long it took to convert your works guys? are those full 720p rips(3GB+s) or the micro720 rips (700mbs)?
March 14, 2013 at 3:59 pm
@snave: I convert at close to realtime, so for a 90 min movie it takes 90 mins. It can be much faster with different x264 settings though.
March 17, 2013 at 10:01 pm
Hey, my laptop has 2 video cards: Intel HD 4000 and NVIDIA GeForce GT 650M.
When I was converting some video, I noticed through gpu-z that the NVIDIA card didn’t do anything (0% usage) and the Intel card seem to be the one did the most work.
What do i need to do to make MeGUI use the NVIDIA card?
Do I have to set sonething in the NVIDIA control panel?
Is there any differences in quality between these card?
Thanks in advance for any help you are able to provide.
March 21, 2013 at 1:10 am
for the ones who having errors “unable to load svpflow1.dd\ll…etc”
new script: this will fix it
Setmemorymax(512)
SetMTMode(3,4)
PluginPath = “C:\Program Files (x86)\MeGUI\tools\avisynth_plugin\”
LoadPlugin(PluginPath+”/svpflow1.dll”)
LoadPlugin(PluginPath+”/svpflow2.dll”)
Import(PluginPath+”/InterFrame2.avsi”)
.ConvertToYV12()
SetMTMode(2)
InterFrame(Cores=4)