字幕提取失败

随着上周发布的新版本和“MKV HEVC”配置文件,我现在看到转换失败,并提示错误:
“提取隐藏字幕失败”

这些录制内容本身并没有隐藏字幕。但在之前的版本中,缺少隐藏字幕并不会导致转换失败。我知道这次版本对字幕/隐藏字幕部分做了改动。请问这是设计上的意图——即如果没有隐藏字幕,转换就应该失败吗?如果是这样,我可以为那些没有字幕的剧集单独创建一个配置文件。我只是想确认这是设计行为,还是一个 bug?

谢谢。

Based on recent changes in MCEBuddy (starting around version 2.6.2), the subtitle and closed caption engine was redesigned to be “simpler” and more automated.

In previous versions, the logic was often more permissive. However, recent updates changed how “Save subtitles” and “Embed subtitles” (formerly “Extract subtitles and closed captions” and “Add subtitles”) interact.

Is this a bug or intended design?

It appears to be a bug or a regression in how the engine handles files without caption streams. While the intended design is to automate extraction, it should not treat a missing stream as a fatal processing error if the source simply doesn’t contain one.

Potential Causes & Troubleshooting

  1. CCExtractor Sensitivity: MCEBuddy uses CCExtractor for this process. If your profile is specifically calling for a caption extraction that returns a non-zero exit code (failure) because no stream is found, MCEBuddy may be interpreting that as a task failure.
  2. Profile “Force” Settings: Check your MKV HEVC profile in profiles.conf. If there is a command line argument or a setting that mandates subtitle processing, it might be causing the hard stop.

Suggested Workarounds

  • Disable Subtitle Options: In your Conversion Task settings, try unchecking both “Save subtitles” and “Embed subtitles”. If the conversion then succeeds, it confirms the engine is failing because it expects a stream that isn’t there.
  • Custom Profile: As you mentioned, creating a specific profile for series known to lack captions is a valid workaround, but you can also try adding cc_stop_on_error=false (if available in your version’s expert settings) to the profiles.conf for that specific profile to see if it allows the process to continue.
  • Check Logs: To confirm exactly why it’s failing, look for the line in your conversion log just before the “Extracting closed captions failed” message. It will usually show the exact command line being run and the error code returned by the sub-process.

I recommend uploading a copy of your conversion log to this thread. The developers (like @Goose) usually look for those logs to see if a specific “check” needs to be made optional in the code.

这是一个日志示例。

elsbeth - s03e12 - All’s Hair.mp4-PlayOnHome - NO Comskip-2026-03-06T12-10-28.log(611.3 KB)

Thank you for providing that log file, @SJL.

Looking at your log for Elsbeth - S03E12, I can see exactly where the failure occurs:

2026-03-06T12:10:45 --> Extracting closed captions from C:\Users\SJL\AppData\Local\Temp\MCEBuddy\Working\elsbeth - s03e12 - All’s Hair.mp4
2026-03-06T12:10:46 --> CCExtractor failed to find any subtitles/closed captions in source file.
2026-03-06T12:10:46 ERROR> 2026-03-06T12:10:46 --> Extracting closed captions failed

Analysis

It appears your intuition was correct: this is a bug/regression in the recent subtitle engine redesign.

In the latest versions (starting with the 2.6.2 beta branches), MCEBuddy was updated to “simplify” subtitle handling by making extraction a default prerequisite when “Save subtitles” or “Embed subtitles” is checked. However, the logic currently treats a “No subtitles found” result from CCExtractor as a fatal error for the entire conversion task, rather than just skipping the subtitle step and moving on to the video encoding.

The Verdict

  • Is it intended? No. MCEBuddy is designed to be an automated “set and forget” tool;

感谢您报告此问题。是的,这似乎是一个与“严格处理”相关的错误,当找不到字幕时就会出现。通常,如果字幕提取失败,MCEBuddy 会继续进行转换。启用“严格处理”后,任何微小的失败都会导致转换失败。理想情况下,如果一开始就没有字幕,就不应该失败。

我在您的日志中看到您已启用严格处理。

严格处理 → True

目前,请暂时禁用“转换任务 → 专家设置 → 严格处理”,直到我们发布修复程序。