21 lines
683 B
Python
21 lines
683 B
Python
import logging
|
|
|
|
from mopidy import backend
|
|
from mopidy_subidy import uri
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
|
|
class SubidyPlaybackProvider(backend.PlaybackProvider):
|
|
def __init__(self, *args, **kwargs):
|
|
super().__init__(*args, **kwargs)
|
|
self.subsonic_api = self.backend.subsonic_api
|
|
|
|
def translate_uri(self, translate_uri):
|
|
song_id = uri.get_song_id(translate_uri)
|
|
censored_url = self.subsonic_api.get_censored_song_stream_uri(song_id)
|
|
logger.debug("Loading song from subsonic with url: '%s'" % censored_url)
|
|
return self.subsonic_api.get_song_stream_uri(song_id)
|
|
|
|
def should_download(self, uri):
|
|
return True
|