コード例 #1
0
        private void AudioSourceOnTrackInfoChanged(object sender, TrackInfoChangedEventArgs trackInfoChangedEventArgs)
        {
            if (trackInfoChangedEventArgs == null)
            {
                Logger.Error("TrackInfoChanged event arg is empty");
                return;
            }

            if (trackInfoChangedEventArgs.TrackName == null)
            {
                trackInfoChangedEventArgs.TrackName = "";
                Logger.Warn("Track name is null");
            }

            if (trackInfoChangedEventArgs.Artist == null)
            {
                trackInfoChangedEventArgs.Artist = "";
                Logger.Warn("Artist is null");
            }

            Logger.Debug($"Track changed - Name: '{trackInfoChangedEventArgs.TrackName}', Artist: '{trackInfoChangedEventArgs.Artist}'");

            BeginInvoke(new Action(() =>
            {
                _trackModel.AlbumArt    = trackInfoChangedEventArgs.AlbumArt;
                _trackModel.Artist      = trackInfoChangedEventArgs.Artist;
                _trackModel.TrackName   = trackInfoChangedEventArgs.TrackName;
                _trackModel.TrackLength = trackInfoChangedEventArgs.TrackLength;
                _trackModel.AlbumName   = trackInfoChangedEventArgs.Album;
            }));
        }
コード例 #2
0
ファイル: MainControl.cs プロジェクト: einzruff/audio-band
        private void ConnectorOnTrackInfoChanged(object sender, TrackInfoChangedEventArgs trackInfoChangedEventArgs)
        {
            if (trackInfoChangedEventArgs?.TrackName == null || trackInfoChangedEventArgs?.Artist == null)
            {
                _logger.Warn($"Trackname or artist is null, track '{trackInfoChangedEventArgs?.TrackName}' artist '{trackInfoChangedEventArgs?.Artist}'");
                return;
            }

            _logger.Debug($"Track changed - Name: '{trackInfoChangedEventArgs.TrackName}', Artist: '{trackInfoChangedEventArgs.Artist}'");

            _albumArt = trackInfoChangedEventArgs.AlbumArt;
            _albumArtTooltip.AlbumArt = _albumArt;
            if (_albumArt == null)
            {
                _albumArt = DrawSvg(AlbumArtPlaceholderSvg);
            }

            BeginInvoke(new Action(() =>
            {
                _audioBandViewModel.NowPlayingText = new NowPlayingText
                {
                    Artist    = trackInfoChangedEventArgs.Artist,
                    TrackName = trackInfoChangedEventArgs.TrackName
                };

                UpdateAlbumArt(_albumArt);
            }));
        }
コード例 #3
0
        private void AudioSourceOnTrackInfoChanged(object sender, TrackInfoChangedEventArgs trackInfoChangedEventArgs)
        {
            if (trackInfoChangedEventArgs == null)
            {
                _logger.Error("TrackInforChanged event arg is empty");
                return;
            }

            if (trackInfoChangedEventArgs.TrackName == null)
            {
                trackInfoChangedEventArgs.TrackName = "";
                _logger.Warn("Track name is null");
            }

            if (trackInfoChangedEventArgs.Artist == null)
            {
                trackInfoChangedEventArgs.Artist = "";
                _logger.Warn("Artist is null");
            }

            _logger.Debug($"Track changed - Name: '{trackInfoChangedEventArgs.TrackName}', Artist: '{trackInfoChangedEventArgs.Artist}'");

            BeginInvoke(new Action(() =>
            {
                var art = trackInfoChangedEventArgs.AlbumArt ?? _appearance.AlbumArtAppearance.Placeholder;
                _appearance.AlbumArtAppearance.CurrentAlbumArt      = art;
                _appearance.AlbumArtPopupAppearance.CurrentAlbumArt = art;
                _albumArtTooltip.AlbumArt = _appearance.AlbumArtPopupAppearance.CurrentAlbumArt;

                _audioSourceStatus.Artist   = trackInfoChangedEventArgs.Artist;
                _audioSourceStatus.SongName = trackInfoChangedEventArgs.TrackName;
            }));
        }
コード例 #4
0
ファイル: AudioSource.cs プロジェクト: break7533/audio-band
        private void NotifyTrackChange(Track track)
        {
            var trackInfo = new TrackInfoChangedEventArgs
            {
                Artist      = track.Artist,
                Album       = track.Album,
                AlbumArt    = track.Artwork,
                TrackLength = track.Length,
                TrackName   = track.Name,
            };

            TrackInfoChanged?.Invoke(this, trackInfo);
        }
コード例 #5
0
        private void AudioSourceOnTrackInfoChanged(object sender, TrackInfoChangedEventArgs e)
        {
            if (e == null)
            {
                Logger.Error("TrackInfoChanged event arg is null");
                return;
            }

            Logger.Debug("Track changed. {track}", new { e.Artist, e.TrackName, e.Album, e.TrackLength });

            _uiDispatcher.InvokeAsync(() =>
            {
                _trackModel.AlbumArt    = e.AlbumArt;
                _trackModel.Artist      = e.Artist;
                _trackModel.TrackName   = e.TrackName;
                _trackModel.TrackLength = e.TrackLength;
                _trackModel.AlbumName   = e.Album;
            });
        }