protected void BuildVideoDetails(TimePeriod timePeriod, string compilationPath, string OutroPath, List <TwitchClip> twitchClips, TimeSpan contentLength, out string title, out string description, out List <string> youtubeTags) { Console.WriteLine("Building video details"); youtubeTags = DefaultTags.ToList(); title = TitlePrefix; switch (timePeriod) { case TimePeriod.Year: title += " " + (DateTime.UtcNow.Year - 1) + " Rewind"; youtubeTags.Add((DateTime.UtcNow.Year - 1).ToString()); youtubeTags.Add("rewind"); break; case TimePeriod.Month: DateTime monthDate = DateTime.UtcNow.Subtract(TimeSpan.FromDays(14)); title += " " + UtilMethods.GetMonth(monthDate) + " " + monthDate.Year + " Rewind"; youtubeTags.Add(UtilMethods.GetMonth(monthDate).ToString()); youtubeTags.Add(monthDate.Year.ToString()); youtubeTags.Add("rewind"); break; case TimePeriod.Week: DateTime weekDate = DateTime.UtcNow.Subtract(TimeSpan.FromDays(3)); title += " Week " + UtilMethods.GetWeekOfYear(weekDate) + " " + UtilMethods.GetMonth(weekDate) + " " + weekDate.Year + " Rewind"; youtubeTags.Add(UtilMethods.GetMonth(weekDate).ToString()); youtubeTags.Add(weekDate.Year.ToString()); youtubeTags.Add("rewind"); youtubeTags.Add("week"); break; case TimePeriod.Day: default: title += " #" + (_database.GetUploadsCount(ChannelName, timePeriod) + 1); break; } description = GetDescription(twitchClips, contentLength, compilationPath, title); youtubeTags = youtubeTags.Distinct().ToList(); Console.WriteLine("Finished building video details"); }