#3666 TaskCfgVTT(is_cuda=False, uuid='00fcfaea95', cache_folder='/Users/mac/pyvideotrans/tmp/51436/00fcfaea95', target_dir='/U

104.238* Posted at: 1 day ago 👁22

合并阶段出错 最后一步字幕配音嵌入时出错
Traceback (most recent call last):
File "/Users/mac/pyvideotrans/videotrans/util/help_ffmpeg.py", line 261, in runffmpeg

subprocess.run(

File "/Users/mac/.local/share/uv/python/cpython-3.10.19-macos-aarch64-none/lib/python3.10/subprocess.py", line 526, in run

raise CalledProcessError(retcode, process.args,

subprocess.CalledProcessError: Command '['ffmpeg', '-hide_banner', '-ignore_unknown', '-threads', '0', '-y', '-progress', 'compose1773798242.8316941.txt', '-i', 'novoice.mp4', '-i', 'origin_audio.m4a', '-map', '0:v', '-map', '1:a', '-c:v', 'hevc_videotoolbox', '-c:a', 'copy', '-vf', "subtitles=filename='end.ass'", '-movflags', '+faststart', '-q:v', '58', '-t', '1741.500000', 'laste_target.mp4']' returned non-zero exit status 8.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/Users/mac/pyvideotrans/videotrans/util/help_ffmpeg.py", line 261, in runffmpeg

subprocess.run(

......
lledProcessError: Command '['ffmpeg', '-hide_banner', '-ignore_unknown', '-threads', '0', '-y', '-progress', 'compose1773798242.8316941.txt', '-i', 'novoice.mp4', '-i', 'origin_audio.m4a', '-map', '0:v', '-map', '1:a', '-c:v', 'libx265', '-c:a', 'copy', '-vf', "subtitles=filename='end.ass'", '-movflags', '+faststart', '-crf', '23', '-preset', 'veryfast', '-t', '1741.500000', 'laste_target.mp4']' returned non-zero exit status 8.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/Users/mac/pyvideotrans/videotrans/task/trans_create.py", line 1521, in _join_video_audio_srt

tools.runffmpeg(cmd, cmd_dir=self.cfg.cache_folder, force_cpu=False)

File "/Users/mac/pyvideotrans/videotrans/util/help_ffmpeg.py", line 302, in runffmpeg

return runffmpeg(fallback_args, noextname=noextname, uuid=uuid, force_cpu=True,cmd_dir=cmd_dir)

File "/Users/mac/pyvideotrans/videotrans/util/help_ffmpeg.py", line 307, in runffmpeg

raise RuntimeError(err)

RuntimeError: opening output file laste_target.mp4. opening output files: Filter not found

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/Users/mac/pyvideotrans/videotrans/task/job.py", line 288, in run

trk.assembling()

File "/Users/mac/pyvideotrans/videotrans/task/trans_create.py", line 796, in assembling

self._join_video_audio_srt()

File "/Users/mac/pyvideotrans/videotrans/task/trans_create.py", line 1524, in _join_video_audio_srt

raise RuntimeError(msg)

RuntimeError: 最后一步字幕配音嵌入时出错
TaskCfgVTT(is_cuda=False, uuid='00fcfaea95', cache_folder='/Users/mac/pyvideotrans/tmp/51436/00fcfaea95', target_dir='/Users/mac/Downloads/_video_out/下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格 - 001 - 下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格-mp4', source_language='简体中文', source_language_code='zh-cn', source_sub='/Users/mac/Downloads/_video_out/下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格 - 001 - 下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格-mp4/zh-cn.srt', source_wav='/Users/mac/pyvideotrans/tmp/51436/00fcfaea95/zh-cn.wav', source_wav_output='/Users/mac/Downloads/_video_out/下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格 - 001 - 下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格-mp4/zh-cn.m4a', target_language='简体中文', target_language_code='zh-cn', target_sub='/Users/mac/Downloads/_video_out/下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格 - 001 - 下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格-mp4/zh-cn.srt', target_wav='/Users/mac/pyvideotrans/tmp/51436/00fcfaea95/target.wav', target_wav_output='/Users/mac/Downloads/_video_out/下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格 - 001 - 下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格-mp4/zh-cn.m4a', name='/Users/mac/Downloads/下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格 - 001 - 下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格.mp4', noextname='下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格 - 001 - 下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格', basename='下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格 - 001 - 下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格.mp4', ext='mp4', dirname='/Users/mac/Downloads', shound_del_name=None, translate_type=0, tts_type=0, volume='+0%', pitch='+0Hz', voice_rate='+0%', voice_role='No', voice_autorate=True, video_autorate=False, remove_silent_mid=False, align_sub_audio=True, detect_language='zh-cn', recogn_type=0, model_name='large-v3-turbo', shibie_audio=None, remove_noise=False, enable_diariz=False, nums_diariz=0, rephrase=0, fix_punc=False, subtitle_language=None, app_mode='biaozhun', subtitles='', targetdir_mp4='/Users/mac/Downloads/_video_out/下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格 - 001 - 下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格-mp4/下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格 - 001 - 下班后的黄金4小时,我用这5件事拉开人生差距——查理·芒格.mp4', novoice_mp4='/Users/mac/pyvideotrans/tmp/51436/00fcfaea95/novoice.mp4', is_separate=False, instrument=None, vocal=None, back_audio='', clear_cache=False, background_music=None, subtitle_type=1, only_out_mp4=False, recogn2pass=True, output_srt=0, copysrt_rawvideo=False)


=
system:macOS-26.3.1-arm64-arm-64bit
version:v3.98
frozen:False
language:zh
root_dir:/Users/mac/pyvideotrans
Python: 3.10.19 (main, Feb 12 2026, 00:36:33) [Clang 21.1.4 ]

1 Replies

错误核心原因是 FFmpeg 在嵌入字幕时找不到指定的字幕过滤器,导致最终合成视频失败。具体报错信息为 Filter not found,这通常与字幕文件路径或格式有关。

解决方案:

  1. 检查并简化文件路径:从日志中可见,你的视频文件、输出文件夹及临时文件夹路径均包含极长的中文名称和特殊符号(如破折号)。这可能导致 FFmpeg 命令行参数过长或解析异常。

    • 将原始视频文件重命名为简短、仅包含英文字母和数字的名称(例如 video.mp4)。
    • 将视频文件移动到较浅的目录层级(例如 ~/Downloads/~/Desktop/)。
    • 在软件中,将“输出到..”目录也设置为一个简短的英文路径。
  2. 检查字幕文件:确保在临时文件夹 (/Users/mac/pyvideotrans/tmp/51436/00fcfaea95/) 中生成的 end.ass 字幕文件存在且格式正确。如果该文件损坏或为空,会导致 FFmpeg 过滤器无法识别。
  3. 调整视频输出编码设置

    • 进入 菜单 -> 工具/选项 -> 高级选项
    • 在【视频输出控制】区域,尝试将 强制软编码视频? 选项勾选上,以避免 macOS 上硬件编码器可能存在的兼容性问题。
    • 264/265编码 暂时切换为 libx264(兼容性更好)。
  4. 重新处理:完成上述调整后,在软件主界面勾选 清理已生成,然后重新对简化后的视频文件进行翻译处理。

如果问题依旧,请提供以下信息以便进一步分析:

  • 检查临时文件夹 /Users/mac/pyvideotrans/tmp/51436/00fcfaea95/end.ass 文件的大小和内容。
  • 提供 logs 文件夹中最新日志文件的底部更多行信息。

请查阅相关文档:

Post Your Reply
Open source and free maintenance is not easy. If this project is helpful to you, please consider making a small donation to help the project continue to maintain and update.

Related resource