mplayer如何在Python中检测EOF

2024-04-28 01:46:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个播放列表在播放过程中会发生变化,Mplayer不会在第一首曲目的末尾重新加载播放列表,所以我需要做的是捕获EOF,然后重新加载Mplayer继续播放。如何使用mplayer和popen检测EOF?还是有更简单的方法让我错过了?我已经检查了建议的“重复”问题,我不相信它能给我答案,因为这是通过popen捕获曲目/播放列表的结尾。在

def play_music():
  global myplaylist
  global playflag
  if not playflag:
    mycommand = ["mplayer -really-quiet -slave -volume 1 -playlist /home/pi/scripts/playlist.txt"]
    p = subprocess.Popen(mycommand, stdin=PIPE, stdout=PIPE, stderr=PIPE, shell=True)
   playflag = True
   else:
     pass

Tags: 方法true过程global播放列表曲目playlistmplayer
1条回答
网友
1楼 · 发布于 2024-04-28 01:46:46

我不能解决这个问题,必须有一种方法来获得mplayer状态,然后围绕状态执行一些代码。就目前情况来看,我无法让mplayer重新加载播放列表,一旦它添加了一个新的曲目,当我这样做的时候,它又重新开始了-我不经常让一些东西打败我!在

对于未来的读者,我走的是MPD/MPC路径,虽然不是我想去的地方,但它有很好的播放列表管理,并且使用client.consume属性,它可以在播放列表中删除曲目,这对于自动点唱机场景来说非常好。在

相关问题 更多 >