;==============================================================================
; Elgato Game Capture HD60 Pro
; Driver Install Script (64 bit)
; Copyright (c) 2015, Elgato Systems GmbH 
;------------------------------------------------------------------------------        
; History:
;------------------------------------------------------------------------------
; 16-Jun-15 FMB 1st Elgato version
; 21-Sep-15 MS pass-through bugfix
; 09-Oct-15 MS fix hang when changed the resolution from 1080p50 to 720p50. 
; 09-Nov-15 MS fix 100% CPU issue
; 19-Jan-16 MS improved sync for encoder path
; 18-Feb-16 MS fix property page
; 23-Apr-16 MS 163 fix no picture after HDMI reconnect
; 16-AUG-16 MS 166 fix for EGCW-2342
; 21-SEP-16 MS 167 possible fix for EGCW-2801
; 14-Nov-16 MS 167a support for sv 0x0005
; 18-Apr-17 MS 167b support for 0x0006
; 18-Jul-17 MS 174.3
; 24-Jul-17 MS 1.1.0.174.4
; 27-Jul-17 MS 1.1.0.174.5
; 11-Aug-17 MS 1.1.0.174.8
; 06-Sep-17 MS 1.1.0.175.3
; 13-Sep-17 MS 1.1.0.175.5
; 26-Sep-17 MS 1.1.0.175.6
; 18-Okt-17 MS 1.1.0.176 Windows Fall Creators Update
; 24-Okt-17 MS 1.1.0.177 Better Windows FCU fix
; 07-Nov-17 MS 1.1.0.178 
; 29-Nov-17 MS 1.1.0.178.2 Better no Signal screen
; 07-Dev-17 MS 1.1.0.178.4 
; 04-Jan-18 MS 1.1.0.178.7 Fix: HD60 S/HD60 Pro: Daisy-chained HDMI signal detected as HDCP protected
; 08-Mai-18 MS 1.1.0.180.1 Fix missing HW encoder if 4K60 Pro is installed
; 09-Jul-18 MS 1.1.0.180.4 Fix property page
; 03-Sep-18 MS 1.1.0.182.3 Fix Driver somtimes blocking, reboot required
; 08-Oct-18 MS 1.1.0.183 Fix BSOD when changing audio buffer size
;------------------------------------------------------------------------------
; Notes:
;------------------------------------------------------------------------------
; 
;==============================================================================
[Version]
Signature   = "$CHICAGO$"
Class       = Media
ClassGUID   = {4d36e96c-e325-11ce-bfc1-08002be10318} 
Provider    = %Provider% 
DriverVer   = 09/03/2018, 1.1.0.183
CatalogFile = GameCaptureHD60Pro.cat


[SourceDisksNames]
1 = %DiskName%,,

[SourceDisksFiles]
e60MZ0380.X64.SYS                       =                                     1	;
MZ0380.X86.AX                         =                                     1	;
MZ0380.X64.AX                         =                                     1	;
MZ0380.C86.AX                         =                                     1	;
MZ0380.C64.AX                         =                                     1	;
MZ0380.HD.HEX                         =                                     1	;
MZ0380.SD.HEX                         =                                     1	;
MZ0380.FW.TXT                         =                                     1	;
NO.SIGNAL.BMP                         =                                     1	;

[DestinationDirs]
GameCapture.CopySys       = 12          ; driver files
GameCapture.CopyDll32     = 10,SysWow64 ; 32-bit DLLs
GameCapture.CopyDll64     = 11          ; 64-bit DLLs
GameCapture.CopyFirmwares = 10, MZ0380  ; C:\WINDOWS\MZ0380

[ControlFlags]
ExcludeFromSelect = *


[Manufacturer]
%Provider% = Elgato, NTamd64

[Elgato.NTamd64]
%GameCapture.DeviceDesc% = GameCapture, PCI\VEN_12AB&DEV_0380&SUBSYS_00031CFA ; GameCapture HD60 Pro (Rev. 1)
%GameCapture.DeviceDesc% = GameCapture, PCI\VEN_12AB&DEV_0380&SUBSYS_00051CFA ; GameCapture HD60 Pro (Rev. 2, never released)
%GameCapture.DeviceDesc% = GameCapture, PCI\VEN_12AB&DEV_0380&SUBSYS_00061CFA ; GameCapture HD60 Pro (Rev. 1 + Ryzen fix)
%GameCapture.DeviceDesc% = GameCapture, PCI\VEN_12AB&DEV_0380&SUBSYS_12AB05CF ; GameCapture HD60 Pro (Prototype)

