You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

提取后添加至其他视频的PGS字幕不同步问题排查求助

字幕偏移问题排查与修复

问题背景

现有某剧集日语版与英语版视频(视觉内容一致),尝试将英语版音频、字幕合并至日语版。目前英语音频与日语视频同步正常,但字幕需偏移6秒才能匹配,需排查问题根源并修复。

英语版文件流信息

Stream #0:1(eng): Audio: dts (DTS-HD MA), 48000 Hz, stereo, s32p (24 bit) (default)
    Metadata:
      title           : Stereo
      BPS-eng         : 1572054
      DURATION-eng    : 00:29:08.789333333
      NUMBER_OF_FRAMES-eng: 163949
      NUMBER_OF_BYTES-eng: 343648948
      SOURCE_ID-eng   : 001100
      _STATISTICS_WRITING_APP-eng: MakeMKV v1.17.2 darwin(arm64-release)
      _STATISTICS_WRITING_DATE_UTC-eng: 2022-12-18 02:20:00
      _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES SOURCE_ID
  Stream #0:2(eng): Audio: dts (DTS), 48000 Hz, stereo, fltp, 1536 kb/s
    Metadata:
      title           : Stereo
      BPS-eng         : 1509000
      DURATION-eng    : 00:29:08.789333333
      NUMBER_OF_FRAMES-eng: 163949
      NUMBER_OF_BYTES-eng: 329865388
      SOURCE_ID-eng   : 001100
      _STATISTICS_WRITING_APP-eng: MakeMKV v1.17.2 darwin(arm64-release)
      _STATISTICS_WRITING_DATE_UTC-eng: 2022-12-18 02:20:00
      _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES SOURCE_ID
  Stream #0:3(eng): Subtitle: hdmv_pgs_subtitle
    Metadata:
      BPS-eng         : 22140
      DURATION-eng    : 00:28:47.454895833
      NUMBER_OF_FRAMES-eng: 836
      NUMBER_OF_BYTES-eng: 4780741
      SOURCE_ID-eng   : 001200
      _STATISTICS_WRITING_APP-eng: MakeMKV v1.17.2 darwin(arm64-release)
      _STATISTICS_WRITING_DATE_UTC-eng: 2022-12-18 02:20:00
      _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES SOURCE_ID
  Stream #0:4(eng): Subtitle: hdmv_pgs_subtitle
    Metadata:
      BPS-eng         : 1770
      DURATION-eng    : 00:28:39.655437500
      NUMBER_OF_FRAMES-eng: 62
      NUMBER_OF_BYTES-eng: 380532
      SOURCE_ID-eng   : 001201
      _STATISTICS_WRITING_APP-eng: MakeMKV v1.17.2 darwin(arm64-release)
      _STATISTICS_WRITING_DATE_UTC-eng: 2022-12-18 02:20:00
      _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES SOURCE_ID

已执行的FFmpeg命令

提取英语音频

ffmpeg -i s01e01_ja.mkv \
-muxdelay 0 \
-map 0:1 \
-vn \
-acodec copy \
 s01e01_en_audio.dts

注意:此命令输入为日语版文件,实际应使用英语版文件s01e01_en.mkv,否则提取的是日语音频,属于明显笔误。

提取英语字幕

ffmpeg -i s01e01_en.mkv \
-muxdelay 0 \
-map 0:3 \
-vn \
-c copy \
 s01e01_en_sub.sup

合并英语音轨至日语视频

ffmpeg -i s01e01_ja.mkv \
-i s01e01_en_audio.dts \
-muxdelay 0 \
-map 0 \
-map 1:a \
-c copy \
-shortest \
 s01e01_en_ja.mkv

合并英语字幕至已加音轨的视频

ffmpeg -i s01e01_en_ja.mkv \
-itsoffset 6 \
-i future_boy_conan_s01e01_en_sub.sup \
-muxdelay 0 \
-map 0 \
-map 1:s \
-c copy \
-shortest \
 s01e01_en_ja_subs.mkv

排查与修复步骤

1. 修正音频提取的笔误

重新从英语版文件提取正确的音频:

ffmpeg -i s01e01_en.mkv -map 0:1 -vn -acodec copy s01e01_en_audio_fix.dts

2. 验证字幕源文件的同步性

直接播放英语版原视频s01e01_en.mkv,确认Track 3字幕与自身音频是否同步:

  • 若原视频中字幕就不同步:问题出在源文件,需手动校正字幕时间戳
  • 若原视频同步:说明提取或合并环节导致时间戳丢失,继续下一步

3. 优化字幕提取命令

去掉可能干扰时间戳的-muxdelay 0参数,重新提取字幕:

ffmpeg -i s01e01_en.mkv -map 0:3 -c copy s01e01_en_sub_fix.sup

4. 简化合并流程,减少中间环节

直接一步完成音轨+字幕的合并,避免多次拆分导致的时间戳偏差:

ffmpeg -i s01e01_ja.mkv -i s01e01_en.mkv \
-map 0 \
-map 1:1 \
-map 1:3 \
-c copy \
s01e01_combined.mkv

此命令直接从英语版提取DTS-HD MA音轨(0:1)和主字幕(0:3),合并到日语版视频中,全程保留原始流的时间戳。

5. 检查视频时长一致性

用ffprobe对比日语版与英语版的精确时长,若存在差异,需基于音频时间轴对齐字幕:

ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 s01e01_ja.mkv
ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 s01e01_en.mkv

6. 合并时避免截断视频

合并字幕时去掉-shortest参数,防止因字幕时长较短截断视频导致的同步问题:

ffmpeg -i s01e01_en_ja.mkv -i s01e01_en_sub_fix.sup \
-map 0 \
-map 1:s \
-c copy \
s01e01_en_ja_subs_fix.mkv

内容的提问来源于stack exchange,提问作者Diericx

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 15:30:55