darknessomi / musicbox

网易云音乐命令行版本

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

播放-暂停的逻辑好像有bug

grantonzhuang opened this issue · comments

exp: 一首歌4分钟
播放这首歌
在2分钟处暂停
过了1分钟继续播放
过了1分钟后, 就会播放下一曲

也就是会把中间的{暂停时间长度}也当成了{已播放时间长度}, 这个时间的计算逻辑好像有问题.

播放的行为正常.

ubuntu 1404 python2.7

你先试试mpg123,看看会出现同样的问题么

mpg123不会出现这个问题,我正在看是哪里的问题。我也遇到了

这个是mpg123的bug,只要播放暂停时间超过一定时间,然后就会自动停止输出@p 0。
最新版本的mpg123已经修复了这个问题,目前测试了一下还没发现问题。等明天再试试。

@grantonzhuang 我的已经最新版本了(1.22)还是有这个问题

@redapple0204 mpg123-1.23.6 没有这个问题

@kigawas 换到了1.25仍然有问题.....

已经重现了这个问题,正在修复

@redapple0204 已经确定是mpg123的问题,和@qhsong说的一样

恩,最新版本也不行?

2016-09-12 17:18 GMT+08:00 Ryan Lee notifications@github.com:

@redapple0204 https://github.com/redapple0204 已经确定是mpg123的问题


You are receiving this because you commented.
Reply to this email directly, view it on GitHub
#347 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGXCi0ttvefyvbHURS_syE-KHq7SLdH9ks5qpRjdgaJpZM4JCy2r
.

祝好,宋其翰
我的博客:http://sqh.me/

只要暂停超过5分钟就会P0了

哦,我试试我这里。

2016-09-12 21:30 GMT+08:00 Ryan Lee notifications@github.com:

只要暂停超过5分钟就会P0了


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#347 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGXCi3o6jeHGv4vYBD_HHl8nXw8VZXNxks5qpVQDgaJpZM4JCy2r
.

祝好,宋其翰
我的博客:http://sqh.me/

@kigawas 不行啊.....最新版本仍然有问题。

再测试了一下,貌似mpg123打开本地文件不会出现这么bug。。怀疑是mpg123内部没有处理好http下载和播放的逻辑。。。。我们可以把脚本改为先下载再播放么,虽然会有点卡。。。

@qhsong 这样会很卡,而且下载缓存会很多

@redapple0204 mpg123这个bug不知道什么时候能修好。。

和作者交流了一下,感觉这个bug不太可能修复了。。。
mpg123本身实现http下载的办法就是直接用tcp的read函数,毫无缓冲区可言,增加这个功能对作者来说利远小于弊。

maybe现在就这么用着吧,用python控制mpg123还是有问题。我现在在fedora24下已经无法正常播放音乐了。。

😂😂😂有别的比较好的命令行播放器么😂😂😂

On Mon, Sep 19, 2016, 10:50 qhsong notifications@github.com wrote:

和作者交流了一下,感觉这个bug不太可能修复了。。。
mpg123本身实现http下载的办法就是直接用tcp的read函数,毫无缓冲区可言,增加这个功能对作者来说利远小于弊。

maybe现在就这么用着吧,用python控制mpg123还是有问题。我现在在fedora24下已经无法正常播放音乐了。。


You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub
#347 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AD_RSmG0vjZS5jat7yEwGPUhTRvlPuVQks5qrfiGgaJpZM4JCy2r
.

最近调查了一下,这个播放器特性是: 可以支持网络地址播放,可以实时输出信息。我暂时没有找到太好的。

还要跨平台。。。

@qhsong mplayer呢

我记得如果把cache开了的话,歌曲的第二次播放就会是调用本地的。

@Catofes 我试试,如果这样的话貌似是一个解决的办法。。。

本来Cache功能的目的就是这个。

我又写了一个缓存脚本,从url下载数据并缓存, 提供一个pipe供mpg123读取。

88b3816

使用 python buffer.py -u song_url 后 mpg123 /tmp/music_box.pipe 就可以播放。

不过我没想好怎么整合进去,本来是想作为主程序的一个线程,然后因为线程不好kill,而且pipe的阻塞挺奇葩的,所以就拎出了单独的一个程序。 @darknessomi @kigawas 你们看看怎么处理? 要不把它也安装到系统,然后在musicbox中用Popen 调用?

不如作为一个功能,开启后替换掉现有的播放逻辑?

我的想法是直接替换掉现在的 无 cache下的播放逻辑

@darknessomi 说实话我不建议...暂停对我影响不大,但是这样子会导致我播放音乐更卡,因为我的网速实在是....