[GameCapture.NTamd64]
Include       = ks.inf, kscaptur.inf, ksfilter.inf, bda.inf, wdmaudio.inf
Needs         = KS.Registration, KSCAPTUR.Registration.NT, BDA.Installation.NT, WDMAUDIO.Registration.NT
AddReg        = GameCapture.AddReg, MZ0380.AddReg
CopyFiles     = GameCapture.CopySys, GameCapture.CopyDll32, GameCapture.CopyDll64, GameCapture.CopyFirmwares

;FMB NOTE: flag 0x00000004 = COPYFLG_NOVERSIONCHECK
[GameCapture.CopySys]
e60MZ0380.X64.SYS  , , , 0x00000004

[GameCapture.CopyDll32]
MZ0380.X86.AX   , , , 0x00000004
MZ0380.C86.AX   , , , 0x00000004

[GameCapture.CopyDll64]
MZ0380.X64.AX   , , , 0x00000004
MZ0380.C64.AX   , , , 0x00000004

[GameCapture.CopyFirmwares]
MZ0380.HD.HEX   , , , 0x00000004
MZ0380.SD.HEX   , , , 0x00000004
MZ0380.FW.TXT   , , , 0x00000004



;===============================================================
;                R e g i s t r y
;===============================================================

[GameCapture.AddReg]
HKR,,DevLoader,,*NTKERN
HKR,,NTMPDriver,,e60MZ0380.X64.SYS
HKR,,HardwareConfig,1,1
HKR,,USDClass,,"{0527D1D0-88C2-11D2-82C7-00C04F8EC183}"
HKR,,PageOutWhenUnopened,3,01

; ICopyProtNotifyProperty
;
HKCR,Wow6432Node\CLSID\{868DE3D7-1ED1-4698-AF07-0A4B57662572}, , , %CPNOTIFY.PROPERTY.INTERFACE.NAME%
HKCR,Wow6432Node\CLSID\{868DE3D7-1ED1-4698-AF07-0A4B57662572}\InprocServer32, , , MZ0380.C86.AX
HKCR,Wow6432Node\CLSID\{868DE3D7-1ED1-4698-AF07-0A4B57662572}\InprocServer32, ThreadingModel, , Both
HKCR,CLSID\{868DE3D7-1ED1-4698-AF07-0A4B57662572}, , , %CPNOTIFY.PROPERTY.INTERFACE.NAME%
HKCR,CLSID\{868DE3D7-1ED1-4698-AF07-0A4B57662572}\InprocServer32, , , MZ0380.C64.AX
HKCR,CLSID\{868DE3D7-1ED1-4698-AF07-0A4B57662572}\InprocServer32, ThreadingModel, , Both
HKLM,System\CurrentControlSet\Control\MediaInterfaces\{868DE3D7-1ED1-4698-AF07-0A4B57662572}, , , %CPNOTIFY.PROPERTY.INTERFACE.NAME%
HKLM,System\CurrentControlSet\Control\MediaInterfaces\{868DE3D7-1ED1-4698-AF07-0A4B57662572}, IID, 1, 00,00,00,00, 00,00, 00,00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00

; ICustomProperty
;
HKCR,Wow6432Node\CLSID\{D1E5209F-68FD-4529-BEE0-5E7A1F479222}, , , %CUSTOM.PROPERTY.INTERFACE.NAME%
HKCR,Wow6432Node\CLSID\{D1E5209F-68FD-4529-BEE0-5E7A1F479222}\InprocServer32, , , MZ0380.X86.AX
HKCR,Wow6432Node\CLSID\{D1E5209F-68FD-4529-BEE0-5E7A1F479222}\InprocServer32, ThreadingModel, , Both
HKCR,CLSID\{D1E5209F-68FD-4529-BEE0-5E7A1F479222}, , , %CUSTOM.PROPERTY.INTERFACE.NAME%
HKCR,CLSID\{D1E5209F-68FD-4529-BEE0-5E7A1F479222}\InprocServer32, , , MZ0380.X64.AX
HKCR,CLSID\{D1E5209F-68FD-4529-BEE0-5E7A1F479222}\InprocServer32, ThreadingModel, , Both
HKLM,System\CurrentControlSet\Control\MediaInterfaces\{D1E5209F-68FD-4529-BEE0-5E7A1F479222}, , , %CUSTOM.PROPERTY.INTERFACE.NAME%
HKLM,System\CurrentControlSet\Control\MediaInterfaces\{D1E5209F-68FD-4529-BEE0-5E7A1F479222}, IID, 1, 9F,20,E5,D1, FD,68, 29,45, 0xBE, 0xE0, 0x5E, 0x7A, 0x1F, 0x47, 0x92, 0x22

