;==============================================================================
; Elgato Game Capture HD60 S
; Driver Install Script (64 bit)
; Copyright (c) 2015, Elgato Systems GmbH 
;------------------------------------------------------------------------------        
; History:
;------------------------------------------------------------------------------
; 19-Oct-15 MS 1st Elgato version
; 12-Nov-15 MS new driver
; 17-Nov-15 MS 160a fix for color range settings
; 08-Jan-16 MS 160b fix for audio_gain
; 22-Jan-16 MS 161 minor bugfixes
; 09-Feb-16 MS 162 fix for PS4 picture problem
; 18-Feb-16 MS 162a fix property page
; 23-Apr-16 MS 163 fix no picture after HDMI reconnect
; 02-Mai-16 MS 164
; 08-Aug-16 MS 164a new HW version PID 0x005E
; 09-AUG-16 MS 166 fix for EGCW-2342
; 02-Sep-16 MS 167 fix for PID 0x005E
; 04-Jan-18 MS 1.1.0.178.7 Fix: HD60 S/HD60 Pro: Daisy-chained HDMI signal detected as HDCP protected
; 09-Feb-18 MS 1.1.0.179 Fix:  PS VR black screen after mode is changed
; 04-Apr-18 MS 1.1.0.179.8.2 
; 04-Mai-18 MS 1.1.0.180 Fix: missing ds property page
; 20-Aug-18 MS 1.1.0.182 Fix: BSOD reproted by WER
; 30-Aug-18 MS 1.1.0.182.2 Fix: Audio Problems 
; 03-Sep-18 MS 1.1.0.182.3 Fix Driver somtimes blocking, reboot required
; 05-Nov-18 MS 1.1.0.183 Fix: Graph restart required after signal state change
; 10-Okt-19 MS 1.1.0.185.2 Multi application support
; 23-Okt-19 MS 1.1.0.187    Add revision 3 hardware
; 29-Okt-19 MS 1.1.0.187.1 Fix DS Property page
; 08-Nov-19 MS 1.1.0.187.2
;------------------------------------------------------------------------------
; VersionTag = 1.1.0.187.2
;------------------------------------------------------------------------------
; 
;==============================================================================
[Version]
Signature   = "$CHICAGO$"
Class       = Media
ClassGUID   = {4d36e96c-e325-11ce-bfc1-08002be10318} 
Provider    = %Provider% 
DriverVer   = 11/08/2019, 1.1.0.187
CatalogFile = GameCaptureHD60S.cat

[SourceDisksNames]
1 = %DiskName%,, 

[SourceDisksFiles]
CY3014.X64.SYS           =  1	;
CY3014.X86.AX            =  1	;
CY3014.X64.AX            =  1	;
CY3014.C86.AX            =  1	;
CY3014.C64.AX            =  1	;

[DestinationDirs]
GameCapture.CopySys       = 12          ; driver files
GameCapture.CopyDll32     = 10,SysWow64 ; 32-bit DLLs
GameCapture.CopyDll64     = 11          ; 64-bit DLLs

[ControlFlags]
ExcludeFromSelect = *

[Manufacturer]
%Provider% = Elgato, NTamd64

[Elgato.NTamd64]
%GameCapture.DeviceDesc% = GameCapture, USB\VID_0FD9&PID_004F ; GameCapture HD60 S
%GameCapture.DeviceDesc% = GameCapture, USB2\VID_0FD9&PID_004F ; GameCapture HD60 S

%GameCapture.DeviceDesc% = GameCapture, USB\VID_0FD9&PID_005E ; GameCapture HD60 S
%GameCapture.DeviceDesc% = GameCapture, USB2\VID_0FD9&PID_005E ; GameCapture HD60 S

%GameCapture.DeviceDesc% = GameCapture, USB\VID_0FD9&PID_0074 ; GameCapture HD60 S
%GameCapture.DeviceDesc% = GameCapture, USB2\VID_0FD9&PID_0074 ; GameCapture HD60 S

[GameCapture.NTamd64]
Include       = ks.inf, kscaptur.inf, wdmaudio.inf
Needs         = KS.Registration, KSCAPTUR.Registration.NT, WDMAUDIO.Registration.NT
AddReg        = GameCapture.AddReg
CopyFiles     = GameCapture.CopySys, GameCapture.CopyDll32, GameCapture.CopyDll64
RegisterDlls  = GameCapture.RegisterDlls

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

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

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

