Inheritance: YouTubeModel
 //Returns VideoInfo object (Only for audio model)
 public static VideoInfo GetVideoInfoAudioOnly(YouTubeAudioModel audioModel)
 {
     //We want the first extractable video with the highest audio quality.
      VideoInfo video = audioModel.VideoInfo
          .Where(info => info.CanExtractAudio)
          .OrderByDescending(info => info.AudioBitrate)
          .First();
      return video;
 }
        //Returns VideoInfo object (Only for audio model)
        public static VideoInfo GetVideoInfoAudioOnly(YouTubeAudioModel audioModel)
        {
            //We want the first extractable video with the highest audio quality.
            VideoInfo video = audioModel.VideoInfo
                              .Where(info => info.CanExtractAudio)
                              .OrderByDescending(info => info.AudioBitrate)
                              .First();

            return(video);
        }
Esempio n. 3
0
 private void Download(string validatedLink)
 {
     if (cboFileType.SelectedIndex == 0)
     {
         YouTubeVideoModel videoDownloader = new YouTubeVideoModel();
         videoDownloader.Link       = validatedLink;
         videoDownloader.FolderPath = txtDownloadFolder.Text;
         DownloadVideo(videoDownloader);
     }
     else
     {
         YouTubeAudioModel audioDownloader = new YouTubeAudioModel();
         audioDownloader.Link       = validatedLink;
         audioDownloader.FolderPath = txtDownloadFolder.Text;
         DownloadAudio(audioDownloader);
     }
 }
Esempio n. 4
0
 private void Download(string validatedLink)
 {
     if(cboFileType.SelectedIndex ==0)
     {
         YouTubeVideoModel videoDownloader = new YouTubeVideoModel();
         videoDownloader.Link = validatedLink;
         videoDownloader.FolderPath = txtDownloadFolder.Text;
         DownloadVideo(videoDownloader);
     }
     else
     {
         YouTubeAudioModel audioDownloader = new YouTubeAudioModel();
         audioDownloader.Link = validatedLink;
         audioDownloader.FolderPath = txtDownloadFolder.Text;
         //DownloadAudio(audioDownloader);
     }
 }
Esempio n. 5
0
        private void DownloadAudio(YouTubeAudioModel audioDownloader)
        {
            try
            {
                //Store VideoInfo object in model
                audioDownloader.VideoInfo = FileDownloader.GetVideoInfos(audioDownloader);

                //Stores VideoInfo object in model
                audioDownloader.Video = FileDownloader.GetVideoInfoAudioOnly(audioDownloader);


                //Updates lblUpdate to show title of video that is downloading
                UpdateLabel(audioDownloader.Video.Title + audioDownloader.Video.AudioExtension);


                //Stores FilePath in model
                audioDownloader.FilePath  = FileDownloader.GetPath(audioDownloader);
                audioDownloader.FilePath += audioDownloader.Video.AudioExtension;


                //Stores AudioDownloaderType object in model
                audioDownloader.AudioDownloaderType = FileDownloader.GetAudioDownloader(audioDownloader);

                //stop timer after download
                audioDownloader.AudioDownloaderType.DownloadFinished += (sender, args) => timer1.Stop();

                //Enable buttons once download is complete
                audioDownloader.AudioDownloaderType.DownloadFinished += (sender, args) => EnableAccessibility();
                audioDownloader.AudioDownloaderType.DownloadFinished += (sender, args) => OpenFolder(audioDownloader.FilePath);

                //Link progress bar up to download progress
                audioDownloader.AudioDownloaderType.DownloadProgressChanged += (sender, args) => pgDownload.Value = (int)args.ProgressPercentage;
                CheckForIllegalCrossThreadCalls = false;


                //Download audio
                FileDownloader.DownloadAudio(audioDownloader);
            }
            catch
            {
                MessageBox.Show("Download canceled.");
                EnableAccessibility();
            }
        }
Esempio n. 6
0
        private void DownloadAudio(YouTubeAudioModel audioDownloader)
        {
            try
            {
            //                //Store VideoInfo object in model
                  audioDownloader.VideoInfo = FileDownloader.GetVideoInfos(audioDownloader);

            //                //Stores VideoInfo object in model
                  audioDownloader.Video = FileDownloader.GetVideoInfoAudioOnly(audioDownloader);

            //                //Updates lblUpdate to show title of video that is downloading
                  UpdateLabel(audioDownloader.Video.Title + audioDownloader.Video.AudioExtension);

            //                //Stores FilePath in model
                  audioDownloader.FilePath = FileDownloader.GetPath(audioDownloader);
                  audioDownloader.FilePath += audioDownloader.Video.AudioExtension;

            //                //Stores AudioDownloaderType object in model
                 audioDownloader.AudioDownloaderType = FileDownloader.GetAudioDownloader(audioDownloader);

            //                //Enable buttons once download is complete
            //                audioDownloader.AudioDownloaderType.DownloadFinished += (sender, args) => EnableAccessibility();
            //                audioDownloader.AudioDownloaderType.DownloadFinished += (sender, args) => OpenFolder(audioDownloader.FilePath);

            //                //Link progress bar up to download progress
            //                audioDownloader.AudioDownloaderType.DownloadProgressChanged += (sender, args) => pgDownload.Value = (int)args.ProgressPercentage;
            //                CheckForIllegalCrossThreadCalls = false;

            //                //Download audio
                  FileDownloader.DownloadAudio(audioDownloader);
              }
              catch
              {
                 MessageBox.Show("Download canceled.");
                 EnableAccessibility();
              }
        }
 //Downloads Audio (Only for Audio model)
 public static void DownloadAudio(YouTubeAudioModel audioModel)
 {
     Task.Run(() => audioModel.AudioDownloaderType.Execute());
 }
 //Returns AudioDownloader object (Only for audio model)
 public static AudioDownloader GetAudioDownloader(YouTubeAudioModel audioModel)
 {
     //Create AudioDownloader object
     return(new AudioDownloader(audioModel.Video, audioModel.FilePath));
 }
Esempio n. 9
0
 private void DownloadAudio(YouTubeAudioModel audioDownloader)
 {
 }
Esempio n. 10
0
 private void DownloadAudio(YouTubeAudioModel audioDownloader)
 {
 }
 //Returns AudioDownloader object (Only for audio model)
 public static AudioDownloader GetAudioDownloader(YouTubeAudioModel audioModel)
 {
     //Create AudioDownloader object
      return new AudioDownloader(audioModel.Video, audioModel.FilePath);
 }
 //Downloads Audio (Only for Audio model)
 public static void DownloadAudio(YouTubeAudioModel audioModel)
 {
     Task.Run(() => audioModel.AudioDownloaderType.Execute());
 }