コード例 #1
0
ファイル: Song.cs プロジェクト: adrianofs1972/spy-spotify
        public Song(Track track)
        {
            Album  = track?.AlbumResource?.Name;
            Artist = track?.ArtistResource?.Name;
            Title  = track?.TrackResource?.Name;

            Type     = track?.TrackType;
            Length   = track?.Length;
            IsAd     = (track?.IsAd() ?? false) && !(track?.TrackResource?.Uri != null && Type == "normal");
            IsOther  = track?.IsOtherTrackType() ?? false;
            IsNormal = Title != null && Artist != null;

            if (IsAd || IsOther)
            {
                return;
            }

            Task.Run(() => GetPictures(track));
        }
コード例 #2
0
        private bool IsNewTrack(SpotifyAPI.Local.Models.Track track)
        {
            if (track == null)
            {
                return(false);
            }

            var newSong = new Song(track);

            if (_currentSong.Equals(newSong))
            {
                _form.UpdateIconSpotify(_isPlaying, RecorderUpAndRunning);
                return(false);
            }

            _currentSong = newSong;
            _form.UpdatePlayingTitle(SongTitle);
            _sound.SetSpotifyToMute(AdPlaying);

            return(true);
        }
コード例 #3
0
        public async void UpdateTrack(SpotifyAPI.Local.Models.Track track, string urlTrack)
        {
            _currentTrack    = track;
            _currentUrlTrack = urlTrack;

            adLabel.Visible         = track.IsAd() ? true : false;
            progressBarSong.Maximum = track.Length;

            if (track.IsAd())
            {
                return; //Don't process further, maybe null values
            }
            lblJudul.Text = track.TrackResource.Name;

            lblArtis.Text = track.ArtistResource.Name;

            lblAlbum.Text = track.AlbumResource.Name;

            SpotifyAPI.Local.Models.SpotifyUri uri = track.TrackResource.ParseUri();
            pbTrack.Image = await track.GetAlbumArtAsync(SpotifyAPI.Local.Enums.AlbumArtSize.Size160);
        }
コード例 #4
0
ファイル: Song.cs プロジェクト: adrianofs1972/spy-spotify
        private async void GetPictures(Track track)
        {
            try
            {
                ArtLarge = await track?.GetAlbumArtAsByteArrayAsync(AlbumArtSize.Size160);
            }
            catch (Exception ex)
            {
                ArtLarge = null;
                Console.WriteLine(ex.Message);
            }

            try
            {
                ArtExtraLarge = await track?.GetAlbumArtAsByteArrayAsync(AlbumArtSize.Size320);
            }
            catch (Exception ex)
            {
                ArtExtraLarge = null;
                Console.WriteLine(ex.Message);
            }
        }
コード例 #5
0
ファイル: Song.cs プロジェクト: hanfeijp/spy-spotify
        public Song(Track track)
        {
            Album  = track?.AlbumResource?.Name;
            Artist = track?.ArtistResource?.Name;
            Title  = track?.TrackResource?.Name;

            Type     = track?.TrackType;
            Length   = track?.Length;
            IsAd     = track?.IsAd() ?? false;
            IsOther  = track?.IsOtherTrackType() ?? false;
            IsNormal = Artist != null && Title != null;

            if (IsAd || IsOther)
            {
                return;
            }

            try
            {
                ArtLarge = track?.GetAlbumArtAsByteArray(AlbumArtSize.Size160);
            }
            catch (Exception ex)
            {
                ArtLarge = null;
                Console.WriteLine(ex.Message);
            }

            try
            {
                ArtExtraLarge = track?.GetAlbumArtAsByteArray(AlbumArtSize.Size320);
            }
            catch (Exception ex)
            {
                ArtExtraLarge = null;
                Console.WriteLine(ex.Message);
            }
        }