[GameCapture.RegisterDlls]


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

[GameCapture.AddReg]
HKR,,DevLoader,,*NTKERN
HKR,,NTMPDriver,,CY3014.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, , , CY3014.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, , , CY3014.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-5E7A1F47921F}, , , %CUSTOM.PROPERTY.INTERFACE.NAME%
HKCR,Wow6432Node\CLSID\{D1E5209F-68FD-4529-BEE0-5E7A1F47921F}\InprocServer32, , , CY3014.X86.AX
HKCR,Wow6432Node\CLSID\{D1E5209F-68FD-4529-BEE0-5E7A1F47921F}\InprocServer32, ThreadingModel, , Both
HKCR,CLSID\{D1E5209F-68FD-4529-BEE0-5E7A1F47921F}, , , %CUSTOM.PROPERTY.INTERFACE.NAME%
HKCR,CLSID\{D1E5209F-68FD-4529-BEE0-5E7A1F47921F}\InprocServer32, , , CY3014.X64.AX
HKCR,CLSID\{D1E5209F-68FD-4529-BEE0-5E7A1F47921F}\InprocServer32, ThreadingModel, , Both
HKLM,System\CurrentControlSet\Control\MediaInterfaces\{D1E5209F-68FD-4529-BEE0-5E7A1F47921F}, , , %CUSTOM.PROPERTY.INTERFACE.NAME%
HKLM,System\CurrentControlSet\Control\MediaInterfaces\{D1E5209F-68FD-4529-BEE0-5E7A1F47921F}, IID, 1, 9F,20,E5,D1, FD,68, 29,45, 0xBE, 0xE0, 0x5E, 0x7A, 0x1F, 0x47, 0x92, 0x1F

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


HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\{6F814BE9-9AF6-43CF-9249-C0345A01001F},Name,0,"Video Capture"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\{6F814BE9-9AF6-43CF-9249-C0345A01001F},Display,1,00,00,00,00
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\{6F814BE9-9AF6-43CF-9249-C0345A01011F},Name,0,"Audio Capture"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\{6F814BE9-9AF6-43CF-9249-C0345A01011F},Display,1,00,00,00,00
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\{6F814BE9-9AF6-43CF-9249-C0345A01021F},Name,0,"Analog Audio In"
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\{6F814BE9-9AF6-43CF-9249-C0345A01021F},Display,1,00,00,00,00

HKR,,AnalogCrossbarVideoInputProperty,                 0x00010001,0x00000000 ; 0 = COMPOSITE
HKR,,AnalogCrossbarAudioInputProperty,                 0x00010001,0x00000002 ; 2 = LINE IN
HKR,,AnalogVideoDecoderStandardProperty,               0x00010001,0x00000001 ; 1 = NTSC M / 16 = PAL B
HKR,,CustomUsbSelectiveSuspendEnableProperty,          0x00010001,0x00000000 ; 0 = DISABLE / 1 = ENABLE
HKR,,CustomAnalogVideoFlexibleResolutionPatchProperty, 0x00010001,0x00000001 ; 0 = DISABLE / 1 = ENABLE
HKR,,CustomSoftwareLockProperty,                       0x00010001,0x00000001 ; 0 = DISABLE / 1 = ENABLE
HKR,,CustomInstancesPossibleProperty,                  0x00010001,0x00000001 ; 0 = DISABLE / 1 = ENABLE
HKR,,CustomSoftwareUIProperty, 						   0x00010001,0x00000001 ; 0 = HIDE / 1 = SIMPLE / 2 = FULL
HKR,,CustomAnalogVideoDeinterlaceTypePropertyA,        0x00010001,0x00000001 ; 0 = BOB / 1 = WEAVE / 2 = HYBIRD / 3 = BLEND
HKR,,CustomDebugPrintsProperty,                        0x00010001,0x00000000 ; BIT0: VideoComplete / BIT1: VideoDrop / BIT2: VideoBufferUnavail / BIT24: ToggleLED0 / BIT28: ForceFwScan / BIT29: ForceNoFwScan

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

