DShowPlugin: Updated to latest Elgato header
Updated to latest Elgato interface header file from https://github.com/elgatosf/gamecapturemaster
parent
1e5ec749ce
commit
9ade7de22c
|
@ -4,15 +4,19 @@
|
|||
//! @ec @brief Interface declaration for Elgato Video Capture Filter
|
||||
//! @author F.M.Birth, T.Schnitzler
|
||||
//! @date 01-Oct-12 FMB - Creation
|
||||
//! @date 08-Apr-13 TS - Added IVideoCaptureFilter2
|
||||
//! @date 14-Nov-13 TS - Added IVideoCaptureFilter3
|
||||
//! @date 21-Jul-14 TS - Added IVideoCaptureFilter4
|
||||
//! @date 12-Aug-14 TS - Added IVideoCaptureFilter5
|
||||
//! @date 08-Apr-13 TS - Added <i>IVideoCaptureFilter2</i>
|
||||
//! @date 14-Nov-13 TS - Added <i>IVideoCaptureFilter3</i>
|
||||
//! @date 21-Jul-14 TS - Added <i>IVideoCaptureFilter4</i>
|
||||
//! @date 28-Aug-14 FDj - MIT license added
|
||||
//! @note Supports Elgato Game Capture HD
|
||||
//! @date 04-Sep-14 FMB - Added <i>interfaceVersion</i> to VIDEO_CAPTURE_FILTER_SETTINGS_EX
|
||||
//! @date 29-Jan-15 FMB - Added MPEG-TS Pin to filter, added interface IElgatoVideoCaptureFilter6
|
||||
//!
|
||||
//! @note The DirectShow filter works with
|
||||
//! - Elgato Game Capture HD
|
||||
//! - Elgato Game Capture HD60
|
||||
//! @bc -----------------------------------------------------------------------
|
||||
//! @ec @par Copyright
|
||||
//! @n (c) 2012-14, Elgato Systems. All Rights Reserved.
|
||||
//! @n (c) 2012-15, Elgato Systems. All Rights Reserved.
|
||||
//! @n
|
||||
//! @n The MIT License (MIT)
|
||||
//! @n
|
||||
|
@ -44,6 +48,14 @@
|
|||
#define VIDEO_CAPTURE_FILTER_NAME "Elgato Game Capture HD"
|
||||
#define VIDEO_CAPTURE_FILTER_NAME_L L"Elgato Game Capture HD"
|
||||
|
||||
#define ELGATO_VCF_VIDEO_PID 100 //!< video PID in MPEG-TS stream
|
||||
#define ELGATO_VCF_AUDIO_PID 101 //!< audio PID in MPEG-TS stream
|
||||
|
||||
//! Interface version:
|
||||
//! - 1st digit: interface version (e.g. 5 for IElgatoVideoCaptureFilter5)
|
||||
//! - 2nd digit: revision (changed e.g. when reserved fields in structures changed their meaning)
|
||||
#define VIDEO_CAPTURE_FILTER_INTERFACE_VERSION 60
|
||||
|
||||
// {39F50F4C-99E1-464a-B6F9-D605B4FB5918}
|
||||
DEFINE_GUID(CLSID_ElgatoVideoCaptureFilter,
|
||||
0x39f50f4c, 0x99e1, 0x464a, 0xb6, 0xf9, 0xd6, 0x5, 0xb4, 0xfb, 0x59, 0x18);
|
||||
|
@ -72,6 +84,11 @@ DEFINE_GUID(IID_IElgatoVideoCaptureFilter4,
|
|||
DEFINE_GUID(IID_IElgatoVideoCaptureFilter5,
|
||||
0x7e6e9e9e, 0x4062, 0x4364, 0x99, 0xb1, 0x15, 0xc2, 0xf6, 0x62, 0xb5, 0x2);
|
||||
|
||||
// {39F50F4C-99E1-464a-B6F9-D605B4FB5925}
|
||||
DEFINE_GUID(IID_IElgatoVideoCaptureFilter6,
|
||||
0x39f50f4c, 0x99e1, 0x464a, 0xb6, 0xf9, 0xd6, 0x05, 0xb4, 0xfb, 0x59, 0x25);
|
||||
|
||||
|
||||
/*=============================================================================
|
||||
// IElgatoVideoCaptureFilter
|
||||
=============================================================================*/
|
||||
|
@ -226,10 +243,14 @@ typedef struct _VIDEO_CAPTURE_FILTER_SETTINGS_EX
|
|||
{
|
||||
VIDEO_CAPTURE_FILTER_SETTINGS Settings;
|
||||
BOOL enableFullFrameRate; //!< Enable full frame rate (50/60 fps)
|
||||
BYTE reserved[20 * 1024];
|
||||
|
||||
BYTE reserved[20 * 1024 - sizeof(DWORD)];
|
||||
|
||||
DWORD interfaceVersion; //!< Clients need to set this value to VIDEO_CAPTURE_FILTER_INTERFACE_VERSION
|
||||
}VIDEO_CAPTURE_FILTER_SETTINGS_EX, *PVIDEO_CAPTURE_FILTER_SETTINGS_EX;
|
||||
typedef const VIDEO_CAPTURE_FILTER_SETTINGS_EX* PCVIDEO_CAPTURE_FILTER_SETTINGS_EX;
|
||||
|
||||
//! Interface IElgatoVideoCaptureFilter5
|
||||
DECLARE_INTERFACE_(IElgatoVideoCaptureFilter5, IElgatoVideoCaptureFilter4)
|
||||
{
|
||||
//! Get current settings
|
||||
|
@ -238,3 +259,12 @@ DECLARE_INTERFACE_(IElgatoVideoCaptureFilter5, IElgatoVideoCaptureFilter4)
|
|||
//! Set settings
|
||||
STDMETHOD(SetSettingsEx)(THIS_ PCVIDEO_CAPTURE_FILTER_SETTINGS_EX pcSettings) PURE;
|
||||
};
|
||||
|
||||
//! Interface IElgatoVideoCaptureFilter6
|
||||
DECLARE_INTERFACE_(IElgatoVideoCaptureFilter6, IElgatoVideoCaptureFilter5)
|
||||
{
|
||||
//! Get A/V delay in milli-seconds
|
||||
//! @param pnDelayMs latency of stream in milliseconds
|
||||
//! @param forCompressedData true -> get delay for MPEG-TS pin, false -> get delay for audio/video pins
|
||||
STDMETHOD(GetDelayMs)(THIS_ __out int* pnDelayMs, __in bool forCompressedData) PURE;
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue