Exemple #1
0
 public AngleType(string name, VideoPlayerViewModel vm)
 {
     Name            = name;
     IsChecked       = true;
     CheckBoxEnabled = true;
     viewModel       = vm;
 }
Exemple #2
0
        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();
        }
Exemple #4
0
        public LivePage()
        {
            InitializeComponent();
            Title = "X1Viewer";

            ViewModel      = VideoPlayerViewModel.Instance;
            BindingContext = ViewModel;
        }
Exemple #5
0
        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]);
            }
        }
Exemple #7
0
 public VideoPlayerPage()
 {
     InitializeComponent();
     BindingContext = new VideoPlayerViewModel()
     {
         ContentType = Constants.ContentType.Remote,
         Source      = "http://www.androidbegin.com/tutorial/AndroidCommercial.3gp"
     };
 }
Exemple #8
0
        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);
        }
Exemple #9
0
        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++;
            }
        }
Exemple #12
0
        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);
        }
Exemple #17
0
        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;
 }
Exemple #21
0
 void LogLevel_CurrentChanged(object sender, EventArgs e)
 {
     VideoPlayerViewModel.enableLibAVLogging((LogMessageModel.LogLevel)ViewModel.LogLevel.CurrentItem);
 }