[GameCapture.NTamd64.Interfaces]
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.CAPTURE.FILTER.GUID.01%, AnalogCapture_Interface.01
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.CAPTURE.FILTER.GUID.02%, AnalogCapture_Interface.02
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.CAPTURE.FILTER.GUID.03%, AnalogCapture_Interface.03
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.CAPTURE.FILTER.GUID.04%, AnalogCapture_Interface.04
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.CAPTURE.FILTER.GUID.05%, AnalogCapture_Interface.05
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.CAPTURE.FILTER.GUID.06%, AnalogCapture_Interface.06
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.CAPTURE.FILTER.GUID.07%, AnalogCapture_Interface.07
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.CAPTURE.FILTER.GUID.08%, AnalogCapture_Interface.08
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.CAPTURE.FILTER.GUID%,    AnalogCapture_Interface

AddInterface = %KSCATEGORY_VIDEO%,                  %ANALOGX.CAPTURE.FILTER.GUID.01%, AnalogCapture_Interface.01
AddInterface = %KSCATEGORY_VIDEO%,                  %ANALOGX.CAPTURE.FILTER.GUID.02%, AnalogCapture_Interface.02
AddInterface = %KSCATEGORY_VIDEO%,                  %ANALOGX.CAPTURE.FILTER.GUID.03%, AnalogCapture_Interface.03
AddInterface = %KSCATEGORY_VIDEO%,                  %ANALOGX.CAPTURE.FILTER.GUID.04%, AnalogCapture_Interface.04
AddInterface = %KSCATEGORY_VIDEO%,                  %ANALOGX.CAPTURE.FILTER.GUID.05%, AnalogCapture_Interface.05
AddInterface = %KSCATEGORY_VIDEO%,                  %ANALOGX.CAPTURE.FILTER.GUID.06%, AnalogCapture_Interface.06
AddInterface = %KSCATEGORY_VIDEO%,                  %ANALOGX.CAPTURE.FILTER.GUID.07%, AnalogCapture_Interface.07
AddInterface = %KSCATEGORY_VIDEO%,                  %ANALOGX.CAPTURE.FILTER.GUID.08%, AnalogCapture_Interface.08
AddInterface = %KSCATEGORY_VIDEO%,                  %ANALOGX.CAPTURE.FILTER.GUID%,    AnalogCapture_Interface

AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.WAVEINX.FILTER.GUID.01%, Audio_Interface.01
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.WAVEINX.FILTER.GUID.02%, Audio_Interface.02
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.WAVEINX.FILTER.GUID.03%, Audio_Interface.03
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.WAVEINX.FILTER.GUID.04%, Audio_Interface.04
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.WAVEINX.FILTER.GUID.05%, Audio_Interface.05
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.WAVEINX.FILTER.GUID.06%, Audio_Interface.06
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.WAVEINX.FILTER.GUID.07%, Audio_Interface.07
AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.WAVEINX.FILTER.GUID.08%, Audio_Interface.08

AddInterface = %KSCATEGORY_AUDIO%,                  %ANALOGX.WAVEINX.FILTER.GUID.01%, Audio_Interface.01
AddInterface = %KSCATEGORY_AUDIO%,                  %ANALOGX.WAVEINX.FILTER.GUID.02%, Audio_Interface.02
AddInterface = %KSCATEGORY_AUDIO%,                  %ANALOGX.WAVEINX.FILTER.GUID.03%, Audio_Interface.03
AddInterface = %KSCATEGORY_AUDIO%,                  %ANALOGX.WAVEINX.FILTER.GUID.04%, Audio_Interface.04
AddInterface = %KSCATEGORY_AUDIO%,                  %ANALOGX.WAVEINX.FILTER.GUID.05%, Audio_Interface.05
AddInterface = %KSCATEGORY_AUDIO%,                  %ANALOGX.WAVEINX.FILTER.GUID.06%, Audio_Interface.06
AddInterface = %KSCATEGORY_AUDIO%,                  %ANALOGX.WAVEINX.FILTER.GUID.07%, Audio_Interface.07
AddInterface = %KSCATEGORY_AUDIO%,                  %ANALOGX.WAVEINX.FILTER.GUID.08%, Audio_Interface.08

