这是由于您使用的是预打包版,但 cli.exe 命令行入口文件不存在或已被移除。在较新的预打包版本中,命令行功能可能已集成到主程序 sp.exe 中,需要通过特定参数调用。解决方案:使用 sp.exe 调用命令行模式:打开 CMD 或 PowerShell,并切换到您的 pyVideoTrans 软件根目录(例如 D:\pyVideoTrans)。使用以下命令格式尝试调用命令行模式:sp.exe --task vtv --name "D:\你的路径\tasks.json"如果上述命令仍然弹出图形界面,请尝试使用 --cmd 参数:sp.exe --cmd --task vtv --name "D:\你的路径\tasks.json"检查 tasks.json 配置文件:确保配置文件格式正确(严格的 JSON,无注释)。确保文件路径使用双引号包裹,且使用正斜杠 / 或转义的反斜杠 \\。例如:"D:/myvideos/tasks.json" 或 "D:\\myvideos\\tasks.json"。直接测试简单命令:为了验证命令行功能是否正常,可以先测试一个不需要配置文件的简单任务。例如,尝试进行语音识别:sp.exe --cmd --task stt --name "D:\test.mp4"如果这个命令能在命令行中显示处理日志而没有弹出界面,则证明命令行模式可用。创建正确的 tasks.json:参考以下示例创建您的配置文件(保存为 UTF-8 编码):[
{
"video_file": "E:/videos/视频1.mp4",
"subtitle_file": "E:/videos/视频1.srt",
"source_language_code": "zh",
"target_language_code": "en",
"tts_voice": "zh-CN-XiaoxiaoNeural"
},
{
"video_file": "E:/videos/视频2.mp4",
"subtitle_file": "E:/videos/视频2.srt",
"source_language_code": "zh",
"target_language_code": "en",
"tts_voice": "zh-CN-XiaoxiaoNeural"
}
]执行命令:在 CMD 中执行(请替换为您的实际路径):sp.exe --cmd --task vtv --name "E:/videos/tasks.json"如果命令执行后,命令行窗口开始滚动显示处理日志(如“开始处理任务 X”、“识别完成”、“翻译完成”等),则表示成功。如果仍然直接启动图形界面,则可能是您的软件版本不支持此命令行调用方式。在这种情况下,要实现批量“视频+已有字幕”的处理,只能退回使用图形界面,并采用之前提到的“为每个视频单独处理”或“先字幕翻译生成音频,再合并”的变通方法。请查阅相关文档:命令行模式使用 pyVideoTrans