public RenderViewModel GetRenderData(string vmName) { var client = new RestClient(APIPath); client.AddDefaultHeader("api-key", ApiKey); var request = new RestRequest("getrenderdata", Method.POST); request.AddParameter("machineName", vmName); var response = client.Execute(request); try { RenderViewModel renderData = JsonConvert.DeserializeObject <RenderViewModel>(response.Content); Library.WriteServiceLog("Got data from Render API"); LogRenderData(renderData); return(renderData); } catch (Exception e) { RenderViewModel rvm = new RenderViewModel() { FoundVideoToRender = false }; return(rvm); } }
public static void ConcatTest() { //This works. Test for three files with different aspect ratios. RenderViewModel renderDataa = new RenderViewModel() { RawFileNames = "17.MP4,19.MP4,20.MP4", ConvertedFileName = "helke_no_slate_long.mp4", Duration = 40, Start = 4236, FirstName = "Auggie", LastName = "Wolchansky", FoundVideoToRender = true, FuneralHomeName = "DevHome", ServiceId = 16, VideoQueId = 30, VideoQueType = VideoQueType.FullWithSlate, ServiceDate = DateTime.Now }; RenderVideo render = new RenderVideo(renderDataa); List <string> vids = new List <string>(); vids.Add("17.MP4"); vids.Add("19.MP4"); vids.Add("20.MP4"); //render.CreateSlideShow("Shane", "White", DateTime.Now, "Your Funeral Home Name", "slate.mp4"); render.ConcatenateVideoFiles(vids, true); //render.CreateSlideShow("Shane", "White", DateTime.Now, "Mollys Funeral Home", "slideshow.mp4"); //render.MergeSlateToService("slate.mp4", "hi.mp4", "output.mp4"); // render.StartRender(false); }
public PagerViewModel(RenderViewModel model, int totalItems) { // calculate total, start and end pages var totalPages = (int)Math.Ceiling((decimal)totalItems / (decimal)model.PageSize); var currentPage = model.CurrentPage; var startPage = currentPage - 5; var endPage = currentPage + 4; if (startPage <= 0) { endPage -= (startPage - 1); startPage = 1; } if (endPage > totalPages) { endPage = totalPages; if (endPage > 10) { startPage = endPage - 9; } } TotalItems = totalItems; CurrentPage = currentPage; PageSize = model.PageSize; TotalPages = totalPages; StartPage = startPage; EndPage = endPage; this.ControllerName = model.ControllerName; this.ActionName = model.ActionName; this.SearchOption = model.SearchOption; }
// Your application's entry point. Here you can initialize your MVVM framework, DI // container, etc. private static void AppMain(Application app, string[] args) { var schedule = Avalonia.Threading.AvaloniaScheduler.Instance; var ais = GetAvailableAis(); var aiList = AiListViewModel.Create(ais); var workManager = new WorkManager(); var simulatorSettings = new SimulatorSettingsViewModel(workManager, aiList.IsAnyAiSelected, aiList.SelectedAis, schedule); var renderCommand = ReactiveUI.ReactiveCommand.Create <SimulationRowViewModel>((simRow) => { var renderVm = new RenderViewModel(simRow.Ai, simRow.Simulation); var renderWindow = new RenderWindow { DataContext = new RenderWindowViewModel(renderVm) }; renderWindow.Show(); }); var simulationList = new SimulationListViewModel(workManager.Simulations.AsObservableList(), renderCommand); var window = new MainWindow { DataContext = new MainWindowViewModel(aiList, simulatorSettings, simulationList), Width = 600, Height = 400 }; app.Run(window); }
public DisplaySeriesViewModel(IEnumerable <DisplaySerieViewModel> series, RenderViewModel render, int totalItems) { this.Series = series; this.Pager = new PagerViewModel(render, totalItems); }
public AbstractRenderViewModel(IEnumerable <IDisplayable> entities, RenderViewModel render, int totalItems ) { this.Entities = entities; this.Pager = new PagerViewModel(render, totalItems); }
public DisplayAllMoviesViewModel(IEnumerable <IDisplayable> movies, RenderViewModel render, int totalItems ) { this.Movies = movies; this.Pager = new PagerViewModel(render, totalItems); }
public ActionResult Index() { var model = new RenderViewModel { Theme = AsyncHelpers.RunSync(() => _themeService.GetDefaultAsync()) }; return(View(model)); }
public StripRender(RenderViewModel RenderParameters) { _renderParameters = RenderParameters; _videoQid = _renderParameters.VideoQueId; _videoFiles = _renderParameters.RawFileNames.Split(','); if (ConfigurationManager.AppSettings["IsAzureVM"] != "false") { _isAzureVm = true; } }
private string GetIndex(RenderViewModel model) { return($"# {model.Name}\n" + $"Compared Specs: **{model.OldSpecIdentifier}** - **{model.NewSpecIdentifier}**\n" + "Report Result: " + $"<img src=\"https://img.shields.io/static/v1?label=&message={model.ChangeType.DiffResult}&color={GetColorForDiffResult(model.ChangeType.DiffResult)}&\" alt=\"{model.ChangeType.DiffResult}\">\n" + "## Added Endpoints\n" + $"{GetOperationOverview(model.NewEndpoints)}\n" + "## Removed Endpoints\n" + $"{GetOperationOverview(model.MissingEndpoints)}\n" + "## Deprecated Endpoints\n" + $"{GetOperationOverview(model.DeprecatedEndpoints)}\n" + "## Changed Endpoints\n" + $"{GetChangedOperationOverview(model.ChangedEndpoints)}"); }
public IViewComponentResult Invoke(RenderViewModel model) { int currentPage = model.CurrentPage; int pageSize = model.PageSize; var entities = model.Entities; var movies = entities.Skip((currentPage - 1) * pageSize) .Take(pageSize) .ToList(); int totalItems = entities.Count(); var viewModel = new AbstractRenderViewModel(movies, model, totalItems); return(this.View("Default", viewModel)); }
public ActionResult GetRenderData(string machineName) { var testQs = db.VideoQueues.ToList(); VideoQueue vq = db.VideoQueues.Where(q => q.VMName == machineName && q.VideoStatus == VideoQueueStatus.UploadedToAzureRenderFarm).FirstOrDefault(); RenderViewModel rvm = new RenderViewModel(); if (vq == null) { rvm.FoundVideoToRender = false; return(Json(rvm)); } Service service = db.Services.Where(s => s.Id == vq.VideoId).FirstOrDefault(); //If any of these conditions are null the database does not contain enough info to render the video if (service == null || service.Video == null || !service.Video.Stop.HasValue || !service.Video.Start.HasValue) { return(Json(rvm)); } rvm.FirstName = service.FirstName; rvm.LastName = service.LastName; rvm.FuneralHomeName = service.FuneralHome.Name; rvm.Start = (int)service.Video.Start.Value.TotalSeconds; rvm.Duration = (int)service.Video.Stop.Value.TotalSeconds; rvm.RawFileNames = vq.BlobPath; rvm.ConvertedFileName = service.Video.ConvertedFilePath; rvm.VideoQueId = vq.Id; rvm.ResourceGroupName = vq.ResourceGroupName; rvm.ServiceId = service.Id; rvm.ServiceDate = service.ServiceDate; rvm.VideoQueType = vq.VideoQueType; //If the video is uploaded to azure farm, its ready to be rendered. All other status mean it's either rendering or not ready. if (vq.VideoStatus == VideoQueueStatus.UploadedToAzureRenderFarm) { rvm.FoundVideoToRender = true; } else { rvm.FoundVideoToRender = false; } return(Json(rvm)); }
public static void CompleteTest() { RenderViewModel renderDataa = new RenderViewModel() { RawFileNames = "helke1.mp4,helke2.mp4", ConvertedFileName = "Helke320TestWithNoSlate.mp4", Duration = 0, Start = 0, FirstName = "Shane", LastName = "White", FoundVideoToRender = true, FuneralHomeName = "DevHome", ServiceId = 40, VideoQueId = 30, VideoQueType = VideoQueType.FullNoSlate, ServiceDate = DateTime.Now }; RenderVideo render = new RenderVideo(renderDataa); render.StartRender(false); }
public static void TrimTest() { RenderViewModel renderDataa = new RenderViewModel() { RawFileNames = "sintel.mp4", ConvertedFileName = "jan2nd_full_slate.mp4", Duration = 345, Start = 20, FirstName = "Auggie", LastName = "Wolchansky", FoundVideoToRender = true, FuneralHomeName = "DevHome", ServiceId = 16, VideoQueId = 30, VideoQueType = VideoQueType.FullWithSlate, ServiceDate = DateTime.Now }; RenderVideo render = new RenderVideo(renderDataa); render.TrimVideo("sintel_concat.mp4"); }
public static void Download() { string videoFiles = "7589_OurSavior_uploading_201809160802_48.mp4,7589_OurSavior_uploading_201809160802_48_1.mp4,7589_OurSavior_uploading_201809160802_48_2.mp4,7589_OurSavior_uploading_201809160802_48_3.mp4"; RenderViewModel renderDataa = new RenderViewModel() { RawFileNames = videoFiles, ConvertedFileName = "saviortest.mp4", Duration = 3768, Start = 0, FirstName = "Auggie", LastName = "Wolchansky", FoundVideoToRender = true, FuneralHomeName = "DevHome", ServiceId = 16, VideoQueId = 19, VideoQueType = VideoQueType.FullNoSlate }; RenderVideo renderer = new RenderVideo(renderDataa); string[] _videoFiles = videoFiles.Split(','); renderer.ConcatenateVideoFiles(_videoFiles.ToList(), true); }
private void LogRenderData(RenderViewModel renderData) { if (renderData.FoundVideoToRender == true) { Library.WriteServiceLog("Render Data: {"); Library.WriteServiceLog("FoundVideoToRender: " + renderData.FoundVideoToRender); Library.WriteServiceLog("FuneralHomeName: " + renderData.FuneralHomeName); Library.WriteServiceLog("FirstName: " + renderData.FirstName); Library.WriteServiceLog("LastName: " + renderData.LastName); Library.WriteServiceLog("RawFileNames: " + renderData.RawFileNames); Library.WriteServiceLog("ConvertedFileName: " + renderData.ConvertedFileName); Library.WriteServiceLog("Duration: " + renderData.Duration); Library.WriteServiceLog("ResourceGroupName: " + renderData.ResourceGroupName); Library.WriteServiceLog("ServiceDate: " + renderData.ServiceDate); Library.WriteServiceLog("ServiceId: " + renderData.ResourceGroupName); Library.WriteServiceLog("ServiceDate: " + renderData.ServiceDate); Library.WriteServiceLog("ServiceId: " + renderData.ServiceId); Library.WriteServiceLog("Start: " + renderData.Start); Library.WriteServiceLog("VideoQueId: " + renderData.VideoQueId); Library.WriteServiceLog("VideoQueType: " + renderData.VideoQueType); Library.WriteServiceLog("}"); } }
private void timer1_Tick(object sender, ElapsedEventArgs e) { var isAzureVM = ConfigurationManager.AppSettings["IsAzureVM"]; if (isAzureVM != "false") { //Each tick represents 30 seconds //Dont keep track of ticks on Machine that is always running ticks++; } string vmMachineName = Environment.MachineName; DataAccess da = new DataAccess(); if (GlobalVariables.IsRendering == false) { GlobalVariables.IsRendering = true; RenderViewModel renderData = da.GetRenderData(vmMachineName); if (renderData != null && renderData.FoundVideoToRender == true) { RenderVideo render = new RenderVideo(renderData); switch (renderData.VideoQueType) { case VideoQueType.FullNoSlate: render.StartRender(false); break; case VideoQueType.FullWithSlate: render.StartRender(true); break; case VideoQueType.AddSlate: render.AddSlate(); break; case VideoQueType.StripSlate: render.RemoveSlate(); break; case VideoQueType.ReEditSlate: render.EditSlate(); break; } } else { GlobalVariables.IsRendering = false; } } if (GlobalVariables.IsRendering == false && isAzureVM != "false") { //If the machine has been running for 20 minutes and isn't rendering something probably isn't right if (ticks == 40) { Library.WriteServiceLog("Machine has been running for 40 ticks. Sending an email to Shane"); da.SendErrorEmail("Render Machine: " + vmMachineName + " has been running for 20 minutes and has not begun to process the video. "); } if (ticks > 65) { Library.WriteServiceLog("Machine has been running for " + ticks + " without starting render process"); //Only send an email every 13 times so we don't blow through our email alloment if this runs for a while. if (ticks % 13 == 0) { da.SendErrorEmail("Render Machine: " + vmMachineName + " has been running for longer than 30 minutes and has not begun to process the video. Attempting to Shut Down machine"); } Library.WriteServiceLog("Attempting to shut down machine"); string rg = da.GetResourceGroupName(vmMachineName); ManageResourceGroup.StopVirtualMachine(rg, vmMachineName); } } //The machine should never be alive this long if (ticks == 960) { Library.WriteServiceLog("Machine has been running for 960 ticks. Sending an email to Shane"); da.SendErrorEmail("Render Machine: " + vmMachineName + " has been running for over 8 hours "); } if (ticks > 1000) { Library.WriteServiceLog("Machine has been running for " + ticks); //Only send an email every 25 times so we don't blow through our email alloment if this runs for a while. if (ticks % 50 == 0) { da.SendErrorEmail("Render Machine: " + vmMachineName + " has been running for longer than 8 hours. Attempting to Shut Down machine"); } Library.WriteServiceLog("Attempting to shut down machine"); string rg = da.GetResourceGroupName(vmMachineName); ManageResourceGroup.StopVirtualMachine(rg, vmMachineName); } }