我已经搜索了互联网,但没有找到解决方案。我希望这个问题不会重复出现。
我在同一文件夹中有以下文件:
RUN_FILE.bat
中的文本:ffmpeg -i "IN.mp4" -c:v libx264 -crf 24 -c:a libmp3lame -aq 2 OUT.mp4
RUN_AVS.bat
中的文本:ffmpeg -i "SCRIPT.avs" -c:v libx264 -crf 24 -c:a libmp3lame -aq 2 OUT.mp4
SCRIPT.avs
中的文本(3行):LoadPlugin("D:\MSharpen.dll")
DirectShowSource("D:\IN.MP4")
MSharpen(15,150)
如果我尝试使用诸如媒体播放器经典之类的外部程序加载avisynth脚本,则它可以正常工作(并锐化视频帧)。
转到命令行并运行
RUN_FILE.bat
可以按预期工作,但是运行RUN_AVS.bat
时出现以下错误(请参见屏幕截图):我发现这令人困惑,因为ffmpeg是使用
--enable-avisynth
配置的。非常感谢您的帮助-这是一个较大且非常重要的项目的一部分(自动扫描包含数百个视频文件的文件夹,将其锐化并重新编码为具有相同文件名的另一个文件夹)。
最佳答案
您是否尝试过搜索屏幕快照中红色的行?
根据我在http://ffmpeg.zeranoe.com/forum/viewtopic.php?t=1084和其他来源中发现的结果,未知错误可能是由于ffmpeg或avisynth的32/64位版本不同。如果您使用的是Avisynth 2.5.8而不是2.6(可能会出现问题)(在任何播放器中打开一个包含“Version()”作为最后一个命令的avisynth脚本,以查找您拥有的那个脚本)。
最后,您可能想尝试在x264.exe中而不是ffmpeg中打开脚本,并查看其是否有效。
我会将其发布到评论答案中,但尚未被允许发表评论。
关于video - 使用Avisynth脚本作为ffmpeg的输入时出错,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29342030/