AviSynth - 视频帧率不匹配

时间:2015-05-28 09:20:39

标签: video video-editing avisynth

我试图仅加速视频中的某些帧,而不将其分成几个文件,这是我用来执行此操作的代码

AVISource("C:\Users\me\Desktop\source_10FPS.avi")   # get the 10 fps video source

a= Trim(0,100)                                       # trim the first 10  seconds
b= Trim(100,200).AssumeFPS(14, sync_audio=TRUE)      # trim and speed it up 
c= Trim(200,0).AssumeFPS(10, 1, true)                #trim and go back to original speed 

return (a+b+c)                                       # combine the 3 Trims

但我得到“视频帧率不匹配”错误

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:2)

帧速率实际上并不匹配,因为通过AssumeFPS(14),您将b的FPS更改为14并尝试将其与两个10 FPS片段连接。 FPS通常不会沿着视频的方式改变,除非它是VFR(可变帧率),但这很复杂。

对于更简单的解决方案,您可以执行以下操作:

Ar=Audiorate()                                                                  #get audio sampling rate of original clip
a= Trim(0,100)                                                                  #trim the first 10  seconds
b= Trim(101,200).AssumeFPS(14, sync_audio=TRUE).ChangeFPS(10).ResampleAudio(Ar) #trim and speed it up while keeping audio rate and fps intact
c= Trim(201,0)                                                                  #note that to avoid having repeating frames (#100 and #200) you need to change Trim numbers

您也可以使用ConvertFPS而不是ChangeFPS来实现更流畅的播放。

点击此处了解详情:http://avisynth.nl/index.php/FPS