停止使用vlc模块播放音乐?

时间:2017-01-26 17:17:39

标签: python vlc libvlc audio-player

我写了一首播放歌曲的代码,但我不知道如何在播放时停止播放歌曲(我使用cmd运行)

这是代码:

import vlc

my_song = vlc.MediaPlayer("path to song")

my_song.play()

while True:
    pass

我想如果我在播放音乐的同时运行另一段代码(在另一个cmd窗口中),它将停止播放该歌曲,但它无效。这就是这个想法:

import vlc

my_song = vlc.MediaPlayer("path to song")

my_song.stop()

while True:
    pass

目标是播放和停止音乐,我正在制作音乐节目。 Tnx寻求帮助

1 个答案:

答案 0 :(得分:1)

在我看来,这样做都必须是同一个过程的一部分,而不是分成两个过程(两个命令窗口)。根据您的运行方式,一个进程(窗口)可能不知道另一个进程(窗口)。

您可能希望在相同的代码中完成此操作,类似于上面@ martineau的评论中提到的代码。你需要一个活动才能停止比赛。以下是计时器事件的示例。

import vlc
import time

my_song = vlc.MediaPlayer("path to song")

my_song.play()

timeout = time.time() + 3   # 3 seconds from now
while True:
    if time.time() > timeout:
        my_song.stop()

您可能需要其他事件,例如按钮等等。