AddInterface = %KSCATEGORY_AUDIO_VFW%,              %ANALOGX.WAVEINX.FILTER.GUID.01%, Audio_Interface.01
AddInterface = %KSCATEGORY_AUDIO_VFW%,              %ANALOGX.WAVEINX.FILTER.GUID.02%, Audio_Interface.02
AddInterface = %KSCATEGORY_AUDIO_VFW%,              %ANALOGX.WAVEINX.FILTER.GUID.03%, Audio_Interface.03
AddInterface = %KSCATEGORY_AUDIO_VFW%,              %ANALOGX.WAVEINX.FILTER.GUID.04%, Audio_Interface.04
AddInterface = %KSCATEGORY_AUDIO_VFW%,              %ANALOGX.WAVEINX.FILTER.GUID.05%, Audio_Interface.05
AddInterface = %KSCATEGORY_AUDIO_VFW%,              %ANALOGX.WAVEINX.FILTER.GUID.06%, Audio_Interface.06
AddInterface = %KSCATEGORY_AUDIO_VFW%,              %ANALOGX.WAVEINX.FILTER.GUID.07%, Audio_Interface.07
AddInterface = %KSCATEGORY_AUDIO_VFW%,              %ANALOGX.WAVEINX.FILTER.GUID.08%, Audio_Interface.08

AddInterface = %KSCATEGORY_CAPTURE%,                %ANALOGX.WAVEINX.FILTER.GUID%,    Audio_Interface
AddInterface = %KSCATEGORY_AUDIO%,                  %ANALOGX.WAVEINX.FILTER.GUID%,    Audio_Interface
AddInterface = %KSCATEGORY_AUDIO_VFW%,              %ANALOGX.WAVEINX.FILTER.GUID%,    Audio_Interface

AddInterface = %KSCATEGORY_CROSSBAR%,               %ANALOGX.CROXBAR.FILTER.GUID%,    Crossbar_Interface

;---------------------------------------------------------------
; WDM streaming interfaces 
;---------------------------------------------------------------
[AnalogCapture_Interface.01]
AddReg = AnalogCapture_Interface.AddReg.01

[AnalogCapture_Interface.AddReg.01]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.CAPTURE.NAME.01%
HKR, , CLSID, , %KSPROXY.CLSID%

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

[AnalogCapture_Interface.AddReg.02]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.CAPTURE.NAME.02%
HKR, , CLSID, , %KSPROXY.CLSID%

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

[AnalogCapture_Interface.AddReg.03]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.CAPTURE.NAME.03%
HKR, , CLSID, , %KSPROXY.CLSID%

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

[AnalogCapture_Interface.AddReg.04]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.CAPTURE.NAME.04%
HKR, , CLSID, , %KSPROXY.CLSID%

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

[AnalogCapture_Interface.AddReg.05]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.CAPTURE.NAME.05%
HKR, , CLSID, , %KSPROXY.CLSID%

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

[AnalogCapture_Interface.AddReg.06]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.CAPTURE.NAME.06%
HKR, , CLSID, , %KSPROXY.CLSID%

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

[AnalogCapture_Interface.AddReg.07]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.CAPTURE.NAME.07%
HKR, , CLSID, , %KSPROXY.CLSID%

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

[AnalogCapture_Interface.AddReg.08]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.CAPTURE.NAME.08%
HKR, , CLSID, , %KSPROXY.CLSID%

[AnalogCapture_Interface]
AddReg = AnalogCapture_Interface.AddReg

[AnalogCapture_Interface.AddReg]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.CAPTURE.NAME%
HKR, , CLSID, , %KSPROXY.CLSID%

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

[Audio_Interface.AddReg.01]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.WAVEIN.NAME.01%
HKR, , CLSID, , %KSPROXY.CLSID%

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

[Audio_Interface.AddReg.02]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.WAVEIN.NAME.02%
HKR, , CLSID, , %KSPROXY.CLSID%

[Audio_Interface.03]
AddReg = Audio_Interface.AddReg.03

[Audio_Interface.AddReg.03]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.WAVEIN.NAME.03%
HKR, , CLSID, , %KSPROXY.CLSID%

