public Download(string path, Mediaplayer mediaplayer)
 {
     InitializeComponent();
     this._path       = path;
     this._parentform = mediaplayer;
     mediaplayer.SaveDownloader(this);
 }
Exemple #2
0
 /// <summary>
 /// Stop musicplayer
 /// </summary>
 public void Stop()
 {
     if (State != PlayerState.Stop)
     {
         Mediaplayer.Stop();
         State = PlayerState.Stop;
     }
 }
Exemple #3
0
 /// <summary>
 /// Pause musicplayer
 /// </summary>
 public void Pause()
 {
     if (State != PlayerState.Pause)
     {
         Mediaplayer.Pause();
         State = PlayerState.Pause;
     }
 }
Exemple #4
0
        private void bClose_Click(object sender, EventArgs e)
        {
            if (mediaplayer != null)
            {
                mediaplayer.Close();
                mediaplayer = null;
            }

            // Close form
            this.Close();
        }
Exemple #5
0
        public void Run()
        {
            Console.SetWindowSize(80, 80);
            Console.Clear();
            Console.SetCursorPosition(0, 10);

            mediaplayer = new Mediaplayer("", "");
            try
            {
                mediaplayer.OnServerConnect    += new MP_OnServer(DoOnServerConnect);
                mediaplayer.OnServerDisconnect += new MP_OnServer(DoOnServerDisconnect);

                mediaplayer.OnStateChangeMediaplayer += new MP_OnStateChangeMediaplayer(DoOnStateChangeMediaplayer);

                mediaplayer.OnCurrentMediaItemChanged  += new PL_OnMediaItemChanged(DoOnCurrentMediaItemChanged);
                mediaplayer.OnPreviousMediaItemChanged += new PL_OnMediaItemChanged(DoOnPreviousMediaItemChanged);
                mediaplayer.OnNextMediaItemChanged     += new PL_OnMediaItemChanged(DoOnNextMediaItemChanged);

                mediaplayer.OnPlaylistStart += new MP_OnPlaylist(DoOnPlaylistStart);
                mediaplayer.OnPlaylistEnd   += new MP_OnPlaylist(DoOnPlaylistEnd);

                mediaplayer.OnMediaItemStartPlay += new MP_OnMediaItem(DoOnMediaItemStartPlay);
                mediaplayer.OnMediaItemEndPlay   += new MP_OnMediaItem(DoOnMediaItemEndPlay);
                mediaplayer.OnMediaItemSeekStart += new MP_OnMediaItem(DoOnMediaItemSeekStart);
                mediaplayer.OnMediaItemSeekEnd   += new MP_OnMediaItem(DoOnMediaItemSeekEnd);


                mediaplayer.OnTick += new MP_OnTick(DoOnTick);

                mediaplayer.RTMPServerLink = new ServerLink("rtmp://127.0.0.1:1935/vod");
                mediaplayer.Connect();

                NewPlaylist();

                // Wait until we are connected (needed because we run async)
                while (!mediaplayer.IsConnected && !mediaplayer.LastConnectFailed)
                {
                    Thread.Sleep(100);
                } //while

                //mediaplayer.ChangeCurrentMediaItemIndex(1);

                ExecMenu();
            }
            finally
            {
                // Needed to stop thread and stop the program
                if (mediaplayer != null)
                {
                    mediaplayer.Close();
                }
            }
        }
Exemple #6
0
        /// <summary>
        /// Start musicplayer
        /// </summary>
        public void Play()
        {
            if (Musicqueue.ActiveTrack == null)
            {
                NextTrack();

                if (Musicqueue.ActiveTrack == null)
                {
                    Stop();
                }
            }

            Mediaplayer.Play();
            State = PlayerState.Play;
        }
