Update vlc.py
This commit is contained in:
parent
7de5e23b0e
commit
936999a1e2
@ -10,6 +10,7 @@ import time
|
|||||||
import urllib.error
|
import urllib.error
|
||||||
import urllib.parse
|
import urllib.parse
|
||||||
import urllib.request
|
import urllib.request
|
||||||
|
import ctypes
|
||||||
|
|
||||||
from twisted.internet.protocol import ReconnectingClientFactory
|
from twisted.internet.protocol import ReconnectingClientFactory
|
||||||
from twisted.protocols.basic import LineReceiver
|
from twisted.protocols.basic import LineReceiver
|
||||||
@ -297,6 +298,8 @@ class VlcPlayer(BasePlayer):
|
|||||||
# value = value.decode('utf-8')
|
# value = value.decode('utf-8')
|
||||||
self._filepath = value
|
self._filepath = value
|
||||||
self._pathAsk.set()
|
self._pathAsk.set()
|
||||||
|
elif name == "chat":
|
||||||
|
self._listener.sendChat(value)
|
||||||
elif name == "duration" or name == "duration-change":
|
elif name == "duration" or name == "duration-change":
|
||||||
if value == "no-input":
|
if value == "no-input":
|
||||||
self._duration = 0
|
self._duration = 0
|
||||||
@ -455,6 +458,21 @@ class VlcPlayer(BasePlayer):
|
|||||||
else:
|
else:
|
||||||
self.__playerController.vlcIntfPath = os.path.dirname(playerPath).replace("\\", "/") + "/lua/intf/"
|
self.__playerController.vlcIntfPath = os.path.dirname(playerPath).replace("\\", "/") + "/lua/intf/"
|
||||||
self.__playerController.vlcIntfUserPath = os.path.join(os.getenv('APPDATA', '.'), "VLC\\lua\\intf\\")
|
self.__playerController.vlcIntfUserPath = os.path.join(os.getenv('APPDATA', '.'), "VLC\\lua\\intf\\")
|
||||||
|
|
||||||
|
copyTo = os.path.join(os.path.dirname(playerPath) + "\\plugins\\control\\", "libsyncplay_chat_plugin.dll")
|
||||||
|
if not os.path.exists(copyTo):
|
||||||
|
copyForm = utils.findResourcePath("libsyncplay_chat_plugin.dll")
|
||||||
|
self.__playerController._client.ui.showDebugMessage("Copying VLC Syncplay Chat Plugin from '{}' to '{}'".format(copyForm, copyTo))
|
||||||
|
import ctypes
|
||||||
|
commands = u'/k mklink /H "{}" "{}"'.format(copyTo, copyForm)
|
||||||
|
ctypes.windll.shell32.ShellExecuteW(
|
||||||
|
None,
|
||||||
|
u"runas",
|
||||||
|
u"cmd.exe",
|
||||||
|
commands,
|
||||||
|
None,
|
||||||
|
0
|
||||||
|
)
|
||||||
self.__playerController.vlcModulePath = self.__playerController.vlcIntfPath + "modules/?.luac"
|
self.__playerController.vlcModulePath = self.__playerController.vlcIntfPath + "modules/?.luac"
|
||||||
def _createIntfFolder(vlcSyncplayInterfaceDir):
|
def _createIntfFolder(vlcSyncplayInterfaceDir):
|
||||||
self.__playerController._client.ui.showDebugMessage("Checking if syncplay.lua intf directory exists")
|
self.__playerController._client.ui.showDebugMessage("Checking if syncplay.lua intf directory exists")
|
||||||
@ -484,6 +502,8 @@ class VlcPlayer(BasePlayer):
|
|||||||
self.__playerController.SLAVE_ARGS.append(
|
self.__playerController.SLAVE_ARGS.append(
|
||||||
'--lua-config=syncplay={{modulepath=\"{}\",port=\"{}\"}}'.format(
|
'--lua-config=syncplay={{modulepath=\"{}\",port=\"{}\"}}'.format(
|
||||||
self.__playerController.vlcModulePath, str(self.__playerController.vlcport)))
|
self.__playerController.vlcModulePath, str(self.__playerController.vlcport)))
|
||||||
|
self.__playerController.SLAVE_ARGS.append(
|
||||||
|
'--reset-plugins-cache')
|
||||||
|
|
||||||
call.extend(self.__playerController.SLAVE_ARGS)
|
call.extend(self.__playerController.SLAVE_ARGS)
|
||||||
if args:
|
if args:
|
||||||
@ -540,3 +560,5 @@ class VlcPlayer(BasePlayer):
|
|||||||
|
|
||||||
def sendLine(self, line):
|
def sendLine(self, line):
|
||||||
self.reactor.callFromThread(self._factory.protocol.sendLine, line)
|
self.reactor.callFromThread(self._factory.protocol.sendLine, line)
|
||||||
|
def sendChat(self, message):
|
||||||
|
self.reactor.callFromThread(self.__playerController._client.sendChat, message)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user