示例#1
0
        private void WirePlayer()
        {
            var wpfPlayer = new WpfMediaPlayer(this.videoPlayer);

            this.shellViewModel.SettingsViewModel.WhenAnyValue(x => x.DefaultPlaybackEngine)
            .Select <DefaultPlaybackEngine, IMediaPlayerCallback>(x =>
            {
                switch (x)
                {
                case DefaultPlaybackEngine.NAudio:
                    return(new NAudioMediaPlayer());

                case DefaultPlaybackEngine.Wpf:
                    return(wpfPlayer);
                }

                throw new NotImplementedException();
            }).Subscribe(x => this.shellViewModel.RegisterAudioPlayer(x));

            this.shellViewModel.RegisterVideoPlayer(wpfPlayer);
        }
示例#2
0
        private void WirePlayer()
        {
            var wpfPlayer = new WpfMediaPlayer(this.videoPlayer);
            this.shellViewModel.SettingsViewModel.WhenAnyValue(x => x.DefaultPlaybackEngine)
                .Select<DefaultPlaybackEngine, IMediaPlayerCallback>(x =>
                {
                    switch (x)
                    {
                        case DefaultPlaybackEngine.NAudio:
                            return new NAudioMediaPlayer();

                        case DefaultPlaybackEngine.Wpf:
                            return wpfPlayer;
                    }

                    throw new NotImplementedException();
                }).Subscribe(x => this.shellViewModel.RegisterAudioPlayer(x));

            this.shellViewModel.RegisterVideoPlayer(wpfPlayer);
        }