; CCustomPropertyPage
;
HKCR,Wow6432Node\CLSID\{15E3F6CE-F3DD-454A-8DEA-E4A380FCCB22}, , , %CUSTOM.PROPERTY.PAGE.NAME%
HKCR,Wow6432Node\CLSID\{15E3F6CE-F3DD-454A-8DEA-E4A380FCCB22}\InprocServer32, , , MZ0380.X86.AX
HKCR,Wow6432Node\CLSID\{15E3F6CE-F3DD-454A-8DEA-E4A380FCCB22}\InprocServer32, ThreadingModel, , Both
HKCR,CLSID\{15E3F6CE-F3DD-454A-8DEA-E4A380FCCB22}, , , %CUSTOM.PROPERTY.PAGE.NAME%
HKCR,CLSID\{15E3F6CE-F3DD-454A-8DEA-E4A380FCCB22}\InprocServer32, , , MZ0380.X64.AX
HKCR,CLSID\{15E3F6CE-F3DD-454A-8DEA-E4A380FCCB22}\InprocServer32, ThreadingModel, , Both
HKLM,System\CurrentControlSet\Control\MediaSets\{D1E5209F-68FD-4529-BEE0-5E7A1F479222}\PropertyPages\{15E3F6CE-F3DD-454A-8DEA-E4A380FCCB22}, , , %CUSTOM.PROPERTY.PAGE.NAME%

[MZ0380.AddReg]
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\{6F814BE9-9AF6-43CF-9249-C0345A010022},Name,0,"Video Capture"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\{6F814BE9-9AF6-43CF-9249-C0345A010022},Display,1,00,00,00,00
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\{6F814BE9-9AF6-43CF-9249-C0345A010122},Name,0,"Audio Capture"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\{6F814BE9-9AF6-43CF-9249-C0345A010122},Display,1,00,00,00,00

HKR,,AnalogVideoCompressionKeyframeRatePropertyA,      0x00010001,0x00000020 ; 0x00000020 =      32 (0 ~   255)
HKR,,AnalogVideoCompressionQualityPropertyA,           0x00010001,0x00001770 ; 0x00000FA0 =    4000 (0 ~ 10000)
HKR,,AnalogVideoCompressionKeyframeRatePropertyB,      0x00010001,0x00000020 ; 0x00000020 =      32 (0 ~   255)
HKR,,AnalogVideoCompressionQualityPropertyB,           0x00010001,0x00001770 ; 0x00000FA0 =    4000 (0 ~ 10000)
HKR,,AnalogVideoCompressionKeyframeRatePropertyC,      0x00010001,0x00000020 ; 0x00000020 =      32 (0 ~   255)
HKR,,AnalogVideoCompressionQualityPropertyC,           0x00010001,0x00001770 ; 0x00000FA0 =    4000 (0 ~ 10000)
HKR,,AnalogVideoCompressionKeyframeRatePropertyD,      0x00010001,0x00000020 ; 0x00000020 =      32 (0 ~   255)
HKR,,AnalogVideoCompressionQualityPropertyD,           0x00010001,0x00001770 ; 0x00000FA0 =    4000 (0 ~ 10000)
HKR,,AnalogVideoCompressionKeyframeRatePropertyE,      0x00010001,0x00000020 ; 0x00000020 =      32 (0 ~   255)
HKR,,AnalogVideoCompressionQualityPropertyE,           0x00010001,0x00001770 ; 0x00000FA0 =    4000 (0 ~ 10000)
HKR,,AnalogVideoCompressionKeyframeRatePropertyF,      0x00010001,0x00000020 ; 0x00000020 =      32 (0 ~   255)
HKR,,AnalogVideoCompressionQualityPropertyF,           0x00010001,0x00001770 ; 0x00000FA0 =    4000 (0 ~ 10000)
HKR,,AnalogVideoCompressionKeyframeRatePropertyG,      0x00010001,0x00000020 ; 0x00000020 =      32 (0 ~   255)
HKR,,AnalogVideoCompressionQualityPropertyG,           0x00010001,0x00001770 ; 0x00000FA0 =    4000 (0 ~ 10000)
HKR,,AnalogVideoCompressionKeyframeRatePropertyH,      0x00010001,0x00000020 ; 0x00000020 =      32 (0 ~   255)
HKR,,AnalogVideoCompressionQualityPropertyH,           0x00010001,0x00001770 ; 0x00000FA0 =    4000 (0 ~ 10000)

