Exemple #1
0
 private void StopTrack()
 {
     if (StreamingPlayer.StopPlayer())
     {
         icon_playPause_button.Kind = (MaterialDesignThemes.Wpf.PackIconKind)Enum.Parse(typeof(MaterialDesignThemes.Wpf.PackIconKind), "Play");
         loadProgressTrackTimer.Stop();
     }
 }
Exemple #2
0
        public async void GoToNextTrack()
        {
            Track track = await StreamingPlayer.UploadNextTrack();

            if (track != null)
            {
                UpdateInfoPlayer(track);
                StartTrack();
            }
        }
Exemple #3
0
 public Main()
 {
     InitializeComponent();
     loadProgressTrackTimer              = new DispatcherTimer();
     loadProgressTrackTimer.Tick        += new EventHandler(PrintProgress);
     loadProgressTrackTimer.Interval     = new TimeSpan(0, 0, 0, 1);
     centralFrame.NavigationUIVisibility = NavigationUIVisibility.Hidden;
     StreamingPlayer.Initialize();
     LoadImageBytes();
     textBlock_NameUser.Text = "Hi, " + Session.consumer.GivenName;
 }
Exemple #4
0
 public void Button_track_playPause_Click(object sender, RoutedEventArgs e)
 {
     try {
         if (StreamingPlayer.IsTrackPlaying())
         {
             StopTrack();
         }
         else
         {
             StartTrack();
         }
     } catch (Exception ex) {
         Console.WriteLine(ex);
     }
 }
Exemple #5
0
        private void PrintProgress(object sender, EventArgs e)
        {
            TimeSpan timeSpan = TimeSpan.FromSeconds(StreamingPlayer.GetTotalSecondsTrack());

            TextBlock_final_duration.Text = string.Format("{0}:{1}", timeSpan.Duration().Minutes, timeSpan.Duration().Seconds);
            var      time        = StreamingPlayer.GetCurretTimeSeconds();
            TimeSpan timeInitial = TimeSpan.FromSeconds(time);

            TextBlock_initial_duration.Text = timeInitial.ToString(@"mm\:ss");
            Slider_track_duration.Value     = StreamingPlayer.GetCurretTimeForSlider();
            if (StreamingPlayer.IsTrackOver())
            {
                StopTrack();
                GoToNextTrack();
            }
        }
Exemple #6
0
        public static async Task <bool> UploadTrackAsync(Track track)
        {
            try {
                RequestTrackAudio requestTrackAudio = new RequestTrackAudio();
                requestTrackAudio.Filename = track.StoragePath;
                TrackAudio trackAudio = await Session.streamingServerConnection.streamingService.GetTrackAudioAsync(requestTrackAudio);

                byte[] bytes = trackAudio.Song;
                StreamingPlayer.StopPlayer();
                Mp3FileReader mp3Reader = new Mp3FileReader(new MemoryStream(bytes));
                waveStream = new WaveChannel32(mp3Reader);
                waveOutEvent.Init(waveStream);
                isTrackReady = true;
                StreamingPlayer.StartPlayer();
                return(true);
            } catch (Exception ex) {
                Console.WriteLine(ex);
                return(false);
            }
        }
Exemple #7
0
 public static async Task <Track> UploadNextTrack()
 {
     if (queueTracks.Count > 0)
     {
         StreamingPlayer.StopPlayer();
         Track track = queueTracks.Dequeue();
         StreamingPlayer.AddTrackToHistory(track);
         isTrackReady = false;
         if (await StreamingPlayer.UploadTrackAsync(track))
         {
             return(track);
         }
         else
         {
             return(null);
         }
     }
     else
     {
         return(null);
     }
 }
Exemple #8
0
 private void Slider_track_duration_ValueChanged(object sender, RoutedPropertyChangedEventArgs <double> e)
 {
     StreamingPlayer.UpdatePositionTrack(Slider_track_duration.Value);
 }
Exemple #9
0
 private void Slider_volume_ValueChanged(object sender, RoutedPropertyChangedEventArgs <double> e)
 {
     StreamingPlayer.UpdateVolume(Slider_volume.Value);
 }
Exemple #10
0
 public void Button_track_previous_Click(object sender, RoutedEventArgs e)
 {
     StreamingPlayer.RestartTrack();
 }