예제 #1
0
 public void CreateFromYouTubeVideo(IYouTubeVideo iYouTubeVideo)
 {
     PlaylistItemId = iYouTubeVideo.PlaylistItemId;
     Title          = iYouTubeVideo.Title;
     VideoId        = iYouTubeVideo.VideoId;
     Url            = iYouTubeVideo.Url;
 }
예제 #2
0
파일: SYMM.cs 프로젝트: Kimmax/SYMM
        public void DownloadVideoNonBlocking(IYouTubeVideo video, ISYMMSettings settings)
        {
            VideoDownloader downloader = new VideoDownloader(video);
            downloader.DownloadProgressChanged += (s, e) =>
            {
                if (OnVideoDownloadProgressChanged != null)
                    OnVideoDownloadProgressChanged(this, e);
            };

            downloader.AudioExtractionProgressChanged += (s, e) =>
            {
                if (OnVideoAudioExtractionProgressChanged != null)
                    OnVideoAudioExtractionProgressChanged(this, e);
            };

            downloader.VideoDownloadComplete += (s, e) =>
            {
                if (OnVideoDownloadComplete != null)
                    OnVideoDownloadComplete(this, e);
            };

            downloader.VideoDownloadFailed += (s, e) =>
            {
                if (OnVideoDownloadFailed != null)
                    OnVideoDownloadFailed(this, e);
            };

            new Thread(() => { downloader.Execute(settings); }).Start();
        }
 public VideoInformationLoadedEventArgs(IYouTubeVideo video)
 {
     this.Video = video;
 }
예제 #4
0
파일: SYMM.cs 프로젝트: Kimmax/SYMM
        public void Execute(IYouTubeVideo video, ISYMMSettings settings)
        {
            VideoDownloader downloader = new VideoDownloader(video);
            downloader.DownloadProgressChanged += (s, e) =>
            {
                if (OnVideoDownloadProgressChanged != null)
                    OnVideoDownloadProgressChanged(this, e);
            };

            downloader.AudioExtractionProgressChanged += (s, e) =>
            {
                if (OnVideoAudioExtractionProgressChanged != null)
                    OnVideoAudioExtractionProgressChanged(this, e);
            };

            downloader.VideoDownloadComplete += (s, e) =>
            {
                if (OnVideoDownloadComplete != null)
                    OnVideoDownloadComplete(this, e);
            };

            downloader.VideoDownloadFailed += (s, e) =>
            {
                if (OnVideoDownloadFailed != null)
                    OnVideoDownloadFailed(this, e);
            };

            downloader.StreamPositionChanged += (s, e) =>
            {
                if (OnStreamPostionChanged != null)
                    OnStreamPostionChanged(this, e);
            };

            downloader.StreamFinished += (s, e) =>
            {
                if (OnStreamComplete != null)
                    OnStreamComplete(this, e);
            };

            downloader.Execute(settings);
            downloader = null;
        }
예제 #5
0
 public VideoDownloadFailedEventArgs(IYouTubeVideo video, Exception innerException)
 {
     this.Video = video;
     this.InnerException = innerException;
 }
 public void Remove(IYouTubeVideo video)
 {
     _videos.Remove(video);
 }
 public void Add(IYouTubeVideo video)
 {
     _videos = _videos ?? new List <IYouTubeVideo>();
     _videos.Add(video);
 }
예제 #8
0
파일: Downloader.cs 프로젝트: Kimmax/SYMM
 public VideoDownloader(IYouTubeVideo video)
 {
     this.video = video;
 }
예제 #9
0
 public DownloadProgressEventArgs(double progressPercentage, IYouTubeVideo video = null)
 {
     this.ProgressPercentage = progressPercentage;
     this.Video = video;
 }