HKR,,CustomEncoderVideoBitRateModePropertyA,           0x00010001,0x00000000 ; 0x00000000 =       0 (0 ~     2)
HKR,,CustomEncoderVideoBitRateModePropertyB,           0x00010001,0x00000000 ; 0x00000000 =       0 (0 ~     2)
HKR,,CustomEncoderVideoBitRateModePropertyC,           0x00010001,0x00000000 ; 0x00000000 =       0 (0 ~     2)
HKR,,CustomEncoderVideoBitRateModePropertyD,           0x00010001,0x00000000 ; 0x00000000 =       0 (0 ~     2)
HKR,,CustomEncoderVideoBitRateModePropertyE,           0x00010001,0x00000000 ; 0x00000000 =       0 (0 ~     2)
HKR,,CustomEncoderVideoBitRateModePropertyF,           0x00010001,0x00000000 ; 0x00000000 =       0 (0 ~     2)
HKR,,CustomEncoderVideoBitRateModePropertyG,           0x00010001,0x00000000 ; 0x00000000 =       0 (0 ~     2)
HKR,,CustomEncoderVideoBitRateModePropertyH,           0x00010001,0x00000000 ; 0x00000000 =       0 (0 ~     2)
HKR,,CustomEncoderVideoBitRatePropertyA,               0x00010001,0x00400000 ; 0x00400000 = 4194304 (0 ~      )
HKR,,CustomEncoderVideoBitRatePropertyB,               0x00010001,0x00400000 ; 0x00400000 = 4194304 (0 ~      )
HKR,,CustomEncoderVideoBitRatePropertyC,               0x00010001,0x00400000 ; 0x00400000 = 4194304 (0 ~      )
HKR,,CustomEncoderVideoBitRatePropertyD,               0x00010001,0x00400000 ; 0x00400000 = 4194304 (0 ~      )
HKR,,CustomEncoderVideoBitRatePropertyE,               0x00010001,0x00400000 ; 0x00100000 = 4194304 (0 ~      )
HKR,,CustomEncoderVideoBitRatePropertyF,               0x00010001,0x00400000 ; 0x00100000 = 4194304 (0 ~      )
HKR,,CustomEncoderVideoBitRatePropertyG,               0x00010001,0x00400000 ; 0x00100000 = 4194304 (0 ~      )
HKR,,CustomEncoderVideoBitRatePropertyH,               0x00010001,0x00400000 ; 0x00100000 = 4194304 (0 ~      )
HKR,,CustomAnalogVideoFlexibleResolutionPatchProperty, 0x00010001,0x00000001 ; 1
HKR,,CustomOsdTextEnableProperty,                      0x00010001,0x00000001 ; 0 = DISABLE / 1 = ENABLE
HKR,,CustomSoftwareLockProperty,                       0x00010001,0x00000001 ; 0 = DISABLE / 1 = ENABLE
HKR,,CustomSoftwareShowProperty,                       0x00010001,0x00000001 ; 0 = HIDDEN / 1 = LIMITED / 2 = FULL (Filter Properties)
HKR,,CustomSoftwareUIProperty, 			               0x00010001,0x00000001 ; 0 = HIDE / 1 = SIMPLE / 2 = FULL
HKR,,CustomCompanyPowerCreatorProperty,                0x00010001,0x00000001 ; 0 = default 30fps / 1 = default 60fps
HKR,,CustomAnalogVideoNosgLogoProperty,                0x00010001,0x00000001 ; 0 = DISABLE / 1 = ENABLE
HKR,,AnalogVideoDecoderStandardProperty,               0x00010001,0x00000001 ; 1 = NTSC M / 16 = PAL B
HKR,,AnalogCrossbarVideoInputProperty,                 0x00010001,0x00000000 ; 0 = HDMI / 1 = DVI-D / 2 = COMPONENT / 3 = DVI-A / 4 = SDI
HKR,,AnalogCrossbarAudioInputProperty,                 0x00010001,0x00000000 ; 0 = EMBEDDED AUDIO / 1 = LINE IN
HKR,,CustomDeviceInfoDirectoryProperty, ,              "\??\%10%\MZ0380\"

;===============================================================
;                I n t e r f a c e s
;===============================================================