[Audio_Interface.04]
AddReg = Audio_Interface.AddReg.04

[Audio_Interface.AddReg.04]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.WAVEIN.NAME.04%
HKR, , CLSID, , %KSPROXY.CLSID%

[Audio_Interface.05]
AddReg = Audio_Interface.AddReg.05

[Audio_Interface.AddReg.05]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.WAVEIN.NAME.05%
HKR, , CLSID, , %KSPROXY.CLSID%

[Audio_Interface.06]
AddReg = Audio_Interface.AddReg.06

[Audio_Interface.AddReg.06]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.WAVEIN.NAME.06%
HKR, , CLSID, , %KSPROXY.CLSID%

[Audio_Interface.07]
AddReg = Audio_Interface.AddReg.07

[Audio_Interface.AddReg.07]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.WAVEIN.NAME.07%
HKR, , CLSID, , %KSPROXY.CLSID%

[Audio_Interface.08]
AddReg = Audio_Interface.AddReg.08

[Audio_Interface.AddReg.08]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.WAVEIN.NAME.08%
HKR, , CLSID, , %KSPROXY.CLSID%

[Audio_Interface]
AddReg = Audio_Interface.AddReg

[Audio_Interface.AddReg]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.WAVEIN.NAME%
HKR, , CLSID, , %KSPROXY.CLSID%

[Crossbar_Interface]
AddReg = Crossbar_Interface.AddReg

[Crossbar_Interface.AddReg]
HKR, , FriendlyName, , %PRODUCT.ANALOGX.CROSSBAR.NAME%
HKR, , CLSID, , %KSXBAR.CLSID%

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

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

[GameCapture.ServiceInstall]
DisplayName   = %Service.FriendlyName%
ServiceType   = %SERVICE_KERNEL_DRIVER%
StartType     = %SERVICE_DEMAND_START%
ErrorControl  = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\CY3014.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             = 1
SERVICE_DEMAND_START              = 3
SERVICE_ERROR_NORMAL              = 1
SERVICE_ERROR_IGNORE              = 0


; DirectShow filter categories                                                DirectShow category name
KSPROXY.CLSID                     = "{17CCA71B-ECD7-11D0-B908-00A0C9223196}"	; KSPROXY.AX
KSXBAR.CLSID                      = "{71F96460-78F3-11D0-A18C-00A0C9118956}"	; KSXBAR.AX
KSCATEGORY_CAPTURE                = "{65E8773D-8F56-11D0-A3B9-00A0C9223196}"
KSCATEGORY_VIDEO                  = "{6994AD05-93EF-11D0-A3CC-00A0C9223196}"
KSCATEGORY_AUDIO                  = "{33D9A762-90C8-11D0-BD43-00A0C911CE86}"
KSCATEGORY_AUDIO_VFW              = "{6994AD04-93EF-11D0-A3CC-00A0C9223196}"
KSCATEGORY_CROSSBAR               = "{A799A801-A46D-11D0-A18C-00A02401DCD4}"

;---------------------------------------------------------------
; Non-localizable (this driver)
;---------------------------------------------------------------
; Reference guids
ANALOGX.CAPTURE.FILTER.GUID.01    = "{6F814BE9-9AF6-43CF-9249-C0340100021F}"	;
ANALOGX.CAPTURE.FILTER.GUID.02    = "{6F814BE9-9AF6-43CF-9249-C0340200021F}"	;
ANALOGX.CAPTURE.FILTER.GUID.03    = "{6F814BE9-9AF6-43CF-9249-C0340300021F}"	;
ANALOGX.CAPTURE.FILTER.GUID.04    = "{6F814BE9-9AF6-43CF-9249-C0340400021F}"	;
ANALOGX.CAPTURE.FILTER.GUID.05    = "{6F814BE9-9AF6-43CF-9249-C0340500021F}"	;
ANALOGX.CAPTURE.FILTER.GUID.06    = "{6F814BE9-9AF6-43CF-9249-C0340600021F}"	;
ANALOGX.CAPTURE.FILTER.GUID.07    = "{6F814BE9-9AF6-43CF-9249-C0340700021F}"	;
ANALOGX.CAPTURE.FILTER.GUID.08    = "{6F814BE9-9AF6-43CF-9249-C0340800021F}"	;

