Debian 12 中的 moc 音乐播放器有严重的 Bug

moc 音乐播放器的上游已经荒废多年未更新,早就无法适应当今的 ffmpeg 接口. Debian 里的 moc 打过补丁,才得以用上 ffmpeg 5. 不过似乎并未补好,我发现播放有些音乐文件时会出现像“快放”的情形,原本两三分钟的音乐十几秒就播完了。我将测试附件上传到了:

https://netcut.cn/p/dbc1eace113f446b

在那里点“文件(2个)”,可以看到两个压缩包。一个比较小,另外一个有 20 兆的大小。注意文件会在一周后被网站删除,麻烦尽快下载。

我不熟悉 Debian 的 Bug 报告机制,麻烦这里的 DD 或者 DM 帮助报告一下,谢谢了。

简单的搜索了一下,和这个相关吗?

https://moc.daper.net/node/1078

谢谢您的回复,但现在的问题比那个链接里的更严重。您用我提供的测试文件测试一下即可知道,不可能通过「倒带回放」的方法规避。并且那个链接里的版本是 2.5.0-beta1, 而且是 2014 的问题。而现在 Debian 的版本是 2.6, 并非播放 mp3 文件出错,而是在调用 ffmpeg5 的插件时播放某些文件出错。

里面提到可能是 OSS,ASLA,PulseAudio 之间的某些复杂交互造成的,尝试修改一下默认音频设备?

我猜 moc 只是把 ffmpeg 用作解码器,播放功能是 moc 自己实现的。

同样的 moc 版本在老的 ffmpeg 时代没有问题,但由于上游多年未更新,导致无法使用新的 ffmpeg 接口。然后 Debian 自己打了补丁,让它顺利使用上了 ffmpeg 5.

只是补丁没怎么打好,虽然整体上没问题,但在播放某些特别的文件时会出现异常。我特意上传了一些文件供测试,简单测试一下就知道了。

如果哪位熟悉 ffmpeg, 说不定可以很容易地修改好。

如果有哪位对本问题感兴趣,并且在一周后才看到帖子,那么附件已经被网站删除,可以回帖让我重新上传测试文件。

有趣的是,把帖子中提到的那个 ape 文件用 ffmpeg 转码成 wma 以后 moc 是可以正常播放的 :confused:

也许确实和 ffmpeg5 有关。

deb-multimedia 好像也有打包 moc ,不知道能不能用

添加一下症状描述:

播放速度其实是正常的,但是整首歌像被拆分成了许多段,每段只播放开头一点点,然后就跳转到下一段。

另外我注意到如果用方向键调整 moc 的播放进度,会从正确的位置开始播放,说明 ffmpeg 插件 seek 函数工作应该是正常的。

如果要调试这个问题,我想应该需要对 ffmpeg moc 和音乐格式本身都有了解才行

我找了一下 deb-multimedia, 好像没有 moc

那三个测试文件应该包含了“不太标准”的格式,当您用 ffmpeg 将它转化一下后就会变成标准的格式,这时候 moc 才能正常播放。

不过使用其他基于 ffmpeg5 的播放器播放那三个文件正常,说明 ffmpeg 本身能够应付这种“不太标准”的文件。还是应该在 moc 里去修改代码,让它能够检测到这种非标准格式并且做相应的处理。

原来那个包是 Debian 11 的