[GameCapture.NTamd64.Interfaces]
; Registration as CLSID_InputAudio required for OBS
AddInterface = %CLSID_InputAudio%   , %REFGUID_AUDIO.01%     , Audio_Interface.01
AddInterface = %CLSID_InputAudio%   , %REFGUID_AUDIO.02%     , Audio_Interface.02
AddInterface = %CLSID_InputAudio%   , %REFGUID_AUDIO.03%     , Audio_Interface.03
AddInterface = %CLSID_InputAudio%   , %REFGUID_AUDIO.04%     , Audio_Interface.04
AddInterface = %CLSID_InputAudio%   , %REFGUID_AUDIO.05%     , Audio_Interface.05
AddInterface = %CLSID_InputAudio%   , %REFGUID_AUDIO.06%     , Audio_Interface.06
AddInterface = %CLSID_InputAudio%   , %REFGUID_AUDIO.07%     , Audio_Interface.07
AddInterface = %CLSID_InputAudio%   , %REFGUID_AUDIO.08%     , Audio_Interface.08
AddInterface = %CLSID_InputAudio%   , %REFGUID_AUDIO%        , Audio_Interface   

AddInterface = %KSCATEGORY_AUDIO%   , %REFGUID_AUDIO.01%     , Audio_Interface.01
AddInterface = %KSCATEGORY_AUDIO%   , %REFGUID_AUDIO.02%     , Audio_Interface.02
AddInterface = %KSCATEGORY_AUDIO%   , %REFGUID_AUDIO.03%     , Audio_Interface.03
AddInterface = %KSCATEGORY_AUDIO%   , %REFGUID_AUDIO.04%     , Audio_Interface.04
AddInterface = %KSCATEGORY_AUDIO%   , %REFGUID_AUDIO.05%     , Audio_Interface.05
AddInterface = %KSCATEGORY_AUDIO%   , %REFGUID_AUDIO.06%     , Audio_Interface.06
AddInterface = %KSCATEGORY_AUDIO%   , %REFGUID_AUDIO.07%     , Audio_Interface.07
AddInterface = %KSCATEGORY_AUDIO%   , %REFGUID_AUDIO.08%     , Audio_Interface.08
AddInterface = %KSCATEGORY_AUDIO%   , %REFGUID_AUDIO%        , Audio_Interface   
 
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_AUDIO.01%     , Audio_Interface.01
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_AUDIO.02%     , Audio_Interface.02
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_AUDIO.03%     , Audio_Interface.03
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_AUDIO.04%     , Audio_Interface.04
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_AUDIO.05%     , Audio_Interface.05
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_AUDIO.06%     , Audio_Interface.06
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_AUDIO.07%     , Audio_Interface.07
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_AUDIO.08%     , Audio_Interface.08
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_AUDIO%        , Audio_Interface

AddInterface = %KSCATEGORY_VIDEO%   , %REFGUID_CAPTURE.01%   , AnalogCapture_Interface.01
AddInterface = %KSCATEGORY_VIDEO%   , %REFGUID_CAPTURE.02%   , AnalogCapture_Interface.02
AddInterface = %KSCATEGORY_VIDEO%   , %REFGUID_CAPTURE.03%   , AnalogCapture_Interface.03
AddInterface = %KSCATEGORY_VIDEO%   , %REFGUID_CAPTURE.04%   , AnalogCapture_Interface.04
AddInterface = %KSCATEGORY_VIDEO%   , %REFGUID_CAPTURE.05%   , AnalogCapture_Interface.05
AddInterface = %KSCATEGORY_VIDEO%   , %REFGUID_CAPTURE.06%   , AnalogCapture_Interface.06
AddInterface = %KSCATEGORY_VIDEO%   , %REFGUID_CAPTURE.07%   , AnalogCapture_Interface.07
AddInterface = %KSCATEGORY_VIDEO%   , %REFGUID_CAPTURE.08%   , AnalogCapture_Interface.08
AddInterface = %KSCATEGORY_VIDEO%   , %REFGUID_CAPTURE%      , AnalogCapture_Interface   

AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_CAPTURE.01%   , AnalogCapture_Interface.01
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_CAPTURE.02%   , AnalogCapture_Interface.02
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_CAPTURE.03%   , AnalogCapture_Interface.03
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_CAPTURE.04%   , AnalogCapture_Interface.04
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_CAPTURE.05%   , AnalogCapture_Interface.05
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_CAPTURE.06%   , AnalogCapture_Interface.06
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_CAPTURE.07%   , AnalogCapture_Interface.07
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_CAPTURE.08%   , AnalogCapture_Interface.08
AddInterface = %KSCATEGORY_CAPTURE% , %REFGUID_CAPTURE%      , AnalogCapture_Interface   

;---------------------------------------------------------------
; WDM streaming interfaces (audio)
;---------------------------------------------------------------

[Audio_Interface.01]
AddReg = Audio_Interface.AddReg.01

[Audio_Interface.AddReg.01]
HKR, , FriendlyName, , %DShow.AudioCapture.01%
HKR, , CLSID, , %PROXY_CAPTURE%

[Audio_Interface.02]
AddReg = Audio_Interface.AddReg.02

