Mpd

如何播放“mpc 搜尋”的結果?

  • September 9, 2019

例子:

$ mpc search title "when I was your man" 
Bruno Mars/Unorthodox Jukebox/06 Bruno Mars - When I Was Your Man.mp3

我如何播放這首歌?我試過用管道輸送它,mpc play但沒有運氣。

$ mpc search title "when I was your man" | mpc play

如果你看看mpd play應該做什麼:

play <position>
 Starts playing the song-number specified. If none is specified, plays number 1.

您會注意到將文件名指定為position.

我不確定是否有一種簡單的方法可以使用 mpc 執行您想要的操作,因為它不支持 MPD 執行的所有命令(例如addid)。

如果您不想保留播放列表,可以這樣做

mpc clear; mpc search title "when I was your man" | mpc add; mpc play

清除播放列表,添加您想要的歌曲並播放播放列表中的第一首歌曲。

我能想出的最好的方法是將歌曲添加到播放列表而不清除它並播放歌曲是

title="your song title here"
mpc search title $title  | mpc add
mpc playlist -f '%position% %title%' | grep -i $title | head -n1 | cut - -d " " -f 1 | xargs mpc play

mpc play需要一個位置作為參數,而不是文件名。準確地說是播放列表中的位置。您首先必須add將文件添加到播放列表中,然後從播放列表中告訴mpcplay歌曲。但是add會在播放列表的末尾添加新歌。對於play新添加的歌曲,您必須知道播放列表的長度。

以下是一些如何添加歌曲並開始播放的建議:

  1. 先清除播放列表:
mpc clear
mpc search title "when I was your man" | mpc add
mpc play
  1. 插入下一個並播放下一個:
mpc search title "when I was your man" | mpc insert
mpc next
  1. 確定最後播放的播放列表長度:
mpc search title "when I was your man" | mpc add
mpc play $(mpc playlist | wc -l)

引用自:https://unix.stackexchange.com/questions/87743