DashPlayer icon indicating copy to clipboard operation
DashPlayer copied to clipboard

MP3音频播放时字幕与音频逐渐错位问题

Open ThueWeihe opened this issue 2 months ago • 3 comments

(不好意思一天之内提交两个问题。应该不会再提。) 这个播放器用来学英语仍是最好用的。

Prerequisites

Macbook pro 2019, x64 macOS 15.5 DashPlayer 5.1.8

先用其它播放器播放 Audiobook( MP3 加 字幕),确认音频和字幕从头到尾都对位的,时间戳没问题。

Expected Behavior

MP3 音频播放时,用鼠标点击字幕,或按方向键 Left, Right 跳转,或按 down 重播当前句,音频能够正确定位。

Current Behavior

MP3 音频播放时,开始一切正常。到了大约 1分30秒 后的位置,按字幕重播或跳转时,音频定位偏差明显,越往后偏差越大。

MP4 视频播放时无此问题。

Steps to Reproduce

  1. 打开一个 MP3 音频文件,同名的 SRT 文件会被自动加载。

  2. 一直播放(或通过浮动面板跳转)到 大约1分30秒 后的位置。

  3. 按 down 键重播当前句,会发现语音与字幕已错位(语音超前),越往后偏差越明显。

  4. 用其它跳转方式,仍是错位。若跳回音频开头位置,则恢复正常。

ThueWeihe avatar Oct 02 '25 15:10 ThueWeihe

临时措施:(用 Python 脚本)将 SRT 文件中每个时间戳都乘以系数 0.993 之后,声音与字幕就能对位了,随意跳转都能对位。但仅对几分钟长的 MP3 有效。这个方法对电子书不适用,因其 MP3 长达几小时(试了一下,无论乘什么系数,几分钟之后的段落就对不上了,不太有规则,尤其是跳转之后。)。

ThueWeihe avatar Oct 04 '25 05:10 ThueWeihe

临时措施之二(问题已不是问题): 考虑到 MP4 的播放不存在字幕与声音错位问题,于是作如下处理。 (0)选一个长的 mp3 。(本例所选的 mp3,时长是 2小时40分,62M。带有 srt 字幕文件。) (1)用 VLC media player 将这 mp3 文件转成 MP4 格式,实际上会是 m4v 后缀。(一下子就完成了) (2)手动(强行)将 m4v 改为 mp3 。(文件大小已变成了 154M 。) (3)用 DashPlayer 播放它,任意跳转。 (4)发现字幕和声音已经完全对得上了(原先声音与字幕错位问题不存在了),已相当理想。

ThueWeihe avatar Oct 04 '25 11:10 ThueWeihe

嗯嗯好的,我研究下,谢谢反馈。

没关系的,有建议就可以提哈哈哈

solidSpoon avatar Oct 08 '25 15:10 solidSpoon