audacious播放ape/cue的bug[已经完美解决啦!]
发表于 : 2010-04-25 13:34
我在ubuntu 10.04用的是2.3版本的audacious,发现一个bug,就是它无法正确解析cue文件,每次播放都是整个ape文件,虽然播放列表显示的是cue里面的每一首歌,但不管点那一首都是播放整个ape文件,何解?你们发现这个问题吗?
我可是为了这个软件才升级大哦,可是……
经过本人查看源代码,发现这个问题在 ffaudio 模块,里面的seek方法无法正确seek,经过本人修改代码,重新编译打包后终于好了,问题初步解决,但是还有个问题不能解决,就是重新打开播放器后,点播放,发现问题又出现了,要重新加载cue才会正常,不管了现将就着用先,我把补丁贴上来吧
对 文件 audacious-plugins-2.3/src/ffaudio/ffaudio-core.c 的修改
612-616行如下
改为
394行
改为
然后重新编译就好
现在完美解决了这个问题,详情见 后面30楼
我可是为了这个软件才升级大哦,可是……
经过本人查看源代码,发现这个问题在 ffaudio 模块,里面的seek方法无法正确seek,经过本人修改代码,重新编译打包后终于好了,问题初步解决,但是还有个问题不能解决,就是重新打开播放器后,点播放,发现问题又出现了,要重新加载cue才会正常,不管了现将就着用先,我把补丁贴上来吧
对 文件 audacious-plugins-2.3/src/ffaudio/ffaudio-core.c 的修改
612-616行如下
代码: 全选
if (playback->playing)
{
seek_value = time;
g_cond_signal(ctrl_cond);
g_cond_wait(ctrl_cond, ctrl_mutex);
}
代码: 全选
seek_value = time;
g_cond_signal(ctrl_cond);
g_cond_wait(ctrl_cond, ctrl_mutex);
代码: 全选
seek_value = -1;
代码: 全选
/*seek_value = -1;*/
现在完美解决了这个问题,详情见 后面30楼