def addTrack(self, track):
     '''Adds a track to the list, the assigned index is returned.'''
     track_id = self._tracks.append(track)
     signals.emit('tracklist.trackadded', {
         'list_id': self._name,
         'track_id': track_id,
         'track': track
     })
     return track_id
Esempio n. 2
0
    def update(self, x, message):
        '''Function which is called when an observed objects sends an update.
        In this case, we only watch the self._musicplayer instance for status changes.'''

        #print "GOT AN UPDATE FROM SOMETHING..."+str(x)+" | "+str(message)
        if isinstance(x, MusicPlayer.MusicPlayer):
            if message == MusicPlayer.MusicPlayer.TRACKFINISHED:

                signals.emit("player.trackfinished")
                
                try:
                    self.nextTrack()
                except:
                    self.stop()
                    
            elif message == MusicPlayer.MusicPlayer.TRACKALMOSTFINISHED:
                #print "  Track almost finished"
                pass
Esempio n. 3
0
    def play(self):
        '''
        Start playing the currentTrack from the beginning of the song.
        If the player is already playing, calling this effect will have no effect.
        '''
        if self.state == PlayerStates.PLAYING:
            return
        
        if self._currentTrack == None:
            try:
                self.setTrackFromQueue()
            except:
                return
        
        if self.state == PlayerStates.PAUSED:
            self._musicplayer.resume()
        else:
            print(">>>>")
            self._musicplayer.play(self._currentTrack)
            signals.emit("player.play")

        self.state = PlayerStates.PLAYING
Esempio n. 4
0
 def addTrack(self, track):
     '''Adds a track to the list, the assigned index is returned.'''
     track_id = self._tracks.append(track)
     signals.emit('tracklist.trackadded', {'list_id': self._name, 'track_id': track_id, 'track': track})
     return track_id