6 Appendix A: Product Behavior

The information in this specification is applicable to the following Microsoft products or supplemental software. References to product versions include updates to those products.

  • Windows Vista operating system

  • Windows Server 2008 operating system

  • Windows 7 operating system

  • Windows Server 2008 R2 operating system

  • Windows Server 2008 R2 operating system with Service Pack 1 (SP1)

  • Windows 7 operating system with Service Pack 1 (SP1)

  • Windows 8 operating system

  • Windows Server 2012 operating system

  • Windows 8.1 operating system

  • Windows Server 2012 R2 operating system

  • Windows 10 operating system

  • Windows Server 2016 operating system

  • Windows Server 2019 operating system

Exceptions, if any, are noted in this section. If an update version, service pack or Knowledge Base (KB) number appears with a product name, the behavior changed in that update. The new behavior also applies to subsequent updates unless otherwise specified. If a product edition appears with the product version, behavior is different in that product edition.

Unless otherwise specified, any statement of optional behavior in this specification that is prescribed using the terms "SHOULD" or "SHOULD NOT" implies product behavior in accordance with the SHOULD or SHOULD NOT prescription. Unless otherwise specified, the term "MAY" implies that the product does not follow the prescription.

<1> Section 2.2.1: The server-side implementation of this protocol is applicable to Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012, Windows 8.1, and Windows Server 2012 R2. The client-side implementation of this protocol is applicable to Windows.

<2> Section 2.2.5.4.1: In the Windows implementation of this protocol, the Set Allocator message is sent when the server is using the DirectShow (DShow) platform. The Set Allocator message is not sent when the server is using the Media Foundation (MF) platform.

For more information about the DShow platform, see [MSDN-DIRECTSHOW].

For more information about the MF platform, see [MSDN-MEDIAFOUNDATION].

<3> Section 2.2.6: In the Windows 7 version of this protocol, the CapabilityType field is set to either 0x00000001 or 0x00000002. The value 0x00000001 indicates the version capability, and the value 0x00000002 indicates the platform support capability. Additional values that are not supported in Windows Vista, Windows Server 2008, Windows 7, and Windows Server 2008 R2, were added for the CapabilityType fields: 0x00000003 indicating if audio is supported, and 0x00000004 indicating if one-way network latency is supported. Implementations of this protocol are able to interoperate with future additional capabilities, though perhaps with reduced functionality.

<4> Section 2.2.6: In the Windows 7 version of this protocol, the pCapabilityData field size is 4 bytes. The current pCapabilityData field size is 8 bytes (not supported in Windows Vista, Windows Server 2008, Windows 7, and Windows Server 2008 R2). The pCapabilityData field is annotated as variable size to accommodate additional capabilities in the future.

<5> Section 2.2.8: In the Windows implementation of this protocol, the default duration is set to 830000 for audio data and 333333 for video data. These values are specified in 100-nanosecond units.

<6> Section 2.2.10: The MMREDIR_CAPABILITY_PLATFORM_OTHER flag is a placeholder for future use with dated clients and is presently not sent by the server (not supported in Windows Vista or Windows Server 2008).

<7> Section 3.2.5.2.1.2: In the Windows implementation of this protocol, when the server is using the MF platform, the Exchange Capabilities Request Message is sent once for the control channel and for each stream channel of a presentation. When the server is using the DShow platform, the Exchange Capabilities Request Message is only sent once for the control channel of the presentation.

<8> Section 3.2.5.2.1.2: In the Windows implementation of this protocol, when the server is using the MF platform, the Exchange Capabilities Request Message is sent once for the control channel and for each stream channel of a presentation. When the server is using the DShow platform, the Exchange Capabilities Request Message is only sent once for the control channel of the presentation.

<9> Section 3.2.5.2.1.3: In the Windows implementation of this protocol, the server uses the Media Foundation-specific format structure, as specified in the FormatType member of TS_AM_MEDIA_TYPE, if the client indicates a capability of MMREDIR_CAPABILITY_PLATFORM_MF (section 2.2.10).

<10> Section 3.2.5.2.2.6: In the Windows implementation of this protocol, the presentation is shut down when the server is using the DShow platform. The presentation is not shut down when the server is using the MF platform.

<11> Section 3.2.5.2.2.7: In the Windows implementation of this protocol, the Remove Stream message is not sent by the server.

<12> Section 3.2.5.2.3.1: In Windows implementations of this protocol, the On Playback Started message is sent for every stream in the presentation when the server is using the MF platform. The On Playback Started message is sent only once when the server is using the DShow platform.

<13> Section 3.2.5.2.3.2: In Windows implementations of this protocol, the On Playback Paused message is sent for every stream in the presentation when the server is using the MF platform. The On Playback Paused message is sent just once when the server is using the DShow platform.

<14> Section 3.2.5.2.3.3: In Windows implementations of this protocol, the On Playback Restarted message is sent for every stream in the presentation when the server is using the MF platform. The On Playback Restarted message is never sent if the server is using the DShow platform.

<15> Section 3.2.5.2.3.5: In Windows implementations of this protocol, the On Playback Rate Changed message is sent for every stream in the presentation when the server is using the MF platform. The On Playback Rate Changed message is never sent if the server is using the DShow platform.

<16> Section 3.2.5.2.4.1: In the Windows implementation of this protocol, the Set Allocator message is sent when the server is using the DShow platform. The Set Allocator message is not sent when the server is using the MF platform.