ANALOGX.CAPTURE.FILTER.GUID       = "{6F814BE9-9AF6-43CF-9249-C0345A00021F}"	;
ANALOGX.WAVEINX.FILTER.GUID.01    = "{6F814BE9-9AF6-43CF-9249-C0340100031F}"	;
ANALOGX.WAVEINX.FILTER.GUID.02    = "{6F814BE9-9AF6-43CF-9249-C0340200031F}"	;
ANALOGX.WAVEINX.FILTER.GUID.03    = "{6F814BE9-9AF6-43CF-9249-C0340300031F}"	;
ANALOGX.WAVEINX.FILTER.GUID.04    = "{6F814BE9-9AF6-43CF-9249-C0340400031F}"	;
ANALOGX.WAVEINX.FILTER.GUID.05    = "{6F814BE9-9AF6-43CF-9249-C0340500031F}"	;
ANALOGX.WAVEINX.FILTER.GUID.06    = "{6F814BE9-9AF6-43CF-9249-C0340600031F}"	;
ANALOGX.WAVEINX.FILTER.GUID.07    = "{6F814BE9-9AF6-43CF-9249-C0340700031F}"	;
ANALOGX.WAVEINX.FILTER.GUID.08    = "{6F814BE9-9AF6-43CF-9249-C0340800031F}"	;

ANALOGX.WAVEINX.FILTER.GUID       = "{6F814BE9-9AF6-43CF-9249-C0345A00031F}"	;
ANALOGX.CROXBAR.FILTER.GUID       = "{6F814BE9-9AF6-43CF-9249-C0345A00041F}"	;


;---------------------------------------------------------------
; Localizable
;---------------------------------------------------------------
Provider                 = "Elgato "
DiskName                 = "Elgato Driver Disk"

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

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

; DirectShow filter names

PRODUCT.ANALOGX.CAPTURE.NAME.01   = "Game Capture HD60 S (Video) (#01)"
PRODUCT.ANALOGX.CAPTURE.NAME.02   = "Game Capture HD60 S (Video) (#02)"
PRODUCT.ANALOGX.CAPTURE.NAME.03   = "Game Capture HD60 S (Video) (#03)"
PRODUCT.ANALOGX.CAPTURE.NAME.04   = "Game Capture HD60 S (Video) (#04)"
PRODUCT.ANALOGX.CAPTURE.NAME.05   = "Game Capture HD60 S (Video) (#05)"
PRODUCT.ANALOGX.CAPTURE.NAME.06   = "Game Capture HD60 S (Video) (#06)"
PRODUCT.ANALOGX.CAPTURE.NAME.07   = "Game Capture HD60 S (Video) (#07)"
PRODUCT.ANALOGX.CAPTURE.NAME.08   = "Game Capture HD60 S (Video) (#08)"

PRODUCT.ANALOGX.CAPTURE.NAME      = "Game Capture HD60 S, Analog Capture"
PRODUCT.ANALOGX.CROSSBAR.NAME     = "Game Capture HD60 S, Analog Crossbar"
PRODUCT.ANALOGX.WAVEIN.NAME       = "Game Capture HD60 S, Analog WaveIn"

PRODUCT.ANALOGX.WAVEIN.NAME.01    = "Game Capture HD60 S (Audio) (#01)"
PRODUCT.ANALOGX.WAVEIN.NAME.02    = "Game Capture HD60 S (Audio) (#02)"
PRODUCT.ANALOGX.WAVEIN.NAME.03    = "Game Capture HD60 S (Audio) (#03)"
PRODUCT.ANALOGX.WAVEIN.NAME.04    = "Game Capture HD60 S (Audio) (#04)"
PRODUCT.ANALOGX.WAVEIN.NAME.05    = "Game Capture HD60 S (Audio) (#05)"
PRODUCT.ANALOGX.WAVEIN.NAME.06    = "Game Capture HD60 S (Audio) (#06)"
PRODUCT.ANALOGX.WAVEIN.NAME.07    = "Game Capture HD60 S (Audio) (#07)"
PRODUCT.ANALOGX.WAVEIN.NAME.08    = "Game Capture HD60 S (Audio) (#08)"

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