; AVerFx2HD.INF
; Copyright (c) AVerMedia TECHNOLOGIES, Inc.
; Installation inf file for AVerMedia C874 HD Capture
;

;===================================================
; Version Section
;===================================================

[Version]
Signature="$CHICAGO$"
Class=Media
ClassGUID={4d36e96c-e325-11ce-bfc1-08002be10318}
Provider=%ProviderName%
DriverVer=09/16/2010,1.0.9999.15
CatalogFile=AVerFx2HD.cat
CatalogFile.ntamd64=AVerFx2HDamd64.cat

;===================================================
; Manufacturer Section
;===================================================

[Manufacturer]
%ProviderName%=AVerMedia,NTamd64

;===================================================
; Model Section
;===================================================

[AVerMedia]
%AVerUSBHD.EncDeviceDesc% = USBHDx86,  USB\VID_07ca&PID_c874
%AVerUSBHD.DecDeviceDesc% = USBHDx86,  USB\VID_07ca&PID_c875

[AVerMedia.NTamd64]
%AVerUSBHD.EncDeviceDesc% = USBHDx64,  USB\VID_07ca&PID_c874
%AVerUSBHD.DecDeviceDesc% = USBHDx64,  USB\VID_07ca&PID_c875

;===================================================
; DDInstall Section
;===================================================

[USBHDx86.NT]
DriverVer=09/16/2010,1.0.0.15
Include=ks.inf, kscaptur.inf, ksfilter.inf, bda.inf
Needs=KS.Registration, KSCAPTUR.Registration.NT, BDA.Registration, bda.Installation.NT
CopyFiles=USBHD.CopyDrivers, DSFilters.CopyFiles_x86Inx86
AddReg=USBHD.AddReg.NT, USBHD.PinNameRegist
RegisterDlls=DSFilters.RegDLL_x86Inx86 

[USBHDx64.NT]
DriverVer=09/16/2010,1.0.64.15
Include=ks.inf, kscaptur.inf, ksfilter.inf, bda.inf
Needs=KS.Registration, KSCAPTUR.Registration.NT, BDA.Registration, bda.Installation.NT
CopyFiles=USBHDamd64.CopyDrivers, DSFilters.CopyFiles_x86Inx64
AddReg=USBHD.AddReg.NT, USBHD.PinNameRegist, USBHD.RegDLLWOW
RegisterDlls=DSFilters.RegDLL_x86Inx64 

;===================================================
; Source Section
;===================================================

[SourceDisksNames]
1="AVerMedia USBHD Drivers",,,""

[SourceDisksFiles]
AVerFx2HD.sys		= 1
MBFW.bin		= 1
PushFileSource2.dll	= 1
DumpFile.dll		= 1

[SourceDisksNames.amd64]
1="AVerMedia USBHD Drivers",,,""

[SourceDisksFiles.amd64]
AVerFx2HDamd64.sys	= 1
MBFW.bin		= 1
PushFileSource2.dll	= 1
DumpFile.dll		= 1

;===================================================
; Destination Section
;===================================================

[DestinationDirs]
USBHD.CopyDrivers=12 ; \system32\drivers directory on NT-based systems
USBHDamd64.CopyDrivers=12 ; \system32\drivers directory on NT-based systems
DSFilters.CopyFiles_x86Inx86=11 ; \system32 directory on NT-based systems
DSFilters.CopyFiles_x86Inx64=10,SysWOW64
;DSFilters.CopyFiles_x64Inx64=11 ; \system32 directory on NT-based systems

[USBHD.CopyDrivers]
AVerFx2HD.sys
MBFW.bin

[USBHDamd64.CopyDrivers]
AVerFx2HDamd64.sys
MBFW.bin

; x86 dll in x86 OS
[DSFilters.CopyFiles_x86Inx86]
PushFileSource2.dll
DumpFile.dll

[DSFilters.RegDLL_x86Inx86]
11,,PushFileSource2.dll,1
11,,DumpFile.dll,1

; x86 dll in x64 OS
[DSFilters.CopyFiles_x86Inx64]
PushFileSource2.dll
DumpFile.dll

[DSFilters.RegDLL_x86Inx64] ;does not work on Vista64
10,SysWOW64,PushFileSource2.dll,1
10,SysWOW64,DumpFile.dll,1

[USBHD.RegDLLWOW]
HKLM, Software\Microsoft\Windows\CurrentVersion\RunOnce, "PushFileSource2WOW",, "%10%\SysWOW64\rundll32 %10%\SysWOW64\PushFileSource2.dll,DllRegisterServer"
HKLM, Software\Microsoft\Windows\CurrentVersion\RunOnce, "DumpFileWOW",, "%10%\SysWOW64\rundll32 %10%\SysWOW64\DumpFile.dll,DllRegisterServer"

[USBHD.AddReg.NT]
HKR,,DontSuspendIfStreamsAreRunning,3,01

; CVBS and S-Video
HKR,"DriverData","L1Vol",                 0x00010001, 0x13, 0x00, 0x00, 0x00

