virtualdub - virtualdub 剪辑视频的脚本
问题描述
我有想要处理的视频,以便在开头删除 x 秒。因为我有大约 140 个视频,所以我开始编写脚本来这样做,但是......它不起作用!
我现在的脚本是:
VirtualDub.audio.SetSource(1);
VirtualDub.audio.SetMode(0);
VirtualDub.audio.SetInterleave(1,500,1,0,0);
VirtualDub.audio.SetClipMode(1,1);
VirtualDub.audio.SetEditMode(1);
VirtualDub.audio.SetConversion(0,0,0,0,0);
VirtualDub.audio.SetVolume();
VirtualDub.audio.SetCompression();
VirtualDub.audio.EnableFilterGraph(0);
VirtualDub.video.SetInputFormat(0);
VirtualDub.video.SetOutputFormat(7);
VirtualDub.video.SetMode(3);
VirtualDub.video.SetSmartRendering(0);
VirtualDub.video.SetPreserveEmptyFrames(0);
VirtualDub.video.SetFrameRate2(15,1,1);
VirtualDub.video.SetRange(600000,290000);
VirtualDub.video.SetIVTC(0, 0, 0, 0);
VirtualDub.video.SetCompression(0x6376736d,0,8000,0);
VirtualDub.video.SetCompData(4,"SwAAAA==");
VirtualDub.video.filters.Clear();
VirtualDub.audio.filters.Clear();
您可能会注意到,我还更改了帧速率并压缩了视频。
我的命令行是: "C:\Program Files\VirtualDub-1.10.4\VirtualDub.exe" /s "C:\Users...\framerate.vdscript" /c /b "C:\Users... \video" "C:\Users...\输出" /r /x
这使我可以处理“C:\Users...\video”文件夹中的所有视频,并将它们保存在“C:\Users...\output”文件夹中。
帧率更改和压缩效果完美,但修剪效果不佳!令人费解的是,当我在 VDub 中打开其中一个视频时,我加载了脚本,它实际上定义了一个范围并完全按照我的意愿处理它!!!
另一个问题是我如何为每个视频文件定义特定的开始(我可能会更改打开每个文件设置范围的脚本,关闭它并有一个例程来根据每个文件更改范围 - 不确定它是否可能在脚本中,我不知道该怎么做,但我还没有检查)。
任何帮助将不胜感激!
泽维尔
解决方案
我正在使用下面的脚本探索我的第二个目标(处理多个文件),这是前一个脚本的简化版本(没有音频和看似无用的东西):
VirtualDub.Open("C:/Users/.../File1.avi",0,0);
VirtualDub.video.SetFrameRate2(15,1,1);
VirtualDub.video.SetRange(600000,290000);
VirtualDub.video.SetCompression(0x6376736d,0,8000,0);
VirtualDub.video.SetCompData(4,"SwAAAA==");
VirtualDub.video.filters.Clear();
VirtualDub.SaveAVI("C:/Users/.../Output1.avi");
VirtualDub.Open("C:/Users/.../File2.avi",0,0);
VirtualDub.video.SetFrameRate2(15,1,1);
VirtualDub.video.SetRange(600000,290000);
VirtualDub.video.SetCompression(0x6376736d,0,8000,0);
VirtualDub.video.SetCompData(4,"SwAAAA==");
VirtualDub.video.filters.Clear();
VirtualDub.SaveAVI("C:/Users/.../Output2.avi");
它奏效了!!!可能是一个文件夹内容的递归处理是问题吗?
请注意,从命令行移动到脚本路径中的 \ 必须更改为 /
干杯,
泽维尔
推荐阅读
- search - 按集合字段对 solr 搜索结果进行分组的解决方法
- swift - 动态更改 RealityKit 实体的文本
- html - 特定字体仅在 Firefox 中具有不正确的下划线 - 错误在哪里,如何解决?
- nltk - 使用 nltk“python 3.7.4”进行错误的词形还原
- c# - 如何使用 c# 将 xml 单词表转换为 html
- android - Flutter:如何在无限滚动的 Gridview.count 下显示指标
- java - flatMap 在集合的元素上
- jquery - kendo-ui 将 observable 绑定到可编辑的内容
- image - 从 jpeg 图像中删除图标
- android - Firebase 电话已验证