[Audio_Interface.AddReg.02]
HKR, , FriendlyName, , %DShow.AudioCapture.02%
HKR, , CLSID, , %PROXY_CAPTURE%
[Audio_Interface.03]
AddReg = Audio_Interface.AddReg.03
[Audio_Interface.AddReg.03]
HKR, , FriendlyName, , %DShow.AudioCapture.03%
HKR, , CLSID, , %PROXY_CAPTURE%
[Audio_Interface.04]
AddReg = Audio_Interface.AddReg.04
[Audio_Interface.AddReg.04]
HKR, , FriendlyName, , %DShow.AudioCapture.04%
HKR, , CLSID, , %PROXY_CAPTURE%
[Audio_Interface.05]
AddReg = Audio_Interface.AddReg.05
[Audio_Interface.AddReg.05]
HKR, , FriendlyName, , %DShow.AudioCapture.05%
HKR, , CLSID, , %PROXY_CAPTURE%
[Audio_Interface.06]
AddReg = Audio_Interface.AddReg.06
[Audio_Interface.AddReg.06]
HKR, , FriendlyName, , %DShow.AudioCapture.06%
HKR, , CLSID, , %PROXY_CAPTURE%
[Audio_Interface.07]
AddReg = Audio_Interface.AddReg.07
[Audio_Interface.AddReg.07]
HKR, , FriendlyName, , %DShow.AudioCapture.07%
HKR, , CLSID, , %PROXY_CAPTURE%
[Audio_Interface.08]
AddReg = Audio_Interface.AddReg.08
[Audio_Interface.AddReg.08]
HKR, , FriendlyName, , %DShow.AudioCapture.08%
HKR, , CLSID, , %PROXY_CAPTURE%

[Audio_Interface]
AddReg = Audio_Interface.AddReg

[Audio_Interface.AddReg]
HKR, , FriendlyName, , %DShow.AudioCapture%
HKR, , CLSID, , %PROXY_CAPTURE%

;---------------------------------------------------------------
; WDM streaming interfaces (analog TV/capture)
;---------------------------------------------------------------

[AnalogCapture_Interface.01]
AddReg = AnalogCapture_Interface.AddReg.01

[AnalogCapture_Interface.AddReg.01]
HKR, , FriendlyName, , %DShow.AnalogCapture.01%
HKR, , CLSID, , %PROXY_CAPTURE%

[AnalogCapture_Interface.02]
AddReg = AnalogCapture_Interface.AddReg.02

[AnalogCapture_Interface.AddReg.02]
HKR, , FriendlyName, , %DShow.AnalogCapture.02%
HKR, , CLSID, , %PROXY_CAPTURE%

[AnalogCapture_Interface.03]
AddReg = AnalogCapture_Interface.AddReg.03

[AnalogCapture_Interface.AddReg.03]
HKR, , FriendlyName, , %DShow.AnalogCapture.03%
HKR, , CLSID, , %PROXY_CAPTURE%

[AnalogCapture_Interface.04]
AddReg = AnalogCapture_Interface.AddReg.04

[AnalogCapture_Interface.AddReg.04]
HKR, , FriendlyName, , %DShow.AnalogCapture.04%
HKR, , CLSID, , %PROXY_CAPTURE%

[AnalogCapture_Interface.05]
AddReg = AnalogCapture_Interface.AddReg.05

[AnalogCapture_Interface.AddReg.05]
HKR, , FriendlyName, , %DShow.AnalogCapture.05%
HKR, , CLSID, , %PROXY_CAPTURE%

[AnalogCapture_Interface.06]
AddReg = AnalogCapture_Interface.AddReg.06

[AnalogCapture_Interface.AddReg.06]
HKR, , FriendlyName, , %DShow.AnalogCapture.06%
HKR, , CLSID, , %PROXY_CAPTURE%

[AnalogCapture_Interface.07]
AddReg = AnalogCapture_Interface.AddReg.07

[AnalogCapture_Interface.AddReg.07]
HKR, , FriendlyName, , %DShow.AnalogCapture.07%
HKR, , CLSID, , %PROXY_CAPTURE%

[AnalogCapture_Interface.08]
AddReg = AnalogCapture_Interface.AddReg.08

[AnalogCapture_Interface.AddReg.08]
HKR, , FriendlyName, , %DShow.AnalogCapture.08%
HKR, , CLSID, , %PROXY_CAPTURE%

[AnalogCapture_Interface]
AddReg = AnalogCapture_Interface.AddReg

[AnalogCapture_Interface.AddReg]
HKR, , FriendlyName, , %DShow.AnalogCapture%
HKR, , CLSID, , %PROXY_CAPTURE%

