终于实现了 mocp 的随机播放

Totem,mplayer,sopcast,realplayer,bmp
头像
潇洒走一回
帖子: 735
注册时间: 2009-05-20 21:43

Re: 终于实现了 mocp 的随机播放

#31

帖子 潇洒走一回 » 2009-10-31 23:55

试一下我这个吧(viewtopic.php?f=74&t=236602&p=1542594#p1542115),用 rmocp2 代替 mocp 来读取播放列表并通知 mocp 播放,同时记录播放的歌曲名到 ~/.moc/lastsong。放下一首时就可以从播放列表中找到它的下一首播放了。因为我不喜欢这种播放模式,所以还请大家为我测试了。 :em03
你的Py程序我试过了,看来正是photor想要的...只是好象只能手动rmocp2 -n来播放下一首...
不过我对记忆功能不太感兴趣...对使用简单命令行调用mocp感觉基本足够...
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: 终于实现了 mocp 的随机播放

#32

帖子 lilydjwg » 2009-11-01 0:01

潇洒走一回 写了:
试一下我这个吧(viewtopic.php?f=74&t=236602&p=1542594#p1542115),用 rmocp2 代替 mocp 来读取播放列表并通知 mocp 播放,同时记录播放的歌曲名到 ~/.moc/lastsong。放下一首时就可以从播放列表中找到它的下一首播放了。因为我不喜欢这种播放模式,所以还请大家为我测试了。 :em03
你的Py程序我试过了,看来正是photor想要的...只是好象只能手动rmocp2 -n来播放下一首...
不过我对记忆功能不太感兴趣...对使用简单命令行调用mocp感觉基本足够...
这是个 bug....我的 rmocp 也遇到过,但只是偶尔。改了 207 行的等待响应时间, mocp 的 AutoNext 选项打开,然后就正常了。
文件在这里 viewtopic.php?f=74&t=236602&p=1542594#p1542115
头像
xjpvictor
帖子: 2837
注册时间: 2007-08-22 15:55
系统: Archlinux
来自: 新加坡
联系:

Re: 终于实现了 mocp 的随机播放

#33

帖子 xjpvictor » 2009-11-01 0:05

原来有这么多人喜欢用moc。。哈哈。。
那个onsongchange是新的2.5.0才有的,稳定版的2.4.4是没有的。。
Entschuldigung. Ich habe keine ahnung.
Secure with PGP: gpg --recv-keys 0x68b6e3d8
Fingerprint: 5556 517C F52F E402 DDF5 5400 6D30 F13E 68B6 E3D8
Towards A Sustainable Earth: Print Only When Necessary
头像
潇洒走一回
帖子: 735
注册时间: 2009-05-20 21:43

Re: 终于实现了 mocp 的随机播放

#34

帖子 潇洒走一回 » 2009-11-01 0:11

xjpvictor 写了:原来有这么多人喜欢用moc。。哈哈。。
那个onsongchange是新的2.5.0才有的,稳定版的2.4.4是没有的。。
自从看懂moc的几个选项和配置文件之后,就再没有用过其它的播放器
这是个 bug....我的 rmocp 也遇到过,但只是偶尔。改了 207 行的等待响应时间, mocp 的 AutoNext 选项打开,然后就正常了。
文件在这里 viewtopic.php?f=74&t=236602&p=1542594#p1542115
你新上传的刚刚测试完成,问题照旧,需要手动下一首,不然会反复播放同一首...还是让photor来测试吧,好象很接近他的口味...
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: 终于实现了 mocp 的随机播放

#35

帖子 lilydjwg » 2009-11-01 0:40

你新上传的刚刚测试完成,问题照旧,需要手动下一首,不然会反复播放同一首...还是让photor来测试吧,好象很接近他的口味...
:em20 奇怪了。我这里正常。
怎么会反复播放同一首呢?你是不是打开了 Repeat 选项?

代码: 全选

$ mocp -V
moc 2.5.0-alpha3 Build: Nov 17 2008 21:26:11
Compiled with: OSS ALSA JACK DEBUG internet streams resample

代码: 全选

$ cat ~/.moc/config
# Config file for mocp
AutoNext               = yes
CanStartInPlaylist     = yes
Fastdir1               = /home/lilydjwg/.moc/
Fastdir2               = /home/lilydjwg/全部音乐/
FollowPlayedFile       = yes
FormatString           = "%a - %t"
Keymap                 = /home/lilydjwg/.moc/keymap # 不能使用 ~ ?
MusicDir               = /home/lilydjwg/音乐/
PlaylistFullPaths      = no
ReadTags               = no
SavePlaylist           = yes
SetXtermTitle          = yes
ShowHiddenFiles        = no
ShowTime               = IfAvailable
StartInMusicDir        = no
Theme                  = lilydjwg
# This line was added by `rmcop'
OnStop                 = "/home/lilydjwg/scripts/py/rmocp"
上次由 lilydjwg 在 2009-11-01 0:45,总共编辑 1 次。
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: 终于实现了 mocp 的随机播放

#36

帖子 lilydjwg » 2009-11-01 0:44

xjpvictor 写了:原来有这么多人喜欢用moc。。哈哈。。
那个onsongchange是新的2.5.0才有的,稳定版的2.4.4是没有的。。
也就是我们四个人。。 :em20

怎么发现好多软件的某个我正在用的功能都是最新版才有的?有次同学的 fish 不能触发 command-not-found 事件,最后终于发现他的 fish 是version 1.22,而我的是 version 1.23。。。
头像
潇洒走一回
帖子: 735
注册时间: 2009-05-20 21:43

Re: 终于实现了 mocp 的随机播放

#37

帖子 潇洒走一回 » 2009-11-01 0:54

你是不是打开了 Repeat 选项
是的!
我开repeat就是让moc可以在播放了最后一曲后可以从头再开始.
好象开启了repeat时,如果指定播放某一歌曲,会反复进行播放,不过这个平时不影响什么.
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: 终于实现了 mocp 的随机播放

#38

帖子 lilydjwg » 2009-11-01 1:44

潇洒走一回 写了: 是的!
我开repeat就是让moc可以在播放了最后一曲后可以从头再开始.
好象开启了repeat时,如果指定播放某一歌曲,会反复进行播放,不过这个平时不影响什么.
原来如此啊,这个 bug 还不小。我这个脚本在播放了最后一曲后会自动从头再开始的(如果上次播过的被删掉了也会如此),所以用这个脚本时完全没必要设置repeat。
不过这个平时不影响什么
这个影响所有我的所有 rmocp* 脚本!写程序让别人用和给自己用就是不同啊
头像
xjpvictor
帖子: 2837
注册时间: 2007-08-22 15:55
系统: Archlinux
来自: 新加坡
联系:

Re: 终于实现了 mocp 的随机播放

#39

帖子 xjpvictor » 2009-11-01 16:43

我又来了。。
我做了两个脚本,可以很简单的实现重启后继续上次播放。但是需要2.5.0版的moc,因为需要用到它新加的queue的功能和Onsongchange的功能。
第一个,用来启动程序的

代码: 全选

#!/bin/bash

state=`pgrep mocp`
if [ -n "$state" ]; then
	mocp
	exit 0
else
	lastsong=`cat ~/.moc/lastsong`
	mocp -S
	mocp -p
	mocp -q "$lastsong"
	mocp -f
	mocp
	exit 0
fi
第二个

代码: 全选

#!/bin/bash

mocp -i | grep File | sed -e 's/File: //'> ~/.moc/lastsong

exit 0
在~/.moc/config中找到OnSongChange,改为第二个文件的路径,但是需要绝对路径,不然不认。。

我还有一个问题,我本来想把第二个脚本作成可以换歌的时候提示歌名的,但是这样的话启动的时候会出现两次提示,有没有办法让它判断是不是刚启动?
Entschuldigung. Ich habe keine ahnung.
Secure with PGP: gpg --recv-keys 0x68b6e3d8
Fingerprint: 5556 517C F52F E402 DDF5 5400 6D30 F13E 68B6 E3D8
Towards A Sustainable Earth: Print Only When Necessary
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: 终于实现了 mocp 的随机播放

#40

帖子 lilydjwg » 2009-11-01 17:27

xjpvictor 写了:我又来了。。
我做了两个脚本,可以很简单的实现重启后继续上次播放。但是需要2.5.0版的moc,因为需要用到它新加的queue的功能和Onsongchange的功能。
......
我还有一个问题,我本来想把第二个脚本作成可以换歌的时候提示歌名的,但是这样的话启动的时候会出现两次提示,有没有办法让它判断是不是刚启动?
我的 2.5alpha3 没有 queue 呀。
换歌时显示歌名我的 rmocp2 早就实现了,你可以看看,顺便帮测试。
头像
潇洒走一回
帖子: 735
注册时间: 2009-05-20 21:43

Re: 终于实现了 mocp 的随机播放

#41

帖子 潇洒走一回 » 2009-11-01 17:41

mocp -q "$lastsong"
这个-q就是queue?queue有什么神奇效果?我这也没有queue!
头像
xjpvictor
帖子: 2837
注册时间: 2007-08-22 15:55
系统: Archlinux
来自: 新加坡
联系:

Re: 终于实现了 mocp 的随机播放

#42

帖子 xjpvictor » 2009-11-01 18:12

lilydjwg 写了:
xjpvictor 写了:我又来了。。
我做了两个脚本,可以很简单的实现重启后继续上次播放。但是需要2.5.0版的moc,因为需要用到它新加的queue的功能和Onsongchange的功能。
......
我还有一个问题,我本来想把第二个脚本作成可以换歌的时候提示歌名的,但是这样的话启动的时候会出现两次提示,有没有办法让它判断是不是刚启动?
我的 2.5alpha3 没有 queue 呀。
换歌时显示歌名我的 rmocp2 早就实现了,你可以看看,顺便帮测试。
2.5alpha4有。。我不会用python,那个我看不懂。。 :em20 :em06
Entschuldigung. Ich habe keine ahnung.
Secure with PGP: gpg --recv-keys 0x68b6e3d8
Fingerprint: 5556 517C F52F E402 DDF5 5400 6D30 F13E 68B6 E3D8
Towards A Sustainable Earth: Print Only When Necessary
头像
xjpvictor
帖子: 2837
注册时间: 2007-08-22 15:55
系统: Archlinux
来自: 新加坡
联系:

Re: 终于实现了 mocp 的随机播放

#43

帖子 xjpvictor » 2009-11-01 18:13

潇洒走一回 写了:
mocp -q "$lastsong"
这个-q就是queue?queue有什么神奇效果?我这也没有queue!
alpha4有。-q就是queue。就是相当于在播放列表中间插播几首歌,然后顺着播放列表放下去。所以我就相当于每次打开就在播放列表里插播上次的歌,然后再顺着放下面的。
Entschuldigung. Ich habe keine ahnung.
Secure with PGP: gpg --recv-keys 0x68b6e3d8
Fingerprint: 5556 517C F52F E402 DDF5 5400 6D30 F13E 68B6 E3D8
Towards A Sustainable Earth: Print Only When Necessary
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: 终于实现了 mocp 的随机播放

#44

帖子 lilydjwg » 2009-11-01 18:21

xjpvictor 写了: 2.5alpha4有。。我不会用python,那个我看不懂。。 :em20 :em06
就最后一个数字差一啊, :em20

那个 rmocp2 是不需要会 Python 的(只要安装了 Python3 就行)。下回去后给 rmocp2 执行权限并运行 rmocp -h 有说明。
简单说明下,运行 rmocp -p 即可开始播放,剩下的就是听歌了。当然,出现问题请告诉。因为是测试版,不建议在后台运行它。

已知问题:
mocp 的停止功能变成了下一曲。想停下来只能使用暂停(或者 rmocp2 -q 退出程序)。
头像
xjpvictor
帖子: 2837
注册时间: 2007-08-22 15:55
系统: Archlinux
来自: 新加坡
联系:

Re: 终于实现了 mocp 的随机播放

#45

帖子 xjpvictor » 2009-11-01 18:26

lilydjwg, 好的,我试试。我好像从来不用停止的。。
Entschuldigung. Ich habe keine ahnung.
Secure with PGP: gpg --recv-keys 0x68b6e3d8
Fingerprint: 5556 517C F52F E402 DDF5 5400 6D30 F13E 68B6 E3D8
Towards A Sustainable Earth: Print Only When Necessary
回复