使用SVP对视频进行插帧

不出意外的又拖了半个月(呲牙.jpg)

注意:本篇针对Windows平台,并且可能不是24/25/30fps补帧成60fps的最优方案,更不是唯一方案。

首先需要软件:FFmpeg,K-Lite Codec Pack,SVP,GraphStudio。FFmpeg直接去官网下载Windows build即可,K-Lite理论上只需要Basic,当然更全的不会出问题,SVP可以用免费版,也可以用破解版(免费版可能也支持FFmpeg,未实际测试,Linux不存在付费版),GraphStudio是Windows的自带程序,然而在我这里点Insert Filter就闪退,最后用GraphStudioNext(GitHub链接)代替。

原始

首先我们需要把原始视频拆成纯视频和纯音频两个文件,因为SVP的处理仅针对视频,而且需要在片头补一点时间避免卡顿。使用下面的指令将原始视频拆分成video.mkv(纯视频)和audio.mkv(纯音频),我这里需要上传至B站,所以对音频进行了压缩,也有不压缩的指令:

#注意:若不确定用什么格式那么用mkv大概率不会出问题(mp4不支持flac音频)
#拆分视频
ffmpeg -i origin.mkv -c:v copy -an video.mkv
#拆分音频
ffmpeg -i origin.mkv -vn -c:a copy audio.mkv
#拆分音频并压制为aac编码320k
ffmpeg -i origin.mkv -vn -c:a aac -b:a 320k audio.mkv

接下来我们随便剪切一段视频(最好从video.mkv本身剪)并加到video.mkv的开头(注意这里的10秒可能不是完全精确,切的时候需要用mediainfo看一下):

#从video.mkv开始截取10秒到vcut.mkv
ffmpeg -ss 0 -t 10 -i video.mkv -c:v copy vcut.mkv

创建文件file.txt并写入如下内容供连接使用:

file 'vcut.mkv'
file 'video.mkv'

执行下面的指令连接成最终输入(vin.mkv即为最终输入):

#按顺序连接文件中指定视频
ffmpeg -f concat -i file.txt -c copy vin.mkv
生成vin.mkv

接下来打开graphstudio,选择Graph->Insert File Source(Async.)并选择相应的vin.mkv,接下来到Graph->Insert Filter...,依次添加LAV SplitterLAV Video Decoder以及ffdshow raw video filter

lav
ffdshow raw video filter
摆放好

图中小红圈是可以拖动连线的,最终要连成这个样子:

连线

最后保存为grf文件(选择File->Save As Graph(.GRF)...或Ctrl+Shift+S),我这里保存为vge.grf,接下来创建vge.avs文件并写入如下内容:

DirectShowSource("vge.grf",fps=59.940,convertfps=true, audio=false)
创建avs文件

接下来打开SVP Manager,在设置->控制选项中解除对ffmpeg的限制,关于SVP的视频配置,建议开到最高质量,为影视内容优化(动画优化在动漫中也会出现些许问题),伪影去除我认为高比较好,但有人说高了不好,所以看个人。

svp设置

接下来进行真正的插帧,我这里用了18.0的crf和veryfast的预设,因为精确裁剪仍然需要压制,直接copy会出现裁剪不精确的情况,如需2pass也最好在裁剪完成后再进行:

#veryfast预设x264编码18crf
ffmpeg -i vge.avs -c:v libx264 -crf 18.0 -preset veryfast -an vout.mkv

接下来我们需要把一开始加的10秒视频切掉,使用mediainfo查看精确的时间:

接下来把输出文件的前10s260ms切掉,并和原音频合并成成品,这里使用crf18.0和veryslow预设压制,如需要2pass建议降低预设快速剪切完后进行,如需要其他压制工具同样建议降低预设,快速生成成品后进行:

#剪切视频并压制
ffmpeg -ss 0:0:10.260 -accurate_seek -i vout.mkv -c:v libx264 -crf 18.0 -preset veryslow -an vfin.mkv
#合并音视频形成成品
ffmpeg -i vfin.mkv -i audio.mkv -c:v copy -c:a copy final.mkv
最终

Visits: 136

发布者:Tabing010102

???

留下评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据