Beispiel #1
0
 private void timer_Tick(object sender, EventArgs e)
 {
     if (!Player.isStreamAdded)
     {
         return;
     }
     if (Player.tempStream != 0)
     {
         this.tb_Playing.Text = "当前播放:" + Player.tempName;
         this.pos             = Un4seen.Bass.Bass.BASS_ChannelBytes2Seconds(Player.tempStream, Un4seen.Bass.Bass.BASS_ChannelGetPosition(Player.tempStream));
         this.length          = Un4seen.Bass.Bass.BASS_ChannelBytes2Seconds(Player.tempStream, Un4seen.Bass.Bass.BASS_ChannelGetLength(Player.tempStream));
         this.tb_Pos.Text     = this.pos.ToString("0.0") + "/" + this.length.ToString("0.0");
         if (Player.isLrcExists)
         {
             if (!Lrc.isLrcCanParse)
             {
                 this.tb_Lrc.Text       = "检测到歌词文件,但解析错误!请检查歌词文件。";
                 this.tb_Lrc.Foreground = (Brush) new SolidColorBrush(Colors.Red);
             }
             else if (Lrc.ShowLrc(this.pos, Player.lrcList) != "lrccannotfind")
             {
                 this.tb_Lrc.Text = Lrc.ShowLrc(this.pos, Player.lrcList);
                 //this.tb_Lrc.Foreground = (Brush)new SolidColorBrush(Color.FromRgb((byte)this.color.Next((int)byte.MaxValue), (byte)this.color.Next((int)byte.MaxValue), (byte)this.color.Next((int)byte.MaxValue)));
             }
         }
         else
         {
             this.tb_Lrc.Text = "";
         }
     }
     else
     {
         this.tb_Playing.Text = "当前播放:" + Player.playList[Player.playListSelected];
         this.pos             = Un4seen.Bass.Bass.BASS_ChannelBytes2Seconds(Player.streams[Player.playListSelected], Un4seen.Bass.Bass.BASS_ChannelGetPosition(Player.streams[Player.playListSelected]));
         this.length          = Un4seen.Bass.Bass.BASS_ChannelBytes2Seconds(Player.streams[Player.playListSelected], Un4seen.Bass.Bass.BASS_ChannelGetLength(Player.streams[Player.playListSelected]));
         this.tb_Pos.Text     = this.pos.ToString("0.0") + "/" + this.length.ToString("0.0");
         if (Player.isLrcExists)
         {
             if (!Lrc.isLrcCanParse)
             {
                 this.tb_Lrc.Text       = "检测到歌词文件,但解析错误!请检查歌词文件。";
                 this.tb_Lrc.Foreground = (Brush) new SolidColorBrush(Colors.Red);
             }
             else if (Lrc.ShowLrc(this.pos, Player.lrcList) != "lrccannotfind")
             {
                 this.tb_Lrc.Text = Lrc.ShowLrc(this.pos, Player.lrcList);
                 //this.tb_Lrc.Foreground = (Brush)new SolidColorBrush(Color.FromRgb((byte)this.color.Next((int)byte.MaxValue), (byte)this.color.Next((int)byte.MaxValue), (byte)this.color.Next((int)byte.MaxValue)));
             }
         }
         else
         {
             this.tb_Lrc.Text = "";
         }
     }
     this.sl_Pos.Value = this.pos / this.length * 10.0;
 }
Beispiel #2
0
 public static void PlayReady(int stream, bool begin)
 {
     if (!Un4seen.Bass.Bass.BASS_ChannelPlay(stream, begin))
     {
         MessageBox.Show("文件异常,即将结束进程。", "冬青音乐播放器");
         File.Delete(AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "list");
         Process.GetCurrentProcess().Kill();
     }
     Player.lrcFileName = Player.playList[Player.playListSelected].Substring(0, Player.playList[Player.playListSelected].LastIndexOf("."));
     if (File.Exists(Player.lrcFileName + ".lrc"))
     {
         Player.isLrcExists = true;
         Player.lrcList     = Lrc.ParseLrc(Player.lrcFileName + ".lrc");
     }
     else
     {
         Player.isLrcExists = false;
     }
 }