mirror of https://github.com/Syncplay/syncplay
parent
f36b176002
commit
88113d8e15
Binary file not shown.
After Width: | Height: | Size: 890 B |
|
@ -1,4 +1,4 @@
|
|||
version = '1.5.0'
|
||||
milestone = 'Yoitsu'
|
||||
release_number = '49'
|
||||
release_number = '50'
|
||||
projectURL = 'http://syncplay.pl/'
|
||||
|
|
|
@ -83,6 +83,7 @@ COMMANDS_CREATE = ['c','create']
|
|||
COMMANDS_AUTH = ['a','auth']
|
||||
COMMANDS_TOGGLE = ['t','toggle']
|
||||
MPC_MIN_VER = "1.6.4"
|
||||
MPC_BE_MIN_VER = "1.5.2.3123"
|
||||
VLC_MIN_VERSION = "2.2.1"
|
||||
VLC_INTERFACE_MIN_VERSION = "0.3.4"
|
||||
VLC_LATENCY_ERROR_THRESHOLD = 2.0
|
||||
|
@ -105,6 +106,12 @@ MPC_PATHS = [
|
|||
r"c:\program files\combined community codec pack\mpc\mpc-hc.exe",
|
||||
r"c:\program files\mpc homecinema (x64)\mpc-hc64.exe",
|
||||
]
|
||||
MPC_BE_PATHS = [
|
||||
r"c:\Program Files\MPC-BE x64\mpc-be64.exe",
|
||||
r"c:\Program Files\MPC-BE x64\mpc-be.exe",
|
||||
r"c:\Program Files\MPC-BE\mpc-be64.exe",
|
||||
r"c:\Program Files\MPC-BE\mpc-be.exe"
|
||||
]
|
||||
MPLAYER_PATHS = ["mplayer2", "mplayer"]
|
||||
MPV_PATHS = ["mpv", "/opt/mpv/mpv", r"c:\program files\mpv\mpv.exe", r"c:\program files\mpv-player\mpv.exe",
|
||||
r"c:\program Files (x86)\mpv\mpv.exe", r"c:\program Files (x86)\mpv-player\mpv.exe",
|
||||
|
@ -124,6 +131,7 @@ MPLAYER_ICONPATH = "mplayer.png"
|
|||
MPV_ICONPATH = "mpv.png"
|
||||
MPC_ICONPATH = "mpc-hc.png"
|
||||
MPC64_ICONPATH = "mpc-hc64.png"
|
||||
MPC_BE_ICONPATH = "mpc-be.png"
|
||||
|
||||
MPV_ERROR_MESSAGES_TO_REPEAT = ['[ytdl_hook] Your version of youtube-dl is too old', '[ytdl_hook] youtube-dl failed', 'Failed to recognize file format.']
|
||||
|
||||
|
|
|
@ -108,9 +108,10 @@ de = {
|
|||
"server-timeout-error" : u"Timeout: Verbindung zum Server fehlgeschlagen",
|
||||
"mpc-slave-error" : u"Kann MPC nicht im Slave-Modus starten!",
|
||||
"mpc-version-insufficient-error" : u"MPC-Version nicht ausreichend, bitte nutze `mpc-hc` >= `{}`",
|
||||
"mpc-be-version-insufficient-error" : u"MPC-Version nicht ausreichend, bitte nutze `mpc-be` >= `{}`",
|
||||
"mpv-version-error" : u"Syncplay ist nicht kompatibel mit dieser Version von mpv. Bitte benutze eine andere Version (z.B. Git HEAD).",
|
||||
"player-file-open-error" : u"Fehler beim Öffnen der Datei durch den Player",
|
||||
"player-path-error" : u"Ungültiger Player-Pfad. Supported players are: mpv, VLC, MPC-HC and mplayer2", # To do: Translate end
|
||||
"player-path-error" : u"Ungültiger Player-Pfad. Supported players are: mpv, VLC, MPC-HC, MPC-BE and mplayer2", # To do: Translate end
|
||||
"hostname-empty-error" : u"Hostname darf nicht leer sein",
|
||||
"empty-error" : u"{} darf nicht leer sein", # Configuration
|
||||
"media-player-error": u"Player-Fehler: \"{}\"", # Error line
|
||||
|
@ -120,7 +121,7 @@ de = {
|
|||
|
||||
"unable-to-start-client-error" : u"Client kann nicht gestartet werden",
|
||||
|
||||
"player-path-config-error": u"Player-Pfad ist nicht ordnungsgemäß gesetzt. Supported players are: mpv, VLC, MPC-HC and mplayer2.", # To do: Translate end
|
||||
"player-path-config-error": u"Player-Pfad ist nicht ordnungsgemäß gesetzt. Supported players are: mpv, VLC, MPC-HC, MPC-BE and mplayer2.", # To do: Translate end
|
||||
"no-file-path-config-error": u"Es muss eine Datei ausgewählt werden, bevor der Player gestartet wird.",
|
||||
"no-hostname-config-error": u"Hostname darf nicht leer sein",
|
||||
"invalid-port-config-error" : u"Port muss gültig sein",
|
||||
|
@ -151,7 +152,7 @@ de = {
|
|||
"failed-to-load-server-list-error" : u"Konnte die Liste der öffentlichen Server nicht laden. Bitte besuche http://www.syncplay.pl/ [Englisch] mit deinem Browser.",
|
||||
|
||||
# Client arguments
|
||||
"argument-description" : u'Syncplay ist eine Anwendung um mehrere MPlayer, MPC-HC und VLC-Instanzen über das Internet zu synchronisieren.',
|
||||
"argument-description" : u'Syncplay ist eine Anwendung um mehrere MPlayer, MPC-HC, MPC-BE und VLC-Instanzen über das Internet zu synchronisieren.',
|
||||
"argument-epilog" : u'Wenn keine Optionen angegeben sind, werden die _config-Werte verwendet',
|
||||
"nogui-argument" : u'Keine GUI anzeigen',
|
||||
"host-argument" : u'Server-Adresse',
|
||||
|
@ -195,7 +196,7 @@ de = {
|
|||
"filename-privacy-label" : u"Dateiname:",
|
||||
"filesize-privacy-label" : u"Dateigröße:",
|
||||
"checkforupdatesautomatically-label" : u"Automatisch nach Updates suchen",
|
||||
"slowondesync-label" : u"Verlangsamen wenn nicht synchron (nicht unterstützt mit MPC-HC)",
|
||||
"slowondesync-label" : u"Verlangsamen wenn nicht synchron (nicht unterstützt mit MPC-HC/BE)",
|
||||
"dontslowdownwithme-label" : u"Nie verlangsamen oder andere zurückspulen (Experimentell)",
|
||||
"pausing-title" : u"Pausing", # TODO: Translate
|
||||
"pauseonleave-label" : u"Pausieren wenn ein Benutzer austritt",
|
||||
|
@ -320,7 +321,7 @@ de = {
|
|||
"password-tooltip" : u"Passwörter sind nur bei Verbindung zu privaten Servern nötig.",
|
||||
"room-tooltip" : u"Der Raum, der betreten werden soll, kann ein x-beliebiger sein. Allerdings werden nur Clients im selben Raum synchronisiert.",
|
||||
|
||||
"executable-path-tooltip" : u"Pfad zum ausgewählten, unterstützten Mediaplayer (MPC-HC, VLC, mplayer2 or mpv).",
|
||||
"executable-path-tooltip" : u"Pfad zum ausgewählten, unterstützten Mediaplayer (MPC-HC, MPC-BE, VLC, mplayer2 or mpv).",
|
||||
"media-path-tooltip" : u"Pfad zum wiederzugebenden Video oder Stream. Notwendig für mplayer2.", # TODO: Confirm translation
|
||||
"player-arguments-tooltip" : u"Zusätzliche Kommandozeilenparameter / -schalter für diesen Mediaplayer.",
|
||||
"mediasearcdirectories-arguments-tooltip" : u"Verzeichnisse, in denen Syncplay nach Mediendateien suchen soll, z.B. wenn du das Click-to-switch-Feature verwendest. Syncplay wird rekursiv Unterordner durchsuchen.", # TODO: Translate Click-to-switch? (or use as name for feature)
|
||||
|
@ -383,7 +384,7 @@ de = {
|
|||
"no-salt-notification" : u"WICHTIGER HINWEIS: Damit von dem Server generierte Passwörter für geführte Räume auch nach einem Serverneustart funktionieren, starte den Server mit dem folgenden Parameter: --salt {}", #Salt
|
||||
|
||||
# Server arguments
|
||||
"server-argument-description" : u'Anwendung, um mehrere MPlayer, MPC-HC und VLC-Instanzen über das Internet zu synchronisieren. Server',
|
||||
"server-argument-description" : u'Anwendung, um mehrere MPlayer, MPC-HC/BE und VLC-Instanzen über das Internet zu synchronisieren. Server',
|
||||
"server-argument-epilog" : u'Wenn keine Optionen angegeben sind, werden die _config-Werte verwendet',
|
||||
"server-port-argument" : u'Server TCP-Port',
|
||||
"server-password-argument" : u'Server Passwort',
|
||||
|
|
|
@ -107,9 +107,10 @@ en = {
|
|||
"server-timeout-error" : "Connection with server timed out",
|
||||
"mpc-slave-error" : "Unable to start MPC in slave mode!",
|
||||
"mpc-version-insufficient-error" : "MPC version not sufficient, please use `mpc-hc` >= `{}`",
|
||||
"mpc-be-version-insufficient-error" : "MPC version not sufficient, please use `mpc-be` >= `{}`",
|
||||
"mpv-version-error" : "Syncplay is not compatible with this version of mpv. Please use a different version of mpv (e.g. Git HEAD).",
|
||||
"player-file-open-error" : "Player failed opening file",
|
||||
"player-path-error" : "Player path is not set properly. Supported players are: mpv, VLC, MPC-HC and mplayer2",
|
||||
"player-path-error" : "Player path is not set properly. Supported players are: mpv, VLC, MPC-HC, MPC-BE and mplayer2",
|
||||
"hostname-empty-error" : "Hostname can't be empty",
|
||||
"empty-error" : "{} can't be empty", # Configuration
|
||||
"media-player-error": "Media player error: \"{}\"", # Error line
|
||||
|
@ -119,7 +120,7 @@ en = {
|
|||
|
||||
"unable-to-start-client-error" : "Unable to start client",
|
||||
|
||||
"player-path-config-error": "Player path is not set properly. Supported players are: mpv, VLC, MPC-HC and mplayer2.",
|
||||
"player-path-config-error": "Player path is not set properly. Supported players are: mpv, VLC, MPC-HC, MPC-BE and mplayer2.",
|
||||
"no-file-path-config-error" :"File must be selected before starting your player",
|
||||
"no-hostname-config-error": "Hostname can't be empty",
|
||||
"invalid-port-config-error" : "Port must be valid",
|
||||
|
@ -149,7 +150,7 @@ en = {
|
|||
"failed-to-load-server-list-error" : u"Failed to load public server list. Please visit http://www.syncplay.pl/ in your browser.",
|
||||
|
||||
# Client arguments
|
||||
"argument-description" : 'Solution to synchronize playback of multiple MPlayer and MPC-HC instances over the network.',
|
||||
"argument-description" : 'Solution to synchronize playback of multiple media player instances over the network.',
|
||||
"argument-epilog" : 'If no options supplied _config values will be used',
|
||||
"nogui-argument" : 'show no GUI',
|
||||
"host-argument" : 'server\'s address',
|
||||
|
@ -193,7 +194,7 @@ en = {
|
|||
"filename-privacy-label" : "Filename information:",
|
||||
"filesize-privacy-label" : "File size information:",
|
||||
"checkforupdatesautomatically-label" : "Check for Syncplay updates automatically",
|
||||
"slowondesync-label" : "Slow down on minor desync (not supported on MPC-HC)",
|
||||
"slowondesync-label" : "Slow down on minor desync (not supported on MPC-HC/BE)",
|
||||
"rewindondesync-label" : "Rewind on major desync (recommended)",
|
||||
"fastforwardondesync-label" : "Fast-forward if lagging behind (recommended)",
|
||||
"dontslowdownwithme-label" : "Never slow down or rewind others (experimental)",
|
||||
|
@ -320,7 +321,7 @@ en = {
|
|||
"password-tooltip" : "Passwords are only needed for connecting to private servers.",
|
||||
"room-tooltip" : "Room to join upon connection can be almost anything, but you will only be synchronised with people in the same room.",
|
||||
|
||||
"executable-path-tooltip" : "Location of your chosen supported media player (mpv, VLC, MPC-HC or mplayer2).",
|
||||
"executable-path-tooltip" : "Location of your chosen supported media player (mpv, VLC, MPC-HC/BE or mplayer2).",
|
||||
"media-path-tooltip" : "Location of video or stream to be opened. Necessary for mplayer2.",
|
||||
"player-arguments-tooltip" : "Additional command line arguments / switches to pass on to this media player.",
|
||||
"mediasearcdirectories-arguments-tooltip" : u"Directories where Syncplay will search for media files, e.g. when you are using the click to switch feature. Syncplay will look recursively through sub-folders.",
|
||||
|
@ -332,7 +333,7 @@ en = {
|
|||
"privacy-sendhashed-tooltip" : "Send a hashed version of the information, making it less visible to other clients.",
|
||||
"privacy-dontsend-tooltip" : "Do not send this information to the server. This provides for maximum privacy.",
|
||||
"checkforupdatesautomatically-tooltip" : "Regularly check with the Syncplay website to see whether a new version of Syncplay is available.",
|
||||
"slowondesync-tooltip" : "Reduce playback rate temporarily when needed to bring you back in sync with other viewers. Not supported on MPC-HC.",
|
||||
"slowondesync-tooltip" : "Reduce playback rate temporarily when needed to bring you back in sync with other viewers. Not supported on MPC-HC/BE.",
|
||||
"dontslowdownwithme-tooltip" : "Means others do not get slowed down or rewinded if your playback is lagging. Useful for room operators.",
|
||||
"pauseonleave-tooltip" : "Pause playback if you get disconnected or someone leaves from your room.",
|
||||
"readyatstart-tooltip" : "Set yourself as 'ready' at start (otherwise you are set as 'not ready' until you change your readiness state)",
|
||||
|
@ -382,7 +383,7 @@ en = {
|
|||
|
||||
|
||||
# Server arguments
|
||||
"server-argument-description" : 'Solution to synchronize playback of multiple MPlayer and MPC-HC instances over the network. Server instance',
|
||||
"server-argument-description" : 'Solution to synchronize playback of multiple MPlayer and MPC-HC/BE instances over the network. Server instance',
|
||||
"server-argument-epilog" : 'If no options supplied _config values will be used',
|
||||
"server-port-argument" : 'server TCP port',
|
||||
"server-password-argument" : 'server password',
|
||||
|
|
|
@ -108,9 +108,10 @@ ru = {
|
|||
"server-timeout-error" : u"Подключение к серверу превысило лимит времени",
|
||||
"mpc-slave-error" : u"Невозможно запустить MPC в slave режиме!",
|
||||
"mpc-version-insufficient-error" : u"Версия MPC слишком старая, пожалуйста, используйте `mpc-hc` >= `{}`",
|
||||
"mpc-be-version-insufficient-error" : u"Версия MPC слишком старая, пожалуйста, используйте `mpc-be` >= `{}`",
|
||||
"mpv-version-error" : u"Syncplay не совместим с данной версией mpv. Пожалуйста, используйте другую версию mpv (лучше свежайшую).",
|
||||
"player-file-open-error" : u"Проигрыватель не может открыть файл.",
|
||||
"player-path-error" : u"Путь к проигрывателю задан неверно. Supported players are: mpv, VLC, MPC-HC and mplayer2.", # TODO: Translate last sentence
|
||||
"player-path-error" : u"Путь к проигрывателю задан неверно. Supported players are: mpv, VLC, MPC-HC, MPC-BE and mplayer2.", # TODO: Translate last sentence
|
||||
"hostname-empty-error" : u"Имя пользователя не может быть пустым.",
|
||||
"empty-error" : u"{} не может быть пустым.", # Configuration
|
||||
"media-player-error" : u"Ошибка проигрывателя: \"{}\"", # Error line
|
||||
|
@ -120,7 +121,7 @@ ru = {
|
|||
|
||||
"unable-to-start-client-error" : u"Невозможно запустить клиент",
|
||||
|
||||
"player-path-config-error": u"Путь к проигрывателю установлен неверно. Supported players are: mpv, VLC, MPC-HC and mplayer2", # To do: Translate end
|
||||
"player-path-config-error": u"Путь к проигрывателю установлен неверно. Supported players are: mpv, VLC, MPC-HC, MPC-BE and mplayer2", # To do: Translate end
|
||||
"no-file-path-config-error" : u"Файл должен быть указан до включения проигрывателя",
|
||||
"no-hostname-config-error": u"Имя сервера не может быть пустым",
|
||||
"invalid-port-config-error" : u"Неверный номер порта",
|
||||
|
@ -151,7 +152,7 @@ ru = {
|
|||
"failed-to-load-server-list-error" : u"Не удалось загрузить список публичных серверов. Откройте http://www.syncplay.pl/ через браузер.",
|
||||
|
||||
# Client arguments
|
||||
"argument-description" : u'Решение для синхронного воспроизведения в VLC, MPlayer или MPC-HC через Интернет.',
|
||||
"argument-description" : u'Решение для синхронного воспроизведения в VLC, MPlayer или MPC-HC/BE через Интернет.',
|
||||
"argument-epilog" : u'Если параметр не будет передан, то будет использоваться значение, указанное в _config.',
|
||||
"nogui-argument" : u'не использовать GUI',
|
||||
"host-argument" : u'адрес сервера',
|
||||
|
@ -195,7 +196,7 @@ ru = {
|
|||
"filename-privacy-label" : u"Имя файла:",
|
||||
"filesize-privacy-label" : u"Размер файла:",
|
||||
"checkforupdatesautomatically-label" : u"Проверять обновления автоматически",
|
||||
"slowondesync-label" : u"Замедлять при небольших рассинхронизациях (не поддерживаетя в MPC-HC)",
|
||||
"slowondesync-label" : u"Замедлять при небольших рассинхронизациях (не поддерживаетя в MPC-HC/BE)",
|
||||
"rewindondesync-label" : u"Перемотка при больших рассинхронизациях (настоятельно рекомендуется)",
|
||||
"dontslowdownwithme-label" : u"Никогда не замедлять и не перематывать видео другим (функция тестируется)",
|
||||
"pausing-title" : u"Приостановка",
|
||||
|
@ -322,7 +323,7 @@ ru = {
|
|||
"password-tooltip" : u"Пароли нужны для подключения к приватным серверам.",
|
||||
"room-tooltip" : u"Комната, в которую Вы попадете сразу после подключения. Синхронизация возможна только между людьми в одной и той же комнате.",
|
||||
|
||||
"executable-path-tooltip" : u"Расположение Вашего видеопроигрывателя (MPC-HC, VLC, mplayer2 или mpv).",
|
||||
"executable-path-tooltip" : u"Расположение Вашего видеопроигрывателя (MPC-HC, MPC-BE, VLC, mplayer2 или mpv).",
|
||||
"media-path-tooltip" : u"Расположение видеофайла или потока для просмотра. Обязательно для mplayer2.", # TODO: Confirm translation
|
||||
"player-arguments-tooltip" : u"Передавать дополнительные аргументы командной строки этому проигрывателю.",
|
||||
"mediasearcdirectories-arguments-tooltip" : u"Папки, где Syncplay будет искать медиа файлы, включая подпапки.",
|
||||
|
@ -334,7 +335,7 @@ ru = {
|
|||
"privacy-sendhashed-tooltip" : u"Отправляет хэш-сумму этой информации, делая ее невидимой для других пользователей.",
|
||||
"privacy-dontsend-tooltip" : u"Не отправлять эту информацию на сервер. Предоставляет наибольшую приватность.",
|
||||
"checkforupdatesautomatically-tooltip" : u"Syncplay будет регулярно заходить на сайт и проверять наличие новых версий.",
|
||||
"slowondesync-tooltip" : u"Временно уменьшить скорость воспроизведения в целях синхронизации с другими зрителями. Не поддерживается в MPC-HC.",
|
||||
"slowondesync-tooltip" : u"Временно уменьшить скорость воспроизведения в целях синхронизации с другими зрителями. Не поддерживается в MPC-HC/BE.",
|
||||
"dontslowdownwithme-tooltip" : u"Ваши лаги не будут влиять на других зрителей.",
|
||||
"pauseonleave-tooltip" : u"Приостановить воспроизведение, если Вы покинули комнату или кто-то из зрителей отключился от сервера.",
|
||||
"readyatstart-tooltip" : u"Отметить Вас готовым к просмотру сразу же (по умолчанию Вы отмечены не готовым)",
|
||||
|
@ -383,7 +384,7 @@ ru = {
|
|||
"no-salt-notification" : u"ВНИМАНИЕ: Чтобы сгенерированные сервером пароли операторов комнат работали после перезагрузки сервера, необходимо указать следующий аргумент командной строки при запуске сервера Syncplay: --salt {}", #Salt
|
||||
|
||||
# Server arguments
|
||||
"server-argument-description" : u'Решение для синхронного воспроизведения в VLC, MPlayer или MPC-HC через Интернет. Серверная часть',
|
||||
"server-argument-description" : u'Решение для синхронного воспроизведения в VLC, MPlayer или MPC-HC/BE через Интернет. Серверная часть',
|
||||
"server-argument-epilog" : u'Если параметр не будет передан, то будет использоваться значение, указанное в _config.',
|
||||
"server-port-argument" : u'номер TCP порта сервера',
|
||||
"server-password-argument" : u'пароль к серверу',
|
||||
|
|
|
@ -6,6 +6,11 @@ try:
|
|||
except ImportError:
|
||||
from syncplay.players.basePlayer import DummyPlayer
|
||||
MPCHCAPIPlayer = DummyPlayer
|
||||
try:
|
||||
from syncplay.players.mpcbe import MpcBePlayer
|
||||
except ImportError:
|
||||
from syncplay.players.basePlayer import DummyPlayer
|
||||
MpcBePlayer = DummyPlayer
|
||||
|
||||
def getAvailablePlayers():
|
||||
return [MPCHCAPIPlayer, MplayerPlayer, MpvPlayer, VlcPlayer]
|
||||
return [MPCHCAPIPlayer, MplayerPlayer, MpvPlayer, VlcPlayer, MpcBePlayer]
|
||||
|
|
|
@ -327,6 +327,10 @@ class MPCHCAPIPlayer(BasePlayer):
|
|||
self.__versionUpdate = threading.Event()
|
||||
self.__fileUpdate = threading.RLock()
|
||||
self.__versionUpdate.clear()
|
||||
|
||||
@staticmethod
|
||||
def getMinVersionErrorMessage():
|
||||
return getMessage("mpc-version-insufficient-error").format(constants.MPC_MIN_VER)
|
||||
|
||||
def drop(self):
|
||||
self.__preventAsking.set()
|
||||
|
@ -365,7 +369,7 @@ class MPCHCAPIPlayer(BasePlayer):
|
|||
def __dropIfNotSufficientVersion(self):
|
||||
self._mpcApi.askForVersion()
|
||||
if not self.__versionUpdate.wait(0.1) or not self._mpcApi.version:
|
||||
self.reactor.callFromThread(self.__client.ui.showErrorMessage, getMessage("mpc-version-insufficient-error").format(constants.MPC_MIN_VER), True)
|
||||
self.reactor.callFromThread(self.__client.ui.showErrorMessage, self.getMinVersionErrorMessage(), True)
|
||||
self.reactor.callFromThread(self.__client.stop, True)
|
||||
|
||||
def __testMpcReady(self):
|
||||
|
@ -382,7 +386,7 @@ class MPCHCAPIPlayer(BasePlayer):
|
|||
self.reactor.callFromThread(self.__client.ui.showErrorMessage, err.message, True)
|
||||
self.reactor.callFromThread(self.__client.stop)
|
||||
|
||||
def initPlayer(self, filePath):
|
||||
def initPlayer(self, filePath):
|
||||
self.__dropIfNotSufficientVersion()
|
||||
if not self._mpcApi.version:
|
||||
return
|
||||
|
|
|
@ -0,0 +1,50 @@
|
|||
from syncplay import constants
|
||||
import os.path
|
||||
from syncplay.messages import getMessage
|
||||
from syncplay.players.mpc import MPCHCAPIPlayer
|
||||
|
||||
class MpcBePlayer(MPCHCAPIPlayer):
|
||||
@staticmethod
|
||||
def run(client, playerPath, filePath, args):
|
||||
args.extend(['/open', '/new'])
|
||||
mpc = MpcBePlayer(client)
|
||||
mpc._mpcApi.callbacks.onConnected = lambda: mpc.initPlayer(filePath if filePath else None)
|
||||
mpc._mpcApi.startMpc(MpcBePlayer.getExpandedPath(playerPath), args)
|
||||
client.initPlayer(mpc)
|
||||
return mpc
|
||||
|
||||
@staticmethod
|
||||
def getDefaultPlayerPathsList():
|
||||
return constants.MPC_BE_PATHS
|
||||
|
||||
@staticmethod
|
||||
def getIconPath(path):
|
||||
return constants.MPC_BE_ICONPATH
|
||||
|
||||
@staticmethod
|
||||
def isValidPlayerPath(path):
|
||||
if MpcBePlayer.getExpandedPath(path):
|
||||
return True
|
||||
return False
|
||||
|
||||
@staticmethod
|
||||
def getExpandedPath(path):
|
||||
if os.path.isfile(path):
|
||||
if path.lower().endswith(u'mpc-be.exe'.lower()) or path.lower().endswith(u'mpc-be64.exe'.lower()):
|
||||
return path
|
||||
if os.path.isfile(path + u"mpc-be.exe"):
|
||||
path += u"mpc-be.exe"
|
||||
return path
|
||||
if os.path.isfile(path + u"\\mpc-be.exe"):
|
||||
path += u"\\mpc-be.exe"
|
||||
return path
|
||||
if os.path.isfile(path + u"mpc-be64.exe"):
|
||||
path += u"mpc-be64.exe"
|
||||
return path
|
||||
if os.path.isfile(path + u"\\mpc-be64.exe"):
|
||||
path += u"\\mpc-be64.exe"
|
||||
return path
|
||||
|
||||
@staticmethod
|
||||
def getMinVersionErrorMessage():
|
||||
return getMessage("mpc-be-version-insufficient-error").format(constants.MPC_BE_MIN_VER)
|
Loading…
Reference in New Issue