DirectX video rendering sample
This sample shows how to create a media sink that renders video output to a window using DirectX 11.
Specifically, this sample shows how to:
- Decode the video using the Media Foundation APIs
- Render the decoded video using the DirectX 11 APIs
- Output the video stream to multi-monitor displays
For more info about the concepts and APIs demonstrated in this sample, see the following topics:
Note This sample requires Microsoft Visual Studio 2013 or a later version (any SKU) and will not build in Microsoft Visual Studio Express 2013 for Windows .
Note The Windows-classic-samples repo contains a variety of code samples that exercise the various programming models, platforms, features, and components available in Windows and/or Windows Server. This repo provides a Visual Studio solution (SLN) file for each sample, along with the source files, assets, resources, and metadata needed to compile and run the sample. For more info about the programming models, platforms, languages, and APIs demonstrated in these samples, check out the documentation on the Windows Dev Center. This sample is provided as-is in order to indicate or demonstrate the functionality of the programming models and feature APIs for Windows and/or Windows Server. This sample was created for Windows 8.1 and/or Windows Server 2012 R2 using Visual Studio 2013, but in many cases it will run unaltered using later versions. This sample was created for Windows 8.1 and/or Windows Server 2012 R2 using Visual Studio 2013, but in many cases it will run unaltered using later versions. Please provide feedback on this sample!
To get a copy of Windows, go to Downloads and tools.
To get a copy of Visual Studio, go to Visual Studio Downloads.
Related technologies
Operating system requirements
Client
Windows 8.1
Server
Windows Server 2012 R2
Build the sample
To build this sample:
- Open the solutions (.sln) file titled DX11VideoRenderer.sln from Visual Studio. You'll find the solutions file in <install_root>\DX11VideoRenderer\C++.
- After the sample has loaded, press the F7 (or F6 for Visual Studio 2013) key or select Build Solution from the Build menu.
Run the sample
- Register the DLL by running the command
regsvr32 DX11VideoRenderer.dllfrom an elevated command prompt. - Run the
topoedit.exeprogram from the Windows SDK. - From the Topology menu, select "Add DX11 Video Renderer."
- When you are finished using the sample, unregister the DLL by running the command
regsvr32 /u DX11VideoRenderer.dllfrom an elevated command prompt.