public IEnumerable <Video> Get(string searchText) { var u = new YouTubeManager(); var r = u.SearchYouTubeAsync(searchText); return(r.Result.VideoResults); }
public ICompilation() { _database = new Database(); _redditManager = new RedditManager(); _twitchManager = new TwitchManager(); _videoManager = new VideoManager(); _youtubeManager = new YouTubeManager(); }
private void button1_Click_1(object sender, EventArgs e) { if (!string.IsNullOrEmpty(txYoutubeUrl.Text)) { TimeSpan?begin = txYoutubeFromSeconds.GetTimeSpan(); TimeSpan?endAt = txYoutubeToSeconds.GetTimeSpan(); var vidPath = YouTubeManager.DownloadAndConvert(txYoutubeUrl.Text, begin, endAt); DbController.AddMusicItem(vidPath); txYoutubeUrl.Text = string.Empty; MessageBox.Show(string.Format("{0} Successfully Downloaded !", Path.GetFileName(vidPath.FullFileName))); } }
/// <summary> /// Fills the list with default tracks /// </summary> private void FillDefaultTracks() { try { if (ysThread != null && ysThread.IsAlive) { ysThread.Abort(); } } catch (Exception exc) { U.L(LogLevel.Error, "YOUTUBE", "Could not abort search thread: " + exc.Message); } ThreadStart YouTubeThread = delegate() { Dispatcher.Invoke(DispatcherPriority.Background, new Action(delegate() { SearchOverlay = Visibility.Visible; })); try { ObservableCollection <TrackData> tracks = YouTubeManager.TopFeed("top_rated"); Dispatcher.Invoke(DispatcherPriority.Background, new Action(delegate() { //ClearSort(); ItemsSource = tracks; })); } catch (Exception e) { U.L(LogLevel.Warning, "YouTube", "Could not populate TopRated: " + e.Message); } Dispatcher.Invoke(DispatcherPriority.Background, new Action(delegate() { SearchOverlay = Visibility.Collapsed; })); }; ysThread = new Thread(YouTubeThread); ysThread.Name = "YouTube default"; ysThread.Priority = ThreadPriority.BelowNormal; ysThread.Start(); }
/// <summary> /// Invoked when the search delay is hit /// </summary> /// <param name="sender">The sender of the event</param> /// <param name="e">The event data</param> private void SearchDelay_Tick(object sender, EventArgs e) { searchDelay.Stop(); try { if (ysThread != null && ysThread.IsAlive) { ysThread.Abort(); } } catch { } ThreadStart searchThread = delegate() { Dispatcher.Invoke(DispatcherPriority.Background, new Action(delegate() { SearchOverlay = Visibility.Visible; })); try { ObservableCollection <TrackData> tracks = YouTubeManager.Search(searchText); Dispatcher.Invoke(DispatcherPriority.Background, new Action(delegate() { //ClearSort(); ItemsSource = tracks; })); } catch (Exception exc) { U.L(LogLevel.Warning, "YouTube", "Could not search: " + exc.Message); } Dispatcher.Invoke(DispatcherPriority.Background, new Action(delegate() { SearchOverlay = Visibility.Collapsed; })); }; ysThread = new Thread(searchThread); ysThread.Name = "YouTube search"; ysThread.Priority = ThreadPriority.BelowNormal; ysThread.Start(); }
/// <summary> /// Will load the current track into the youtube player if it is a youtube track /// </summary> public void LoadYouTube() { YouTubeManager.HasFlash = true; if (invokeAtLoad != null) { string function = invokeAtLoad[0] as string; object[] param = invokeAtLoad[1] as object[]; invokeAtLoad = null; InvokeScript(function, param); } if (YouTubeManager.IsYouTube(SettingsManager.CurrentTrack)) { string vid = YouTubeManager.GetYouTubeID(SettingsManager.CurrentTrack.Path); InvokeScript("setVolume", new object[] { SettingsManager.Volume }); InvokeScript("cueNewVideo", new object[] { vid, 0 }); SettingsManager.Seek = 0; } }
public void Init() { GetAccounts(); var option = new ChromeOptions { BinaryLocation = "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe" }; option.AddArgument("--disable-notifications"); option.AddArgument("--mute-audio"); option.AddArgument("--start-maximized"); _youTubeManager = new YouTubeManager(); _youTubeManager.SetContextBrowserManager(_chromeDriver); _chromeDriver = new ChromeDriver(PATH_TO_DRIVER, option, TimeSpan.FromSeconds(200)); _accounts = AccountService.GetAccounts().Where(w => w.AccountType == AccountType.YouTube).First(); }
/// <summary> /// Load control . /// </summary> private void LoadSocialBoxes() { List <String> cta_boxes = new List <String>(); int total_boxes = Convert.ToInt32(SocialBoxCount); if (!String.IsNullOrEmpty(CTAS)) { try{ cta_boxes = Regex.Split(CTAS, "{}").ToList(); } catch (Exception ex) { EventLogProvider.LogException("SocialApp control", "LoadSocialBoxes CTA", ex); } } int social_count = total_boxes - cta_boxes.Count(); List <String> obj_list = new List <String>(); if (!String.IsNullOrEmpty(InstagramUserID)) { try { InstagramManager imgr = new InstagramManager(InstagramOAuthConsumerID, InstagramOAuthConsumerSecret, RedirectURL); List <String> instgrm = imgr.GetRandom(Convert.ToInt32(InstagramUserID), total_boxes).ToList(); obj_list = obj_list.Concat(instgrm).ToList(); } catch (Exception ex) { EventLogProvider.LogException("SocialApp control", "LoadSocialBoxes Instagram", ex); } } if (!String.IsNullOrEmpty(TwitterUser)) { try { TwitterManager tm = new TwitterManager(TwitterOAuthConsumerID, TwitterOAuthConsumerSecret, TwitterOAuthAccessToken, TwitterOAuthAccessSecret); List <String> tweet = tm.GetRandomTweet(TwitterUser, total_boxes).ToList(); obj_list = obj_list.Concat(tweet).ToList(); } catch (Exception ex) { EventLogProvider.LogException("SocialApp control", "LoadSocialBoxes Twitter", ex); } } if (!String.IsNullOrEmpty(FacebookUserID)) { try { FacebookManager fmgr = new FacebookManager(FacebookAuthToken, FacebookAppID, FacebookClientSecret, FacebookRedirectURI); List <String> fbpost = fmgr.GetRandomPost(FacebookUserID, total_boxes).ToList(); obj_list = obj_list.Concat(fbpost).ToList(); } catch (Exception ex) { EventLogProvider.LogException("SocialApp control", "LoadSocialBoxes Facebook", ex); } } if (!String.IsNullOrEmpty(youtube_api_key)) { try { YouTubeManager ytmgr = new YouTubeManager(youtube_api_key); List <String> ytvideo = ytmgr.GetVideosByPlaylistID(youtube_playlist_id, total_boxes).ToList(); obj_list = obj_list.Concat(ytvideo).ToList(); } catch (Exception ex) { EventLogProvider.LogException("SocialApp control", "LoadSocialBoxes Youtube", ex); } } //Randomize the list of social items and take the top # of social boxes obj_list = obj_list.OrderBy(x => Guid.NewGuid()).Take(social_count).ToList(); //CTAs are always shown, add on to the end of the main list if (!String.IsNullOrEmpty(CTAS)) { OtherManager cta_build = new OtherManager(); List <String> ctas = cta_build.BuildCTAList(cta_boxes).ToList(); obj_list = obj_list.Concat(ctas).ToList(); } //If the number of boxes are less than the number requested, fill with backup images if ((obj_list.Count() < total_boxes) && !String.IsNullOrEmpty(BackupImages)) { try { int num_images = total_boxes - obj_list.Count(); OtherManager img_build = new OtherManager(); List <String> imgs = img_build.BuildImageList(s_images_list, num_images).ToList(); obj_list = obj_list.Concat(imgs).ToList(); } catch (Exception ex) { EventLogProvider.LogException("SocialApp control", "LoadSocialBoxes BackupImages", ex); } } //randomize again obj_list = obj_list.OrderBy(x => Guid.NewGuid()).ToList(); StringBuilder sb = new StringBuilder(); foreach (String s in obj_list) { sb.Append(s); } community_box_list.InnerHtml = sb.ToString(); }