forked from openlp/openlp
Make vlcplayer stop call asynchronous to aviod a deadlock with the UI thread
This commit is contained in:
parent
41c950b819
commit
60fa4c2dca
@ -34,6 +34,7 @@ from distutils.version import LooseVersion
|
|||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
import threading
|
||||||
|
|
||||||
from PyQt4 import QtGui
|
from PyQt4 import QtGui
|
||||||
|
|
||||||
@ -207,7 +208,7 @@ class VlcPlayer(MediaPlayer):
|
|||||||
start_time = 0
|
start_time = 0
|
||||||
if self.state != MediaState.Paused and controller.media_info.start_time > 0:
|
if self.state != MediaState.Paused and controller.media_info.start_time > 0:
|
||||||
start_time = controller.media_info.start_time
|
start_time = controller.media_info.start_time
|
||||||
display.vlc_media_player.play()
|
threading.Thread(target=display.vlc_media_player.play).start()
|
||||||
if not self.media_state_wait(display, vlc.State.Playing):
|
if not self.media_state_wait(display, vlc.State.Playing):
|
||||||
return False
|
return False
|
||||||
self.volume(display, controller.media_info.volume)
|
self.volume(display, controller.media_info.volume)
|
||||||
@ -233,7 +234,7 @@ class VlcPlayer(MediaPlayer):
|
|||||||
"""
|
"""
|
||||||
Stop the current item
|
Stop the current item
|
||||||
"""
|
"""
|
||||||
display.vlc_media_player.stop()
|
threading.Thread(target=display.vlc_media_player.stop).start()
|
||||||
self.state = MediaState.Stopped
|
self.state = MediaState.Stopped
|
||||||
|
|
||||||
def volume(self, display, vol):
|
def volume(self, display, vol):
|
||||||
|
Loading…
Reference in New Issue
Block a user