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

1 个赞

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

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

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

1 个赞

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

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

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

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

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

也许确实和 ffmpeg5 有关。

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

1 个赞

添加一下症状描述:

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

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

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

1 个赞

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

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

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

原来那个包是 Debian 11 的