diff --git a/mopidy_touchscreen/main_screen.py b/mopidy_touchscreen/main_screen.py index c1c9bf8..d1d690b 100644 --- a/mopidy_touchscreen/main_screen.py +++ b/mopidy_touchscreen/main_screen.py @@ -2,6 +2,7 @@ import pygame import logging from mopidy.audio import PlaybackState from .dynamic_background import DynamicBackground +import musicbrainzngs as musicb logger = logging.getLogger(__name__) @@ -14,19 +15,26 @@ class MainScreen(): self.size=size self.manager=manager self.background=DynamicBackground() + self.track = None def update(self,core): screen = pygame.Surface(self.size) self.background.drawBackground(screen) text = pygame.font.SysFont("arial",20) - if(self.manager.track!=None): - text_surface=text.render(self.manager.track.track.name,False,(255,255,255)) + if(self.track!=None): + text_surface=text.render(self.track.album.musicbrainz_id,False,(255,255,255)) screen.blit(text_surface,(0,0)) - images=self.manager.track.track.album.images - if len(images)>0: - image = pygame.image.load(next(iter(images))) - screen.blit(image,(0,0)) + #logger.error(self.track.album.musicbrainz_id) return screen + def track_started(self,track): + self.track=track + self.downloadImage() + + def downloadImage(self): + logger.error("hemen nago") + logger.error(musicb.search_releases(artist=self.track.artist.name, limit=1)) + + diff --git a/mopidy_touchscreen/touch_screen.py~ b/mopidy_touchscreen/touch_screen.py~ index a046c14..314050a 100644 --- a/mopidy_touchscreen/touch_screen.py~ +++ b/mopidy_touchscreen/touch_screen.py~ @@ -3,7 +3,7 @@ import pykka import logging from threading import Thread import pygame -from .main_screen import MainScreen +from .screen_manager import ScreenManager from mopidy import core @@ -14,19 +14,18 @@ class TouchScreen(pykka.ThreadingActor, core.CoreListener): def __init__(self, config, core): super(TouchScreen, self).__init__() self.core = core + self.screen_size=(320, 240) def start_thread(self): + self.screen_manager = ScreenManager(self.screen_size) pygame.init() clock = pygame.time.Clock() - main_screen = MainScreen() - screen = pygame.display.set_mode((200,200)); + screen = pygame.display.set_mode(self.screen_size) while self.running: clock.tick(60) - screen.fill((255,255,255)) + screen.blit(self.screen_manager.update(self.core),(0,0)) pygame.display.flip() - logger.error("bukatzen") pygame.quit() - logger.error("bukatu dot") @@ -34,18 +33,12 @@ class TouchScreen(pykka.ThreadingActor, core.CoreListener): self.running=True self.thread = Thread(target=self.start_thread) self.thread.start() - + pass def on_stop(self): self.running = False def track_playback_started(self, tl_track): - pass - #myfont = pygame.font.SysFont("monospace", 15) - - # render text - #label = myfont.render(tl_track.track.name, 1, (255,255,0)) - #self.screen.blit(label, (100, 100)) - #pygame.display.flip() + self.screen_manager.track_started(tl_track)