Exemple #7
0
        public MainForm()
        {
            InitializeComponent();

            // put key for bass.net here if you have them (oterwhise you'll see a nag screen)
            mediaplayer = new Mediaplayer("", "");

            lbPlaylist.Items.Clear();
            lConnectStatus.Text = "";
            lFilename.Text      = "";
            bTogglePlay.Text    = "Play";
            tbLog.Text          = "";
            lPrevious.Text      = "";
            lNext.Text          = "";
            lPreBuf.Visible     = false;

            NewPlaylist();
            tbVolume.Value = mediaplayer.Volume;
            UpdateScreenPlaylist();

            mediaplayer.OnServerConnect    += new MP_OnServer(DoOnServerConnect);
            mediaplayer.OnServerDisconnect += new MP_OnServer(DoOnServerDisconnect);

            mediaplayer.OnStateChangeMediaplayer    += new MP_OnStateChangeMediaplayer(MP_OnStateChangeMediaplayer);
            mediaplayer.OnControleButtonStateChange += new MP_OnControleButtonStateChange(MP_OnControleButtonStateChange);

            mediaplayer.OnCurrentMediaItemChanged  += new PL_OnMediaItemChanged(DoOnCurrentMediaItemChanged);
            mediaplayer.OnPreviousMediaItemChanged += new PL_OnMediaItemChanged(DoOnPreviousMediaItemChanged);
            mediaplayer.OnNextMediaItemChanged     += new PL_OnMediaItemChanged(DoOnNextMediaItemChanged);

            mediaplayer.OnPlaylistStart += new MP_OnPlaylist(DoOnPlaylistStart);
            mediaplayer.OnPlaylistEnd   += new MP_OnPlaylist(DoOnPlaylistEnd);

            mediaplayer.OnMediaItemStartPlay += new MP_OnMediaItem(DoOnMediaItemStartPlay);
            mediaplayer.OnMediaItemEndPlay   += new MP_OnMediaItem(DoOnMediaItemEndPlay);
            mediaplayer.OnMediaItemSeekStart += new MP_OnMediaItem(DoOnMediaItemSeekStart);
            mediaplayer.OnMediaItemSeekEnd   += new MP_OnMediaItem(DoOnMediaItemSeekEnd);
            mediaplayer.OnPreBuffer          += new MP_OnPreBuffer(MP_OnPreBuffer);

            mediaplayer.OnTick += new MP_OnTick(DoOnTick);

            mediaplayer.TriggerMediaItemEvents();
            mediaplayer.TriggerButtonStateEvent();

            mediaplayer.RTMPServerLink = new ServerLink("rtmp://127.0.0.1:1935/vod");
            mediaplayer.Connect();
        }
Exemple #8
0
        /// <summary>
        /// Play Previous Track
        /// </summary>
        public void PrevTrack()
        {
            Musicqueue.PrevTrack();

            // Check if there is a previous track
            if (Musicqueue.ActiveTrack != null)
            {
                Mediaplayer.Open(Musicqueue.ActiveTrack.Filepath);
                if (State == PlayerState.Play)
                {
                    Play();
                }
            }
            else
            {
                Stop();
            }
        }
Exemple #9
0
        private void DoOnTick(object sender)
        {
            try
            {
                int    p          = 0;
                string timePlayed = "00:00";
                string timeLeft   = "00:00";

                Mediaplayer mp = sender as Mediaplayer;
                if (mp != null)
                {
                    double duration = mp.Duration; // is in seconds
                    double pos      = 0.0;
                    if (!progressIsDragged && !mp.IsSeeking)
                    {
                        pos = mp.Position;
                    }
                    else
                    {
                        pos = (tbProgress.Value * duration) / tbProgress.Maximum;
                    }

                    if (pos >= 0 && pos <= duration) // valid position
                    {
                        p          = Convert.ToInt32((pos * tbProgress.Maximum) / duration);
                        timePlayed = Position2TimeStr(pos);
                        timeLeft   = Position2TimeStr(duration - pos);
                    }
                }

                if (tbProgress.Value != p)
                {
                    tbProgress.Value = p;
                }
                lTimeToGo.Text = timePlayed;
                lTimeLeft.Text = timeLeft;
            }
            catch (Exception e)
            {
                AddLogLine("Exception TestMediaPlayerSimple.WinForm.DoOnTick: " + e.ToString());
            }
        }
