VideoHelp Forum
+ Reply to Thread
Results 1 to 8 of 8
Thread
  1. ya i know there are alot of these posts out there and none of them have help me out that i have seen so far. what i am trying to do is change a source that is originally 23.976 fps up to 29.97 without changing the length of the video. i tried using ChangeFPS(29.97) and that changed the fps but made my 1 min test clip about 15 secs shorter. the main reason i need to do this is that i will need to append one clip that i have to another in MKVMerge and i cant have conflicting fps. i would also rather add frames than destroy frames so converting the 29.97 down is out of the question. my current AVS Script is below but, as i said earlier, the ChangeFPS() does not keep the length of the clip correct. so my main question is what will i need to do to get the FPS up to 29.97 without changing the length. im open to any suggestions on how this can be done.

    Code:
    LoadPlugin("C:\Program Files (x86)\megui\tools\dgavcindex\DGAVCDecode.dll")
    AVCSource("A:\stuff\D1\OP.dga") 
    ChangeFPS(29.97) 
    
    LoadPlugin("C:\Program Files (x86)\megui\tools\avisynth_plugin\UnDot.dll")
    Undot() # Minimal Noise
    Quote Quote  
  2. ConvertFPS(30000,1001) will give you 30000/1001 , or if you want ConvertFPS(29.97) which is an approximation. If you are attempting to append, it has to match the other clip exactly

    or use frame interpolation like mflowfps
    Last edited by poisondeathray; 15th Mar 2010 at 14:54.
    Quote Quote  
  3. really? convert instead of change.......





    thanks i'll test this out and report back if it was successful.
    Quote Quote  
  4. assumefps, convertfps, changefps are all slightly different in what they do . You can read about them
    http://avisynth.org/oldwiki/index.php?page=FPS


    Anyways, I suspect you're going to have difficulty in appending. It's not that easy. Everything has to be correct, even encoding settings.
    Quote Quote  
  5. ya i know im encoding everything exactly the same. this is the only field that was different and somehow it appended it with the different fps's. but there wasnt any video after the append and that is what tipped me off that something wasnt the same. also thanks for that link.

    EDIT: yes that seems to work and the append also worked thank you again.
    Last edited by Cman21; 15th Mar 2010 at 16:19.
    Quote Quote  
  6. ConvertFPS() will give you blended frames (double exposures). You can also try one of the frame interplation filters in AviSynth like SmoothFPS():

    #Import("C:\Program Files\AviSynth 2.5\plugins\SmoothFPS.avs")

    #requires MVTools

    function SmoothFPS(clip source, float fps) {
    fp=fps*100
    backward_vec = source.MVAnalyse(isb = true, truemotion=true, pel=2, idx=1)
    # we use explicit idx for more fast processing
    forward_vec = source.MVAnalyse(isb = false, truemotion=true, pel=2, idx=1)
    cropped = source.crop(4,4,-4,-4) # by half of block size 8
    backward_vec2 = cropped.MVAnalyse(isb = true, truemotion=true, pel=2, idx=2)
    forward_vec2 = cropped.MVAnalyse(isb = false, truemotion=true, pel=2, idx=2)
    return source.MVFlowFps2(backward_vec,forward_vec,backwar d_vec2,forward_vec2,num=int(fp),den=100, idx=1,idx2=2)
    }
    You need MvTools to use this. For some types of material it works very well. For others the artifacts are too distracting.
    Quote Quote  
  7. ChangeFPS(29.97) keeps the length exactly the same as the original 23.976fps video. Either you did something else in the script if the length is really shorter (like use AssumeFPS instead, perhaps), or whatever you're using to show the length is showing it incorrectly. ChangeFPS(29.97) adds a duplicate frame after every 4 frames, while playing it at the faster framerate. The length remains the same.
    Quote Quote  
  8. Member
    Join Date
    Jul 2009
    Location
    Spain
    Search Comp PM
    Originally Posted by poisondeathray View Post
    assumefps, convertfps, changefps are all slightly different in what they do . You can read about them
    http://avisynth.org/oldwiki/index.php?page=FPS
    That page is out-of-date. Use this one:
    http://avisynth.org/mediawiki/FPS

    As Manono said, ChangeFPS does not change the video duration.
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!