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; }
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; } }