private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            if (_enableOverlay)
            {
                _d3DImageEx = new D3DImageEx();
                _D3D11Scene = new D3D11TestScene(1920, 1080);

                d3dScene.Source = _d3DImageEx;

                /* Set the backbuffer, which is a ID3D11Texture2D pointer */
                var renderTarget = _D3D11Scene.GetRenderTarget();
                var backBuffer   = _d3DImageEx.CreateBackBuffer(D3DResourceTypeEx.ID3D11Texture2D, renderTarget);

                _d3DImageEx.Lock();
                _d3DImageEx.SetBackBuffer(D3DResourceType.IDirect3DSurface9, backBuffer, _enableSoftwareFallback);
                _d3DImageEx.Unlock();

                _playback = new Playback(IntPtr.Zero, _enableOverlay);
                _playback.OnDrawSignalReceived += VideoSink_OnBeginDraw;

                CompositionTarget.Rendering += CompositionTarget_Rendering;
            }
            else
            {
                var windowHandle = new WindowInteropHelper(System.Windows.Application.Current.MainWindow).Handle;
                _playback = new Playback(windowHandle, _enableOverlay);
            }
        }
Esempio n. 2
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            if (_enableOverlay)
            {
                _d3DImageEx     = new D3DImageEx();
                d3dScene.Source = _d3DImageEx;
                _D3D11Scene     = new D3D11TestScene();

                /* Set the backbuffer, which is a ID3D11Texture2D pointer */
                var renderTarget = _D3D11Scene.GetRenderTarget();
                _d3DImageEx.SetBackBufferEx(D3DResourceTypeEx.ID3D11Texture2D, renderTarget);

                CompositionTarget.Rendering += CompositionTarget_Rendering;

                Playback playback = new Playback(renderTarget, _enableOverlay);
                playback.OnDrawSignalReceived += VideoSink_OnBeginDraw;
            }
            else
            {
                var      windowHandle = new WindowInteropHelper(System.Windows.Application.Current.MainWindow).Handle;
                Playback playback     = new Playback(windowHandle, _enableOverlay);
            }
        }