; YPbPr
HKR,"DriverData","L2Vol",                 0x00010001, 0x13, 0x00, 0x00, 0x00

; PCB support
HKR,"DriverData","Support_PCB_A_Enable",  0x00010001, 0x00, 0x00, 0x00, 0x00

[USBHD.PinNameRegist]
HKLM,%MediaCategories%\%GUID.PINNAME_STREAM_IN%,Name,,%Pin.StreamIn%
HKLM,%MediaCategories%\%GUID.PINNAME_STREAM_OUT%,Name,,%Pin.StreamOut%
HKLM,%MediaCategories%\%GUID.PINNAME_VIRTUAL_STREAM_IN%,Name,,%Pin.VirtualStreamIn%
HKLM,%MediaCategories%\%GUID.PINNAME_VIRTUAL_STREAM_OUT%,Name,,%Pin.VirtualStreamOut%

;===================================================
; DDInstall.Interface Section
;===================================================

[USBHDx86.NT.Interfaces]
AddInterface = %KSCATEGORY_CAPTURE%, %KSNAME_Filter_01%, AVerFx2HD_01_Interface,

[USBHDx64.NT.Interfaces]
AddInterface = %KSCATEGORY_CAPTURE%, %KSNAME_Filter_01%, AVerFx2HD_01_Interface,

[AVerFx2HD_01_Interface]
AddReg=AVerFx2HD_01_Interface.AddReg

[AVerFx2HD_01_Interface.AddReg]
HKR,,CLSID,,%CLSID_Proxy%
HKR,,FriendlyName,,%AVerUSBHD_01.FriendlyName%

;===================================================
; DDInstall.Services Section
;===================================================

[USBHDx86.NT.Services]
AddService = USBHD,0x00000002,USBHD.ServiceInstall

[USBHDx64.NT.Services]
AddService = USBHD,0x00000002,USBHDamd64.ServiceInstall

[USBHD.ServiceInstall]
DisplayName   = %AVerUSBHD.DeviceDesc%
ServiceType   = %SERVICE_KERNEL_DRIVER%
StartType     = %SERVICE_DEMAND_START%
ErrorControl  = %SERVICE_ERROR_NORMAL%
ServiceBinary = %10%\system32\drivers\AVerFx2HD.sys

[USBHDamd64.ServiceInstall]
DisplayName   = %AVerUSBHD.DeviceDesc%
ServiceType   = %SERVICE_KERNEL_DRIVER%
StartType     = %SERVICE_DEMAND_START%
ErrorControl  = %SERVICE_ERROR_NORMAL%
ServiceBinary = %10%\system32\drivers\AVerFx2HDamd64.sys

;===================================================
; Strings Section
;===================================================

[Strings]
;----------------
; Non-Localizable
;----------------
SERVICE_KERNEL_DRIVER=1
SERVICE_DEMAND_START=3
SERVICE_ERROR_NORMAL=1
MediaCategories="SYSTEM\CurrentControlSet\Control\MediaCategories"
MediaInterfaces="System\CurrentControlSet\Control\MediaInterfaces"
ActiveMovieCategories="CLSID\{da4e3da0-d07d-11d0-bd50-00a0c911ce86}\Instance"

;----------------
;STANDARD GUID
;----------------
KSCATEGORY_CAPTURE		= "{65E8773D-8F56-11D0-A3B9-00A0C9223196}"
CLSID_Proxy			= "{17CCA71B-ECD7-11D0-B908-00A0C9223196}"

;----------------
;LOCAL GUID
;----------------
KSNAME_Filter_01			= "{0F8E4B70-B3C6-466c-9E30-A20337A5FB38}"
GUID.PINNAME_STREAM_IN			= "{DF97414B-E801-454e-82EA-55E3F621B131}"
GUID.PINNAME_STREAM_OUT			= "{B46E3B10-50C6-49e1-8C13-27A2A92B5C4E}"
GUID.PINNAME_VIRTUAL_STREAM_IN		= "{C08516F1-72BA-4239-99A5-7363B98988FB}"
GUID.PINNAME_VIRTUAL_STREAM_OUT		= "{33643F6E-F1DF-435e-823D-FB14CC4B91A2}"


;----------------
; Localizable
;----------------
AVerUSBHD.DeviceDesc			= "AVerMedia USB HD Device"
AVerUSBHD.EncDeviceDesc			= "AVerMedia C874 USB HD Capture(Slave)"
AVerUSBHD.DecDeviceDesc			= "AVerMedia C874 USB HD Capture(Master)"
AVerUSBHD_01.FriendlyName		= "AVerMedia USB HD Capture"
Pin.StreamIn				= "Stream In"
Pin.StreamOut				= "Stream Out"
Pin.VirtualStreamIn			= "Virtual Stream In"
Pin.VirtualStreamOut			= "Virtual Stream Out"

; Our strings

AVerMedia                    = "AVerMedia TECHNOLOGIES, Inc."
ProviderName                 = "AVerMedia TECHNOLOGIES, Inc."