Exemple #10
0
        /// <summary>
        /// Play next track
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public void NextTrack(object sender = null, EventArgs e = null)
        {
            Musicqueue.NextTrack(this);

            // Check if there is a next track
            if (Musicqueue.RepeatTrack && Musicqueue.ActiveNode != null)
            {
                Musicqueue.ActiveNode = Musicqueue.ActiveNode.Previous;
            }
            else if (Musicqueue.RepeatQueue && Musicqueue.ActiveNode == Musicqueue.Queue.Last)
            {
                Musicqueue.ActiveNode  = Musicqueue.Queue.First;
                Musicqueue.ActiveTrack = Musicqueue.ActiveNode.Value;
                NextTrack();
            }

            Mediaplayer.Open(Musicqueue.ActiveTrack.Filepath);
            if (State == PlayerState.Play)
            {
                Play();
            }
        }
Exemple #11
0
 public void SetActiveTrackInPlayableContainer(Track track)
 {
     Musicqueue.FindActiveNode(track);
     Musicqueue.ActiveTrack = track;
     Mediaplayer.Open(new Uri(@"file:///" + track.audio));
 }
Exemple #12
0
        private void DoOnTick(object sender)
        {
            int l = Console.CursorLeft;
            int t = Console.CursorTop;

            try
            {
                Mediaplayer mp = sender as Mediaplayer;
                if (mp != null)
                {
                    Console.SetCursorPosition(0, 0);

                    MediaItem item = mp.CurrentMediaItem;
                    if (item != null)
                    {
                        Console.Write("Playing now : " + item.MediaFile);
                    }
                    else
                    {
                        Console.Write("".PadLeft(Console.WindowWidth));
                    }

                    Console.SetCursorPosition(0, 1);
                    double pos      = mp.Position;
                    double duration = mp.Duration;
                    if (pos >= 0 && pos <= duration) // valid position
                    {
                        int p = 0;
                        if (duration > 0)
                        {
                            p = Convert.ToInt32((25 * pos) / duration);
                        }
                        string slider = "".PadLeft(p, '-') + "|" + "".PadLeft(25 - p, '-');
                        Console.Write(string.Format("{0} [{1}] {2} ({3})", Position2TimeStr(pos), slider, Position2TimeStr(duration - pos), Position2TimeStr(duration)));
                    }

                    Console.SetCursorPosition(0, 2);
                    Console.Write("".PadLeft(Console.WindowWidth));

                    Console.SetCursorPosition(0, 3);
                    Console.Write("Next     : ");
                    item = mp.NextMediaItem;
                    if (item != null)
                    {
                        Console.Write(item.MediaFile);
                    }
                    else
                    {
                        Console.Write("".PadLeft(Console.WindowWidth - Console.CursorLeft));
                    }

                    Console.SetCursorPosition(0, 4);
                    Console.Write("Previous : ");
                    item = mp.PreviousMediaItem;
                    if (item != null)
                    {
                        Console.Write(item.MediaFile);
                    }
                    else
                    {
                        Console.Write("".PadLeft(Console.WindowWidth - Console.CursorLeft));
                    }

                    Console.SetCursorPosition(0, 5);
                    Console.Write("State    : " + mp.MediaplayerState.ToString());
                    Console.Write("".PadLeft(40 - Console.CursorLeft));
                    Console.Write("Volume   : " + mp.Volume.ToString());
                    Console.Write("".PadLeft(Console.WindowWidth - Console.CursorLeft));
                }

                Console.SetCursorPosition(0, 6);
                Console.Write("".PadLeft(Console.WindowWidth));
                Console.SetCursorPosition(0, 7);
                Console.Write("".PadLeft(Console.WindowWidth));

                Console.SetCursorPosition(0, 8);
                if (mp.IsPlaying)
                {
                    Console.Write("P=Pause | Z=Stop | <=Previous | >=Next | S=Seek(15) | +-=Volume");
                }
                else if (mp.IsPausing)
                {
                    Console.Write("P=Play | Z=Stop | <=Previous | >=Next | S=Seek(15) | +-=Volume");
                }
                else // stopped
                {
                    Console.Write("P=Play | <=Previous | >=Next | S=Seek(15) | +-=Volume");
                }
                Console.Write("| Q=Quit".PadLeft(Console.WindowWidth - Console.CursorLeft));

                Console.SetCursorPosition(0, 9);
                Console.Write("".PadLeft(Console.WindowWidth, '='));
            }
            finally
            {
                Console.SetCursorPosition(l, t);
            }
        }