MSTape Driver
[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]
This topic applies to Windows XP or later.
The MSTape driver supports D-VHS and MPEG camcorder devices. It is exposed to applications as the WDM Video Capture filter. Its functionality is similar to that of MSDV, the DV camcorder driver:
- It appears in the "Video Capture Sources" (CLSID_VideoInputDeviceCategory) and "WDM Streaming Rendering Devices" (AM_KSCATEGORY_RENDER) filter categories.
- An application can create an instance of the filter using the ICreateDevEnum interface.
- It has an output pin for capture and transport from the device, and an input pin for transport to the device. Only one pin can be connected at time.
Media Types
The input pin supports one media type.
Label | Value |
---|---|
Major Type | MEDIATYPE_Stream |
Subtype | MEDIASUBTYPE_MPEG2_TRANSPORT_STRIDE |
Sample Size | 192 x 256 |
Format Block | MPEG2_TRANSPORT_STRIDE |
The output pin supports two media types.
Label | Value |
---|---|
Major Type | MEDIATYPE_Stream |
Subtype | MEDIASUBTYPE_MPEG2_TRANSPORT_STRIDE |
Sample Size | 192 x 256 |
Format Block | MPEG2_TRANSPORT_STRIDE |
Label | Value |
---|---|
Major Type | MEDIATYPE_Stream |
Subtype | MEDIASUBTYPE_MPEG2_TRANSPORT_STRIDE |
Sample Size | 188 x 256 |
Format Block | NULL |
Device Information
The driver dynamically reads information from the device configuration ROM. The application can retrieve this information by binding the device moniker to a property bag and calling the IPropertyBag::Read method.
Property | Description | Data type |
---|---|---|
UniqueID_Low | Unique ID of the device (low DWORD). | long (VT_I4) |
UniqueID_High | Unique ID of the device (high DWORD) | long |
VendorID | Vendor ID. | long |
ModelID | Model ID. | long |
VendorText | Vendor name. | BSTR (VT_BSTR) |
ModelText | Device model name. | BSTR |
UnitModelText | Unit model name; may be the same as ModelText. | BSTR |
DeviceOPcr0Payload | oPCR (Output Plug Control) payload. Example: 146 quadlets. | long |
DeviceOPcr0DataRate | oPCR data rate. Examples: 0 (S100), 1 (S200), or 2 (S400). | long |
DeviceClassGUID | GUID that identifies the device driver. For MSTape, this value is {8C0F6AF2-0EDB-44C1-8AEB-59040BD830ED} . This GUID is defined as MSTapeDeviceGUID in the header file Xprtdefs.h. |
BSTR |
Description | A description of the device, taken from the INF file. This string usually contains the brand name of the device. | BSTR |
The device ID is a 64-bit integer. The low DWORD is stored in the UniqueID_Low property, and the high DWORD is stored in the UniqueID_High property.
For more information about device monikers, see Using the System Device Enumerator.
Related topics