使用xmms播放音乐, 同时在读英文, 遇到不会的单词使用星际译王查看释义和朗读. 星际译王发音时需要暂停音乐, 不然听不见, 朗读完之后还要继续音乐的播放...
首先我在星际译王的首选项中将发音命令改为smart-play, 然后是smart-play的代码...
代码: 全选
#!/bin/sh
# aplay 发音程序的包装, 用于在stardict播放声音文件时, 暂停音乐的播放
[ -z "$1" ] && exit 1
MusicOn=`pgrep xmms2`
[ -n "$MusicOn" ] && sleep 0.5 && xmms2 pause
aplay $1
[ -n "$MusicOn" ] && sleep 1 && xmms2 play
如果xmms正处于pause状态, 第一个pause自然不生效, 可是后面的play执行后破坏了现场...
遗憾的是xmms2 info中的输出中没有包含是否正在播放的信息...
请求更好的办法...
如果能临时禁用其它程序的声音输出, 应该很妙!
谢谢!!!