;===============================================================
;                S e r v i c e s
;===============================================================

[GameCapture.NTamd64.Services] 
AddService = e60MZ0380.X64, 0x00000002, GameCapture.ServiceInstall

[GameCapture.ServiceInstall]
DisplayName   = %Service.FriendlyName%
ServiceType   = %SERVICE_KERNEL_DRIVER%
StartType     = %SERVICE_DEMAND_START%
ErrorControl  = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\e60MZ0380.X64.SYS


;===============================================================
;                S t r i n g s
;===============================================================

[Strings]

;---------------------------------------------------------------
; Non-localizable (Windows)
;---------------------------------------------------------------
; Registry types
REG_SZ                           = 0x00000000
REG_MULTI_SZ                     = 0x00010000
REG_EXPAND_SZ                    = 0x00020000
REG_DWORD                        = 0x00010001

; Service: ServiceType values
SERVICE_KERNEL_DRIVER            = 0x00000001
SERVICE_FILE_SYSTEM_DRIVER       = 0x00000002
SERVICE_ADAPTER                  = 0x00000004
SERVICE_RECOGNIZER_DRIVER        = 0x00000008
SERVICE_WIN32_OWN_PROCESS        = 0x00000010
SERVICE_WIN32_SHARE_PROCESS      = 0x00000020
SERVICE_INTERACTIVE_PROCESS      = 0x00000100
SERVICE_INTERACTIVE_SHARE_PROCESS= 0x00000120

; Service: StartType values
SERVICE_BOOT_START               = 0x00000000
SERVICE_SYSTEM_START             = 0x00000001
SERVICE_AUTO_START               = 0x00000002
SERVICE_DEMAND_START             = 0x00000003
SERVICE_DISABLED                 = 0x00000004

; Service: ErrorControl values
SERVICE_ERROR_IGNORE             = 0x00000000
SERVICE_ERROR_NORMAL             = 0x00000001
SERVICE_ERROR_SEVERE             = 0x00000002
SERVICE_ERROR_CRITICAL           = 0x00000003

; DirectShow filter categories                                                DirectShow category name
CLSID_InputAudio                 = "{33D9A762-90C8-11D0-BD43-00A0C911CE86}"
KSCATEGORY_AUDIO                 = "{6994AD04-93EF-11D0-A3CC-00A0C9223196}"
KSCATEGORY_RENDER                = "{65E8773E-8F56-11D0-A3B9-00A0C9223196}" ; Audio Renderers
KSCATEGORY_TOPOLOGY              = "{DDA54A40-1E4C-11D1-A050-405705C10000}" ; Audio Mixer Devices

KSCATEGORY_VIDEO                 = "{6994AD05-93EF-11D0-A3CC-00A0C9223196}" ;

KSCATEGORY_CAPTURE               = "{65E8773D-8F56-11D0-A3B9-00A0C9223196}" ; WDM Streaming capture Devices (audio & video)
KSCATEGORY_TVTUNER               = "{A799A800-A46D-11D0-A18C-00A02401DCD4}" ; WDM Streaming TV Tuner Devices 
KSCATEGORY_CROSSBAR              = "{A799A801-A46D-11D0-A18C-00A02401DCD4}" ; WDM Streaming Crossbar Devices
KSCATEGORY_TVAUDIO               = "{A799A802-A46D-11D0-A18C-00A02401DCD4}" ; WDM Streaming TV Audio Devices

KSCATEGORY_ENCODER               = "{19689BF6-C384-48fd-AD51-90E58C79F70B}" ; WDM Streaming Encoder Devices
KSCATEGORY_MULTIPLEXER           = "{7A5DE1D3-01A1-452c-B481-4FA2B96271E8}" ; WDM Streaming Multiplexer Devices

KSCATEGORY_BDA_RECEIVER          = "{FD0A5AF4-B41D-11D2-9C95-00C04F7971E0}" ; BDA Receiver Component
KSCATEGORY_BDA_TUNER             = "{71985F48-1CA1-11D3-9CC8-00C04F7971E0}" ; BDA Source Filters


; Proxy CLSIDs (KsProxy.ax)
PROXY_CAPTURE                    = "{17CCA71B-ECD7-11D0-B908-00A0C9223196}"
PROXY_TVTUNER                    = "{266EEE40-6C63-11cf-8A03-00AA006ECB65}"
PROXY_CROSSBAR                   = "{71F96460-78F3-11D0-A18C-00A0C9118956}"
PROXY_TVAUDIO                    = "{71F96462-78F3-11D0-A18C-00A0C9118956}"



