昨天群里秋日问svp插帧压制的问题,然后看到song神说的方法超简单——【找一份svp生成的avs,改掉source就好】
真简单_(:3」∠)_
先去重编译ff,带上
--enable-avisynth
尝试svp压制,结果出来的视频画面严重减慢,原因不明
一度以为电脑太烂了而已
后来发现……关闭svp即可解决
然后推测,关键点在于【DirectShowSource】
svp的正常播放插帧就是通过DirectShow接口的,所以估计是avs调用dll的同时,svp管理器又加了一次帧,于是输出视频就错乱了
成品:【IA】TSUBASA New Days【60FPS】 @MU秋日
后来发现,插帧的时候ffmpeg频频崩溃,估计是x86内存占用过大溢出了吧
找了份msys2+mingw64准备重新编译ff
msys2啥都好,就是一个,config.guess guess不到系统
网上找到一个超好用的config.guess
#! /bin/sh UNAME_MACHINE=$(uname -m 2>/dev/null) || UNAME_MACHINE=unknown echo ${UNAME_MACHINE}-pc-mingw32
直接放在某个地方,覆盖所有要configure的地方覆盖掉文件,跳过一串串的【fancy detection(高逼格的检测)】直接输出为x86_64架构的mingw32系统
(Source:MSys2 and ./configure: Troubleshooting Shared Libs – { Here Be Braces })
不过ff的configure不是正常的autoconf出来的脚本,我手动把里面的检测系统的 mingw32*) 改成 mingw64*) 了
(编译最后strip的时候莫名报错,手动strip -s ffmpeg.exe ffprobe.exe也没有问题,不知道什么鬼)
最终确认是不是x64居然还是靠的7zip,7z大法好!