【问题标题】:How can I control VLC instance with threading如何使用线程控制 VLC 实例
【发布时间】:2020-05-18 18:25:13
【问题描述】:

我是 Python 新手,所以我通过在网上找到的教程和代码来做所有事情,我遇到了这个问题,我试图解决一段时间但没有任何运气。我希望我的描述至少可以理解,因为我自己真的不太了解这个问题......

我有 2 个文件,每个文件都有一个用 OOP 制作的类。 mainfile.py 及其类用于获取用户输入并从 mysql 数据库中查找和选择歌曲,然后它将音乐文件及其音乐类作为新线程运行并传递歌曲名称。音乐文件/类设置 vlc 媒体播放器 (python-vlc),然后播放所选歌曲。

self.newInstance = vlc.Instance() self.player = self.newInstance.media_player_new()

现在它返回到需要另一个用户输入的主文件,即“停止音乐”。这会在音乐文件/类中运行 music_stop 方法。

self.player.stop()

问题是它没有效果。音乐还在播放。我的想法是,这是因为当它再次运行音乐类以运行 music_stop 方法时,它会创建新实例和新媒体播放器(它不播放任何东西)并试图停止它..而不是第一个实际播放的实例这首歌。

我希望它不会太混乱。如果您需要,请提出问题,因为我很确定有些事情我忘了提及。我会根据需要提供更多信息。

非常感谢大家!

【问题讨论】:

    标签: python python-3.x multithreading vlc libvlc


    【解决方案1】:

    我在发布这个问题后的几分钟内就解决了这个问题……经过 4 天的努力。 解决方案是使文件没有类,因此没有 OOP。现在可以了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-10-10
      • 1970-01-01
      • 2010-10-21
      • 2017-02-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多