Exemple #1
0
        public static async void AudioMediaPlaybackList_CurrentItemChanged(MediaPlaybackList sender, CurrentMediaPlaybackItemChangedEventArgs args)
        {
            if (args.NewItem == null)
            {
                RequestSyncPlayList();
                return;
            }

            NowPlaying = (int)HyPlayList.PlaybackList.CurrentItemIndex;
            if (!MPIToIndex.ContainsKey(args.NewItem))
            {
                return;
            }

            HyPlayItem hpi = List[MPIToIndex[args.NewItem]];
            AudioInfo  ai  = hpi.AudioInfo;

            //LoadSystemPlayBar(MPIToIndex[args.NewItem]);
            if (hpi.ItemType == HyPlayItemType.Netease && hpi.AudioInfo.Lyric == null)
            {
                PureLyricInfo lrcs = await LoadNCLyric(hpi);

                ai.Lyric   = lrcs.PureLyrics;
                ai.TrLyric = lrcs.TrLyrics;
            }
            //先进行歌词转换以免被搞
            Lyrics = Utils.ConvertPureLyric(ai.Lyric);
            Utils.ConvertTranslation(ai.TrLyric, Lyrics);
            hpi.AudioInfo = ai;
            //这里为调用订阅本事件的元素
            Invoke(() => OnPlayItemChange?.Invoke(hpi));
        }
Exemple #2
0
        public static async void LoadLyrics(HyPlayItem hpi)
        {
            if (hpi.ItemType == HyPlayItemType.Netease && hpi.AudioInfo.Lyric == null)
            {
                PureLyricInfo lrcs = await LoadNCLyric(hpi);

                hpi.AudioInfo.Lyric   = lrcs.PureLyrics;
                hpi.AudioInfo.TrLyric = lrcs.TrLyrics;
            }
            //先进行歌词转换以免被搞
            Lyrics = Utils.ConvertPureLyric(hpi.AudioInfo.Lyric);
            Utils.ConvertTranslation(hpi.AudioInfo.TrLyric, Lyrics);
            Invoke(() => OnLyricLoaded?.Invoke());
        }
Exemple #3
0
        public static async void LoadLyrics(HyPlayItem hpi)
        {
            if (hpi.ItemType == HyPlayItemType.Netease && hpi.AudioInfo.Lyric == null)
            {
                PureLyricInfo lrcs = await LoadNCLyric(hpi);

                hpi.AudioInfo.Lyric   = lrcs.PureLyrics;
                hpi.AudioInfo.TrLyric = lrcs.TrLyrics;
            }

            //先进行歌词转换以免被搞
            Lyrics = Utils.ConvertPureLyric(hpi.AudioInfo.Lyric);
            Utils.ConvertTranslation(hpi.AudioInfo.TrLyric, Lyrics);
            if (Lyrics.Count != 0 && Lyrics[0].LyricTime != TimeSpan.Zero)
            {
                Lyrics.Insert(0, new SongLyric()
                {
                    HaveTranslation = false, LyricTime = TimeSpan.Zero, PureLyric = ""
                });
            }
            lyricpos = 0;
            Common.Invoke(() => OnLyricLoaded?.Invoke());
        }