Windows-driver-samples/avstream/sampledevicemft
Adonais Romero González 3fcc0f2bee
Remove x86 and ARM configurations for sample projects. (#1126)
* Removed Win32 and Arm from the project configurations.
* Set default platform to x64.
2024-02-26 09:47:25 -08:00
..
README.md Updated links to https (#448) 2020-01-06 14:41:24 -08:00
SampleDeviceMft.sln Remove x86 and ARM configurations for sample projects. (#1126) 2024-02-26 09:47:25 -08:00
SampleSocDeviceMFT.cpp [avstream] replacing mft0 with dmft (#1033) 2023-10-24 15:31:44 -07:00
SampleSocDeviceMFT.h [avstream] replacing mft0 with dmft (#1033) 2023-10-24 15:31:44 -07:00
SampleSocDeviceMFTutils.cpp [avstream] replacing mft0 with dmft (#1033) 2023-10-24 15:31:44 -07:00
Source.def Samples update for public Windows 10 release 2015-07-29 16:34:40 -07:00
basepin.cpp [avstream/sampledevicemft] Fix format change error for YUY2 (#984) 2023-08-25 15:16:49 -07:00
basepin.h [avstream/sampledevicemft] Fix format change error for YUY2 (#984) 2023-08-25 15:16:49 -07:00
common.h Change the locking scheme in DMFT to unlock in setoutputstreamstate (#810) 2023-02-07 15:44:24 -08:00
contosodevice.h Update all the AvStream samples for Vibranium. 2020-01-21 15:47:24 -08:00
custompin.cpp Update all the AvStream samples for Vibranium. 2020-01-21 15:47:24 -08:00
custompin.h Samples update for public Windows 10 release 2015-07-29 16:34:40 -07:00
dllmain.cpp Update all the AvStream samples for Vibranium. 2020-01-21 15:47:24 -08:00
mftpeventgenerator.cpp Updating Camera WDK Samples to RS3 version (#193) 2018-01-19 17:19:00 -08:00
mftpeventgenerator.h Samples update for public Windows 10 release 2015-07-29 16:34:40 -07:00
multipinmft.cpp Change the locking scheme in DMFT to unlock in setoutputstreamstate (#810) 2023-02-07 15:44:24 -08:00
multipinmft.h Change the locking scheme in DMFT to unlock in setoutputstreamstate (#810) 2023-02-07 15:44:24 -08:00
multipinmft.vcxproj Remove x86 and ARM configurations for sample projects. (#1126) 2024-02-26 09:47:25 -08:00
multipinmft.vcxproj.Filters Changed wil nuget package linking to git submodule (#515) 2020-06-11 10:26:18 -07:00
multipinmfthelpers.cpp [avstream/sampledevicemft] Fix format change error for YUY2 (#984) 2023-08-25 15:16:49 -07:00
multipinmfthelpers.h [avstream/sampledevicemft] Fix format change error for YUY2 (#984) 2023-08-25 15:16:49 -07:00
multipinmftutils.cpp [avstream/sampledevicemft] Fix format change error for YUY2 (#984) 2023-08-25 15:16:49 -07:00
packages.config User/jeleung/camera/fixdmft (#594) 2021-03-29 12:44:59 -07:00
stdafx.h Change the locking scheme in DMFT to unlock in setoutputstreamstate (#810) 2023-02-07 15:44:24 -08:00
stdafxsrc.cpp Samples update for public Windows 10 release 2015-07-29 16:34:40 -07:00

README.md

page_type description languages products
sample A driver device transform which loads in a process streaming an Avstream based camera device using Media Foundation.
cpp
windows
windows-wdk

Driver Device Transform Sample

Illustrative example for a Driver Device Transform which loads in a process streaming an Avstream based camera device using Media Foundation.

A Driver Device Transform is a new kind of a transform that's used with a specific camera when capturing video. The Driver Device Transform is also known as DeviceMFT because it is the first Device Transform applied to the video source. This Driver Device Transform is an alternative to the Driver MFT, for example, MFT0 in that it caters to the source rather than the streams. An N stream source supporting DeviceMFT will have a single instance of the Device Driver Transform loaded, while MFT0 will have N instances for each pipeline process. The DeviceMFT can advertise multiple streams at the output, which can differ from the number of streams advertised by the source. This is analogous to having a user mode driver in the MF pipeline which intercepts and processes commands before they enter/ leave the Kernel mode driver loaded for the streaming source.

In this sample, the Device Transform, when enabled, will replicate a photo sequence in the user mode from a one pin device. It acts as a passthrough for sources exposing more than one pins.

This sample is designed to be used with a specific camera. To run the sample, you need the your camera's device ID and device metadata package.

Concepts

UWP device apps for cameras

Media Foundation Transforms

Streaming media device driver design guide

Universal camera driver design guide for Windows 10

Samples

Device app for camera sample

Camera Capture UI sample