public AngleType(string name, VideoPlayerViewModel vm) { Name = name; IsChecked = true; CheckBoxEnabled = true; viewModel = vm; }
public ActionResult Index( [Bind(Prefix = AudioOnlyParamName)] string base64EncodedFilePath, [Bind(Prefix = VideoParamName)] string videoFilePathEncoded, [Bind(Prefix = AudioParamName)] string audioFilePathEncoded ) { if (base64EncodedFilePath != null) { SessionHelper.SaveObjectToSession(AudioPlayerDataSessionKey, base64EncodedFilePath); return(RedirectToAction(PlayAudioActionName)); } if (videoFilePathEncoded != null && audioFilePathEncoded != null) { var objectToSave = new VideoPlayerViewModel { AudioFilePathEncoded = audioFilePathEncoded, VideoFilePathEncoded = videoFilePathEncoded }; SessionHelper.SaveObjectToSession(VideoPlayerDataSessionKey, objectToSave); return(RedirectToAction(PlayVideoActionName)); } return(ServerError("Необходимо указать ссылки на файлы")); }
public ShellViewModel(MediaFileWatcher mediaFileWatcher, IRegionManager regionManager, IEventAggregator eventAggregator) { RegionManager = regionManager; EventAggregator = eventAggregator; ImageViewModel = new ImagePanel.ImageViewModel(eventAggregator); ImageViewModel.SelectedScaleMode = UserControls.ImagePanel.ScaleMode.UNSCALED; imageMediaStackPanelViewModel = new MediaFileStackPanelViewModel(MediaFileWatcher.Instance.MediaFileState, EventAggregator); imageMediaStackPanelViewModel.MediaStateCollectionView.FilterModes.MoveCurrentTo(MediaFilterMode.Images); VideoViewModel = new VideoPanel.VideoViewModel(EventAggregator); videoMediaStackPanelViewModel = new MediaFileStackPanelViewModel(MediaFileWatcher.Instance.MediaFileState, EventAggregator); videoMediaStackPanelViewModel.MediaStateCollectionView.FilterModes.MoveCurrentTo(MediaFilterMode.Video); MediaFileBrowserViewModel = new MediaFileBrowserViewModel(mediaFileWatcher, regionManager, eventAggregator); VideoPlayerViewModel.setLibAVLogCallback(Logger.Log); VideoPlayerViewModel.enableLibAVLogging(LogMessageModel.LogLevel.INFO); createDatabase(); VideoPlayer2.VideoPlayer2Test test = new VideoPlayer2.VideoPlayer2Test(); //test.Test(); //TestWindow window = new TestWindow(); //window.Show(); }
public LivePage() { InitializeComponent(); Title = "X1Viewer"; ViewModel = VideoPlayerViewModel.Instance; BindingContext = ViewModel; }
public VideoPlayerPage(Video selectedVideo) { InitializeComponent(); _viewModel = new VideoPlayerViewModel(Navigation, selectedVideo); BindingContext = _viewModel; }
private void SortFilterPopup_Closed_1(object sender, object e) { VideoPlayerViewModel vm = (VideoPlayerViewModel)this.DataContext; if (vm.FilteredClips.Any()) { vm.SetClip(vm.FilteredClips[0]); } }
public VideoPlayerPage() { InitializeComponent(); BindingContext = new VideoPlayerViewModel() { ContentType = Constants.ContentType.Remote, Source = "http://www.androidbegin.com/tutorial/AndroidCommercial.3gp" }; }
void OnPicture(object sender, EventArgs e) { var picturePage = new Camera(); //picturePage.BindingContext = new CameraViewModel(); VideoPlayerViewModel video = new VideoPlayerViewModel(); picturePage.BindingContext = new VideoPlayerViewModel(); Navigation.PushAsync(picturePage); }
public ActionResult PlayVideo() { VideoPlayerViewModel viewModel = SessionHelper.GetObjectFromSession <VideoPlayerViewModel>(VideoPlayerDataSessionKey); if (viewModel == null) { return(ServerError("Необходимо указать ссылки на файлы")); } return(View("~/Views/Default/VideoPlayer.cshtml", viewModel)); }
public void ComputeViewModel() { viewModel = new VideoPlayerViewModel() { IsLoading = true }; if (video != null) { viewModel.VideoSource = new Uri((video.hasExternalLink() == false ? "ms-appx://" + video.VideoUrl : video.VideoUrl), UriKind.Absolute); } DataContext = viewModel; }
private void initializeClipDataBar(VideoPlayerViewModel vm) { int i = 0; foreach (var header in vm.GridHeaders) { TextBlock textBlock_title = (TextBlock)XamlReader.Load(@"<TextBlock xmlns=""http://schemas.microsoft.com/winfx/2006/xaml/presentation"" Margin=""20,0,5,0"" FontWeight=""Bold"" Foreground=""{StaticResource HudlMediumGray}"" FontSize=""22"" Text=""{Binding GridHeaders[X]}""/>".Replace("X", i.ToString())); TextBlock textBlock_data = (TextBlock)XamlReader.Load(@"<TextBlock xmlns=""http://schemas.microsoft.com/winfx/2006/xaml/presentation"" DataContext=""{Binding SelectedClip}"" Margin=""5,0,10,0"" Foreground=""{StaticResource HudlMediumGray}"" FontSize=""22"" Text=""{Binding Path=breakDownData[X]}""/>".Replace("X", i.ToString())); ClipDataText.Children.Add(textBlock_title); ClipDataText.Children.Add(textBlock_data); i++; } }
public ActionResult VideoPlayerFrame(int id) { Video video = GetVideoById(id); var videoPlayerViewModel = new VideoPlayerViewModel { Name = video.Name, ReferenceID = video.ReferenceID, VideoPlayer = BuildPlayerJavaScript(video.ReferenceID) }; LogVideo(id); return(View(videoPlayerViewModel)); }
public VideoPlayer() { var app = Application.Current as App; if (app != null) { ViewModel = new VideoPlayerViewModel(app.AlarmEvents, app.Rtsp); } DataContext = ViewModel; InitializeComponent(); Dispatcher.ShutdownStarted += (s, e) => ViewModel?.Dispose(); }
private void initializeGrid(VideoPlayerViewModel vm) { Playlist playlist = vm.Parameter.playlist; double screenWidth = Window.Current.Bounds.Width; string[] displayColumns = playlist.displayColumns; var template = @"<DataTemplate xmlns=""http://schemas.microsoft.com/winfx/2006/xaml/presentation""> <Grid MinWidth='" + screenWidth + "'> <Grid.ColumnDefinitions> @ </Grid.ColumnDefinitions> % </Grid> </DataTemplate>"; string columnDefinitions = ""; string rowText = ""; if (displayColumns != null) { for (int i = 0; i < displayColumns.Length; i++) { ColumnDefinition col = new ColumnDefinition(); col.Width = new GridLength(130); gridHeaders.ColumnDefinitions.Add(col); columnDefinitions += String.Format(@"<ColumnDefinition Width=""{0}"" /> ", COLUMN_WIDTH); rowText = rowText + @"<TextBlock Grid.Column=""X"" HorizontalAlignment = ""Center"" TextWrapping=""NoWrap"" VerticalAlignment=""Center"" Text =""{Binding Path=breakDownData[X]}""/>".Replace("X", i.ToString()); Border b = new Border(); b.BorderBrush = new SolidColorBrush(Color.FromArgb(0xFF, 0, 0, 0)); b.BorderThickness = new Thickness(0, 0, 2, 0); TextBlock t = new TextBlock(); Run text = new Run(); vm.GridHeadersTextSorted.Add(trimHeaderText(displayColumns[i], true)); vm.GridHeadersTextUnsorted.Add(trimHeaderText(displayColumns[i], false)); text.Text = vm.GridHeadersTextUnsorted.Last(); t.Inlines.Add(text); b.SetValue(Grid.RowProperty, 0); b.SetValue(Grid.ColumnProperty, i); t.Style = (Style)Application.Current.Resources["VideoPlayer_TextBlockStyle_GridHeader"]; t.Tag = i; t.PointerReleased += columnHeaderClick; b.Child = t; t.FontSize = GRID_HEADER_FONT_SIZE; gridHeaders.Children.Add(b); } } template = template.Replace("@", columnDefinitions).Replace("%", rowText); var dt = (DataTemplate)XamlReader.Load(template); FilteredClips.ItemTemplate = dt; }
/// <summary> /// Invoked when this page is about to be displayed in a Frame. /// </summary> /// <param name="e">Event data that describes how this page was reached. The Parameter /// property is typically used to configure the page.</param> protected override void OnNavigatedTo(NavigationEventArgs e) { videoMediaElement.Width = Window.Current.Bounds.Width; videoMediaElement.Height = Window.Current.Bounds.Height; videoPlayerViewModel = (VideoPlayerViewModel)this.DataContext; videoPlayerViewModel.GridHeadersTextSorted = new List <string>(); videoPlayerViewModel.GridHeadersTextUnsorted = new List <string>(); initializeGrid(videoPlayerViewModel); initializeClipDataBar(videoPlayerViewModel); controlsFaded = false; videoPlayerViewModel.listView = FilteredClips; videoPlayerViewModel.SortFilterPopupControl = SortFilterPopup; videoPlayerViewModel.ColumnHeaderTextBlocks = gridHeaders.Children.Select(border => (TextBlock)((Border)border).Child).ToList <TextBlock>(); videoPlayerViewModel.setVideoMediaElement(videoMediaElement); videoPlayerViewModel.TopAppBar = TopAppBar; videoPlayerViewModel.BottomAppBar = BottomAppBar; }
/// <summary> /// Действие при старте просмотра /// </summary> public void Start() { if (CanStart is false) { return; } CreateList(); ActivateDeactivateTray((Window)((MainViewModel)Parent).GetView()); VideoPlayer = new VideoPlayerViewModel(this, WatchingEpisodesCount, CheckedEpisodes) { MainView = (Window)((MainViewModel)Parent).GetView() }; WinMan.ShowWindow(VideoPlayer); NotifyOfPropertyChange(() => EpisodesCountRemainingString); NotifyOfPropertyChange(() => CanStart); }
public VideoPlayerView() { InitializeComponent(); WindowStartupLocation = WindowStartupLocation.CenterScreen; var viewModel = new VideoPlayerViewModel(); this.DataContext = viewModel; this.ArchivePlayer.LoadedBehavior = MediaState.Manual; this.ArchivePlayer.UnloadedBehavior = MediaState.Manual; viewModel.Player = this.ArchivePlayer; viewModel.Player.Play(); if (viewModel.CloseAction == null) { viewModel.CloseAction = new Action(this.Close); } viewModel.Player.MediaOpened += viewModel.GetMediaDuration; viewModel.Player.MediaOpened += viewModel.HandlerTimerTick; DurationSlider.LostMouseCapture += viewModel.SliderLostMouseCaptureHandler; }
protected virtual void Dispose(bool cleanupManaged) { if (IsInitialized == false) return; if (cleanupManaged) { // cleanup unmanaged if (VideoPlayer != null) { CloseCommand.Execute(); VideoPlayer.StateChanged -= videoPlayer_StateChanged; VideoPlayer.PositionSecondsChanged -= videoPlayer_PositionSecondsChanged; VideoPlayer.DurationSecondsChanged -= videoPlayer_DurationSecondsChanged; VideoPlayer.HasAudioChanged -= videoPlayer_HasAudioChanged; VideoPlayer.Dispose(); VideoPlayer = null; } IsInitialized = false; } }
public void initializeVideoPlayer(VideoPlayerViewModel videoPlayer) { if (IsInitialized == true) return; this.VideoPlayer = videoPlayer; videoPlayer.StateChanged += videoPlayer_StateChanged; videoPlayer.IsBufferingChanged += videoPlayer_IsBufferingChanged; videoPlayer.PositionSecondsChanged += videoPlayer_PositionSecondsChanged; videoPlayer.DurationSecondsChanged += videoPlayer_DurationSecondsChanged; videoPlayer.HasAudioChanged += videoPlayer_HasAudioChanged; videoPlayer.IsMutedChanged += videoPlayer_IsMutedChanged; videoPlayer.VolumeChanged += videoPlayer_VolumeChanged; MinVolume = videoPlayer.MinVolume; MaxVolume = videoPlayer.MaxVolume; videoPlayer.IsMuted = IsMuted; videoPlayer.Volume = Volume; videoPlayer.MinNrBufferedPackets = Settings.Default.VideoMinBufferedPackets; //VideoSettings.MaxNrBufferedPackets = videoPlayer.MaxNrBufferedPackets; IsInitialized = true; isInitializedSignal.Release(); }
public VideoPlayerPage() { this.InitializeComponent(); _context = new VideoPlayerViewModel(); this.DataContext = _context; }
void LogLevel_CurrentChanged(object sender, EventArgs e) { VideoPlayerViewModel.enableLibAVLogging((LogMessageModel.LogLevel)ViewModel.LogLevel.CurrentItem); }