;---------------------------------------------------------------
; Non-localizable (this driver)
;---------------------------------------------------------------
; Reference guids

REFGUID_AUDIO.01                 = "{6F814BE9-9AF6-43CF-9249-C03401000322}"
REFGUID_AUDIO.02                 = "{6F814BE9-9AF6-43CF-9249-C03402000322}"
REFGUID_AUDIO.03                 = "{6F814BE9-9AF6-43CF-9249-C03403000322}"
REFGUID_AUDIO.04                 = "{6F814BE9-9AF6-43CF-9249-C03404000322}"
REFGUID_AUDIO.05                 = "{6F814BE9-9AF6-43CF-9249-C03405000322}"
REFGUID_AUDIO.06                 = "{6F814BE9-9AF6-43CF-9249-C03406000322}"
REFGUID_AUDIO.07                 = "{6F814BE9-9AF6-43CF-9249-C03407000322}"
REFGUID_AUDIO.08                 = "{6F814BE9-9AF6-43CF-9249-C03408000322}"
REFGUID_AUDIO                    = "{6F814BE9-9AF6-43CF-9249-C0345A000322}"

REFGUID_CAPTURE.01               = "{6F814BE9-9AF6-43CF-9249-C03401000222}"
REFGUID_CAPTURE.02               = "{6F814BE9-9AF6-43CF-9249-C03402000222}"
REFGUID_CAPTURE.03               = "{6F814BE9-9AF6-43CF-9249-C03403000222}"
REFGUID_CAPTURE.04               = "{6F814BE9-9AF6-43CF-9249-C03404000222}"
REFGUID_CAPTURE.05               = "{6F814BE9-9AF6-43CF-9249-C03405000222}"
REFGUID_CAPTURE.06               = "{6F814BE9-9AF6-43CF-9249-C03406000222}"
REFGUID_CAPTURE.07               = "{6F814BE9-9AF6-43CF-9249-C03407000222}"
REFGUID_CAPTURE.08               = "{6F814BE9-9AF6-43CF-9249-C03408000222}"
REFGUID_CAPTURE                  = "{6F814BE9-9AF6-43CF-9249-C0345A000222}"


;---------------------------------------------------------------
; Localizable
;---------------------------------------------------------------

Provider                 = "Elgato "
DiskName                 = "Elgato Driver Disk"

; Service strings
Service.FriendlyName     = "Game Capture HD60 Pro Service"

; Device Manager
GameCapture.DeviceDesc   = "Game Capture HD60 Pro"

; DirectShow filter names
DShow.AudioCapture.01    = "Game Capture HD60 Pro (Audio) (#01)"
DShow.AudioCapture.02    = "Game Capture HD60 Pro (Audio) (#02)"
DShow.AudioCapture.03    = "Game Capture HD60 Pro (Audio) (#03)"
DShow.AudioCapture.04    = "Game Capture HD60 Pro (Audio) (#04)"
DShow.AudioCapture.05    = "Game Capture HD60 Pro (Audio) (#05)"
DShow.AudioCapture.06    = "Game Capture HD60 Pro (Audio) (#06)"
DShow.AudioCapture.07    = "Game Capture HD60 Pro (Audio) (#07)"
DShow.AudioCapture.08    = "Game Capture HD60 Pro (Audio) (#08)"
DShow.AudioCapture       = "Game Capture HD60 Pro (Audio)"

DShow.AnalogCapture.01   = "Game Capture HD60 Pro (Video) (#01)"
DShow.AnalogCapture.02   = "Game Capture HD60 Pro (Video) (#02)"
DShow.AnalogCapture.03   = "Game Capture HD60 Pro (Video) (#03)"
DShow.AnalogCapture.04   = "Game Capture HD60 Pro (Video) (#04)"
DShow.AnalogCapture.05   = "Game Capture HD60 Pro (Video) (#05)"
DShow.AnalogCapture.06   = "Game Capture HD60 Pro (Video) (#06)"
DShow.AnalogCapture.07   = "Game Capture HD60 Pro (Video) (#07)"
DShow.AnalogCapture.08   = "Game Capture HD60 Pro (Video) (#08)"
DShow.AnalogCapture      = "Game Capture HD60 Pro (Video)"

CPNOTIFY.PROPERTY.INTERFACE.NAME = "Game Capture HD60 Pro (CopyProtNotify Property Interface)"
CUSTOM.PROPERTY.INTERFACE.NAME   = "Game Capture HD60 Pro (Custom Property Interface)"
CUSTOM.PROPERTY.PAGE.NAME        = "Game Capture HD60 Pro (Custom Property Page)"


