public void GetAlbumArt(string artist) { _currentThumbFileName = Utils.GetCoverArtName(Thumbs.MusicArtists, artist); if (_currentThumbFileName.Length > 0) { // let us test if there is a larger cover art image var strLarge = Utils.ConvertToLargeCoverArt(_currentThumbFileName); if (File.Exists(strLarge)) { _currentThumbFileName = strLarge; } AddImageToImagePathContainer(_currentThumbFileName); } UpdateImagePathContainer(); }
public void GetAlbumArt() { _currentTrackFileName = g_Player.CurrentFile; _nextTrackFileName = PlayListPlayer.SingletonPlayer.GetNext(); GetTrackTags(); _currentThumbFileName = GUIMusicBaseWindow.GetCoverArt(false, _currentTrackFileName, _currentTrackTag); if (_currentThumbFileName.Length > 0) { // let us test if there is a larger cover art image var strLarge = Utils.ConvertToLargeCoverArt(_currentThumbFileName); if (File.Exists(strLarge)) { _currentThumbFileName = strLarge; } AddImageToImagePathContainer(_currentThumbFileName); } UpdateImagePathContainer(); }
private void GetTrackTags() { if (!g_Player.Playing) { _currentTrackTag = null; _nextTrackTag = null; return; } var isCurSongCdTrack = IsCdTrack(); var isNextSongCdTrack = IsCdTrack(); var isInternetStream = Utils.IsAVStream(_currentTrackFileName); var dbs = MusicDatabase.Instance; if (!isCurSongCdTrack && !isInternetStream) { var currentTitle = GUIPropertyManager.GetProperty("#Play.Current.Title"); var currentArtist = GUIPropertyManager.GetProperty("#Play.Current.Artist"); _currentTrackTag = GetTrackTag(dbs, _currentTrackFileName, true, currentTitle, currentArtist); } if (!isNextSongCdTrack && !isInternetStream) { var nextTitle = GUIPropertyManager.GetProperty("#Play.Next.Title"); var nextArtist = GUIPropertyManager.GetProperty("#Play.Next.Artist"); _nextTrackTag = GetTrackTag(dbs, _nextTrackFileName, true, nextTitle, nextArtist); } if (isCurSongCdTrack || isNextSongCdTrack) { var curPlaylist = _playlistPlayer.GetPlaylist(PlayListType.PLAYLIST_MUSIC); var iCurItemIndex = _playlistPlayer.CurrentSong; var curPlaylistItem = curPlaylist[iCurItemIndex]; if (curPlaylistItem == null) { _currentTrackTag = null; _nextTrackTag = null; return; } var playListItemCount = curPlaylist.Count; var nextItemIndex = 0; if (iCurItemIndex < playListItemCount - 1) { nextItemIndex = iCurItemIndex + 1; } var nextPlaylistItem = curPlaylist[nextItemIndex]; if (isCurSongCdTrack) { _currentTrackTag = (MusicTag)curPlaylistItem.MusicTag; } if (isNextSongCdTrack && nextPlaylistItem != null) { _nextTrackTag = (MusicTag)nextPlaylistItem.MusicTag; } // There's no MusicTag info in the Playlist so check is we have a valid // GUIMusicFiles.MusicCD object if ((_currentTrackTag == null || _nextTrackTag == null) && GUIMusicFiles.MusicCD != null) { var curCDTrackNum = GetCDATrackNumber(_currentTrackFileName); var nextCDTrackNum = GetCDATrackNumber(_nextTrackFileName); if (curCDTrackNum < GUIMusicFiles.MusicCD.Tracks.Length) { var curTrack = GUIMusicFiles.MusicCD.getTrack(curCDTrackNum); _currentTrackTag = GetTrackTag(curTrack); } if (nextCDTrackNum < GUIMusicFiles.MusicCD.Tracks.Length) { var nextTrack = GUIMusicFiles.MusicCD.getTrack(nextCDTrackNum); _nextTrackTag = GetTrackTag(nextTrack); } } } // If we got an Internetstream and are playing via BASS Player // then receive the MusicTags from the stream if (isInternetStream && BassMusicPlayer.IsDefaultMusicPlayer) { _nextTrackTag = null; _currentTrackTag = BassMusicPlayer.Player.GetStreamTags(); } // Update _artist & _title UpdateArtistAndTitleFromTrackTag(); }