我想等一首歌来播放下一首歌。
我正在Windows上运行python 3.4,但我正试图在Linux上使用它(raspberry pi
)。
我使用命令subprocess.call([PLAYER, SONG])
打开mp3文件。它在vlc中播放然后停止。我知道我没有为程序包含任何内容,以便在完成时告诉python。
你们进来的地方。我想找到一个等到歌曲结束的命令,当歌曲结束时,剩下的代码就会处理完毕。
我希望该命令能够在Linux操作系统上使用,我尝试不必安装任何模块。
如果肯定需要模块,我会安装它们。
答案 0 :(得分:2)
您可以使用VLC python bindings获取有关VLC播放器的不同信息。
有不同的方法可以提供不同的信息。您可以使用get_state(self)方法实现解决方案,它提供播放器的状态信息。因此,当歌曲完成时,VLC状态将被停止。
示例代码:
import vlc
def setup_player(filename):
vlc_instance = vlc.Instance()
media = vlc_instance.media_new(filename)
player = vlc_instance.media_player_new()
player.set_media(media)
player.play()# Start the player
print player.get_state()# Print player's state
player.stop()# Stop the player
print player.get_state()# Print player's state
setup_player('filename')#Put media file name/location here
我希望它有所帮助。