0
0
mirror of https://github.com/libretro/Lakka-LibreELEC.git synced 2025-02-07 22:09:50 +00:00
2024-11-14 22:22:38 +01:00

52 lines
1.3 KiB
Python

import event_handler
import librespot
import utils
class Service:
@utils.logged_method
def __init__(self, backend, device, file=""):
self.backend = backend
self.device = device
self.file = file
@utils.logged_method
def run(self):
if self.file:
player = utils.get_setting("player")
module_player = f"player_{player}"
else:
module_player = "player"
with event_handler.EventHandler(self) as self.event_handler:
with librespot.Librespot(self, self.backend, self.device) as self.librespot:
self.player = __import__(module_player).Player(self, self.file, self.librespot)
try:
yield
finally:
del self.player
def on_event_paused(self, **_):
pass
def on_event_playing(self, **_):
pass
def on_event_position_correction(self, **_):
pass
def on_event_seeked(self, **_):
pass
def on_event_stopped(self, **kwargs):
self.player.do_stopped(**kwargs)
def on_event_track_changed(self, **kwargs):
self.player.do_track_changed(**kwargs)
def on_librespot_started(self):
pass
def on_librespot_stopped(self):
pass