Answers:
如果您的视频已命名,请input.mp4
执行以下两个步骤:
ffmpeg -i input.mp4 -vf vidstabdetect=shakiness=10:accuracy=15:result="mytransforms.trf" -f null -
ffmpeg -i input.mp4 -vf vidstabtransform=smoothing=30:input="mytransforms.trf" -c:a copy out_stabilized.mp4
第一步用于创建稳定配置文件,最终稳定的视频将在创建out_stabilized.mp4
。
为了获得高质量的输出,请使用第二步代替上一步(由于此SO答案):
ffmpeg -i input.mp4 -vf vidstabtransform=smoothing=30:input="mytransforms.trf" -codec:v libx264 -crf 18 -preset veryslow -pix_fmt yuv420p -c:a copy out_stabilized.mp4
有关参数的更多信息,请参见vid.stab GitHub Project。
确保检查出MLT及其videotab2过滤器。
您可以使用AviSynth做到这一点,使用为VirtualDub编写的名为Deshaker的过滤器,但也可以与AviSynth一起使用。
它不是专门用于Linux的,但是提到的两个程序都可以在很好的情况下很好地工作wine
,并且从精神上来说绝对是Free and Open Source,并且是GNU GPL的。开发人员刚巧开始在Windows land上进行开发,事实证明移植到* nix太困难了。
Avisynth是一种媒体脚本语言。如果您对煤面的脚本感到满意,那么AviSnth非常棒。如果要指向并单击,则不适合您。
图片价值一千字,所以这里有一些图片(实际上是视频)..