xpmgr/BuildTools/Include/wmdxva.idl

67 lines
2.3 KiB
Plaintext

//*@@@+++@@@@******************************************************************
//
// Microsoft Windows Media
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//*@@@---@@@@******************************************************************
//
cpp_quote( "//=========================================================================" )
cpp_quote( "//" )
cpp_quote( "// Microsoft Windows Media Technologies" )
cpp_quote( "// Copyright (C) Microsoft Corporation. All Rights Reserved." )
cpp_quote( "//" )
cpp_quote( "//=========================================================================" )
import "mediaobj.idl";
import "videoacc.idl"; // IAMVideoAccelerator
cpp_quote( "EXTERN_GUID( IID_IWMPlayerTimestampHook, 0x28580dda, 0xd98e, 0x48d0, 0xb7, 0xae, 0x69, 0xe4, 0x73, 0xa0, 0x28, 0x25);" )
cpp_quote( "EXTERN_GUID( IID_IWMCodecVideoAccelerator, 0x990641b0, 0x739f, 0x4e94, 0xa8, 0x08, 0x98, 0x88, 0xda, 0x8f, 0x75, 0xaf);" )
cpp_quote( "EXTERN_GUID( IID_IWMCodecAMVideoAccelerator, 0xd98ee251, 0x34e0, 0x4a2d, 0x93, 0x12, 0x9b, 0x4c, 0x78, 0x8d, 0x9f, 0xa1);" )
// Implemented by the player
[
object,
uuid( 28580dda-d98e-48d0-b7ae-69e473a02825 ),
helpstring( "IWMPlayerTimestampHook Interface" ),
pointer_default(unique),
local
]
interface IWMPlayerTimestampHook : IUnknown
{
HRESULT MapTimestamp( [in] REFERENCE_TIME rtIn,
[out] REFERENCE_TIME* prtOut );
};
// Implemeted by video decoder DMOs for DXVA support
[
object,
uuid( d98ee251-34e0-4a2d-9312-9b4c788d9fa1 ),
helpstring( "IWMCodecAMVideoAccelerator Interface" ),
pointer_default(unique),
local
]
interface IWMCodecAMVideoAccelerator : IUnknown
{
HRESULT SetAcceleratorInterface ([in] IAMVideoAccelerator *pIAMVA);
HRESULT NegotiateConnection( [in] DMO_MEDIA_TYPE *pMediaType );
HRESULT SetPlayerNotify( [in] IWMPlayerTimestampHook* pHook );
};
// Outdated version of IWMCodecAMVideoAccelerator
[
object,
uuid( 990641b0-739f-4e94-a808-9888da8f75af ),
helpstring( "IWMCodecVideoAccelerator Interface" ),
pointer_default(unique),
local
]
interface IWMCodecVideoAccelerator : IUnknown
{
HRESULT NegotiateConnection( [in] IAMVideoAccelerator *pIAMVA,
[in] DMO_MEDIA_TYPE *pMediaType );
HRESULT SetPlayerNotify( [in] IWMPlayerTimestampHook* pHook );
};