有没有办法通过编程获得rhythmbox (甚至linux上的任何音乐播放器)中当前播放的曲目的完整路径?它可以是linux命令,也可以是python。
我需要它来排序我的新音乐专辑的快捷方式(即,删除或存档当前播放的文件,直到新的音乐文件夹是空的)。我是用amarok做的,但在新版本中,我的插件不再工作,而且还没有文档。
发布于 2021-06-01 20:31:53
安装mp3info
并使用以下脚本:
#!/bin/sh
apps="vlc totem rhythmbox banshee mplayer gnome-mplayer"
for app in $apps
do
pat="([^\w-]$app)"
if ps ux | grep -P $pat | grep -vq grep; then
echo
echo "$app detected"
echo -------------------------
file=`lsof -F n -c "$app" | grep -i "^.*\.mp3$" | sed 's/^n//g'`
if [ ! -z "$file" ]; then
echo -n "Now playing: "
if mp3info "$file" 2>&1 | grep -q "does not have an ID3"; then
echo $file
echo MP3 info missing \(ID3v2 not supported\)
else
echo
mp3info "$file"
fi
else
echo Playing no MP3 files
fi
fi
done
发布于 2021-01-02 01:30:31
这可以通过mplayer来完成:
path=`lsof -c mplayer | grep -E '\.m4a|\.mp3|\.flac|\.mp4|\.wav|\.wma|\.aac' | sed "s+.*\(/home/$USER.*\)+\1+g"`
详细信息:
lsof -c mplayer
:列出mplayer;grep -E '\.m4a|\.mp3|\.flac|\.mp4|\.wav|\.wma|\.aac'
:当前使用的所有文件,只保留包含音频文件的行(可能有一种更优雅的方法来删除行前缀(如果您的音乐文件不在/home/$USER).中,则进行调整
https://stackoverflow.com/questions/64533762
复制相似问题