; Copyright (c) Microsoft Corporation.  All rights reserved.

[Version]
Signature="$CHICAGO$"
Class=Image
ClassGUID={6bdd1fc6-810f-11d0-bec7-08002be2092f}
Provider=%Msft%
DriverVer=06/21/2006,6.1.7601.17514

[ControlFlags]
ExcludeFromSelect=*

[SourceDisksNames]
3426=windows cd

[SourceDisksFiles]
usbvideo.sys 		= 3426

[DestinationDirs]
USBVideo.CopyList=10,system32\drivers

[Manufacturer]
%Msft%=Microsoft,NTx86

[Microsoft.NTx86]
%USBVideo.DeviceDesc%=USBVideo,USB\CLASS_0E

[USBVideo.NT]
Include=ks.inf, kscaptur.inf
Needs=KS.Registration, KSCAPTUR.Registration.NT
CopyFiles=USBVideo.CopyList
AddReg=USBVideo.AddReg, TopologyNodeRegistration, DVCR.Plugins
AddProperty=USBVideo.AddProp

; to expose non-generic device name via coinstaller
PreferDeviceInfo=1

[USBVideo.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,usbvideo.sys

[USBVideo.AddProp]
GenericDriverInstalled,,,,1

[USBVideo.NT.CoInstallers]
AddReg=MMCICO.AddReg

[MMCICO.AddReg]
HKR,,CoInstallers32,0x00010000,"mmcico.dll,MediaClassCoInstaller"

[TopologyNodeRegistration]
HKLM,%MediaCategories%\%GUID.VideoStreaming%,Name,,%Node.VideoStreaming%
HKLM,%MediaCategories%\%GUID.VideoStreaming%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.VideoInputTerminal%,Name,,%Node.VideoInputTerminal%
HKLM,%MediaCategories%\%GUID.VideoInputTerminal%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.VideoOutputTerminal%,Name,,%Node.VideoOutputTerminal%
HKLM,%MediaCategories%\%GUID.VideoOutputTerminal%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.VideoSelector%,Name,,%Node.VideoSelector%
HKLM,%MediaCategories%\%GUID.VideoSelector%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.VideoProcessing%,Name,,%Node.VideoProcessing%
HKLM,%MediaCategories%\%GUID.VideoProcessing%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.VideoCameraTerminal%,Name,,%Node.VideoCameraTerminal%
HKLM,%MediaCategories%\%GUID.VideoCameraTerminal%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.VideoInputMTT%,Name,,%Node.VideoInputMTT%
HKLM,%MediaCategories%\%GUID.VideoInputMTT%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%GUID.VideoOutputMTT%,Name,,%Node.VideoOutputMTT%
HKLM,%MediaCategories%\%GUID.VideoOutputMTT%,Display,1,00,00,00,00


[DVCR.PlugIns]
; This IID is aggregated for the filter given the CLSID of the property set
HKLM,System\CurrentControlSet\Control\MediaInterfaces\{B5730A90-1A2C-11cf-8C23-00AA006B6814},,,%PlugIn_IAMExtDevice%
HKLM,System\CurrentControlSet\Control\MediaInterfaces\{B5730A90-1A2C-11cf-8C23-00AA006B6814},IID,1,90,0A,73,B5,2C,1A,cf,11,8C,23,00,AA,00,6B,68,14


; This IID is aggregated for the filter given the CLSID of the property set
HKLM,System\CurrentControlSet\Control\MediaInterfaces\{A03CD5F0-3045-11cf-8C44-00AA006B6814},,,%PlugIn_IAMExtTransport%
HKLM,System\CurrentControlSet\Control\MediaInterfaces\{A03CD5F0-3045-11cf-8C44-00AA006B6814},IID,1,F0,D5,3C,A0,45,30,cf,11,8C,44,00,AA,00,6B,68,14


; This IID is aggregated for the filter given the CLSID of the property set
HKLM,System\CurrentControlSet\Control\MediaInterfaces\{9B496CE1-811B-11cf-8C77-00AA006B6814},,,%PlugIn_IAMTimecodeReader%
HKLM,System\CurrentControlSet\Control\MediaInterfaces\{9B496CE1-811B-11cf-8C77-00AA006B6814},IID,1,E1,6C,49,9B,1B,81,cf,11,8C,77,00,AA,00,6B,68,14

;
; Property Pages
;

;
; Associate the property set with the above property page
;
; IAMExtDevice, IAMExttransport and IAMTimecodeReader interfaces
; all use the same property pages.
;
HKLM,System\CurrentControlSet\Control\MediaSets\{B5730A90-1A2C-11cf-8C23-00AA006B6814}\PropertyPages\{81e9dd62-78d5-11d2-b47e-006097b3391b},,,%PropPage_DVcrControl%
HKLM,System\CurrentControlSet\Control\MediaSets\{A03CD5F0-3045-11cf-8C44-00AA006B6814}\PropertyPages\{81e9dd62-78d5-11d2-b47e-006097b3391b},,,%PropPage_DVcrControl%
HKLM,System\CurrentControlSet\Control\MediaSets\{9B496CE1-811B-11cf-8C77-00AA006B6814}\PropertyPages\{81e9dd62-78d5-11d2-b47e-006097b3391b},,,%PropPage_DVcrControl%


[USBVideo.Interfaces]
AddInterface=%KSCATEGORY_CAPTURE%,GLOBAL,USBVideo.Interface
AddInterface=%KSCATEGORY_RENDER%,GLOBAL,USBVideo.Interface
AddInterface=%KSCATEGORY_VIDEO%,GLOBAL,USBVideo.Interface
AddInterface=%KSCATEGORY_RENDER_EXT%,GLOBAL,USBVideo.Interface

[USBVideo.NT.Interfaces]
AddInterface=%KSCATEGORY_CAPTURE%,GLOBAL,USBVideo.Interface
AddInterface=%KSCATEGORY_RENDER%,GLOBAL,USBVideo.Interface
AddInterface=%KSCATEGORY_VIDEO%,GLOBAL,USBVideo.Interface
AddInterface=%KSCATEGORY_RENDER_EXT%,GLOBAL,USBVideo.Interface

[USBVideo.Interface]
AddReg=USBVideo.Interface.AddReg
         
[USBVideo.Interface.AddReg]
HKR,,CLSID,,%ProxyVCap.CLSID%
HKR,,FriendlyName,,%USBVideo.DeviceDesc%
HKR,,RTCFlags,0x00010001,0x00000010

[USBVideo.NT.Services]
AddService = usbvideo,0x00000002,USBVideo.ServiceInstall

[USBVideo.ServiceInstall]
DisplayName   = %USBVideo.SvcDesc%
ServiceType   = %SERVICE_KERNEL_DRIVER%
StartType     = %SERVICE_DEMAND_START%
ErrorControl  = %SERVICE_ERROR_NORMAL%
ServiceBinary = %10%\System32\Drivers\usbvideo.sys


[USBVideo.CopyList]
usbvideo.sys,,,0x0100



[Strings]

;-----------------
; Non-Localizable
;-----------------
ProxyVCap.CLSID="{17CCA71B-ECD7-11D0-B908-00A0C9223196}"
KSCATEGORY_RENDER="{65E8773E-8F56-11D0-A3B9-00A0C9223196}"
KSCATEGORY_CAPTURE="{65E8773D-8F56-11D0-A3B9-00A0C9223196}"
KSCATEGORY_VIDEO="{6994AD05-93EF-11D0-A3CC-00A0C9223196}"
KSCATEGORY_RENDER_EXT="{CC7BFB41-F175-11D1-A392-00E0291F3959}"
SERVICE_KERNEL_DRIVER=1
SERVICE_DEMAND_START=3
SERVICE_ERROR_NORMAL=1

MediaCategories="SYSTEM\CurrentControlSet\Control\MediaCategories"
GUID.VideoStreaming="{DFF229E1-F70F-11D0-B917-00A0C9223196}"
GUID.VideoInputTerminal="{DFF229E2-F70F-11D0-B917-00A0C9223196}"
GUID.VideoOutputTerminal="{DFF229E3-F70F-11D0-B917-00A0C9223196}"
GUID.VideoSelector="{DFF229E4-F70F-11D0-B917-00A0C9223196}"
GUID.VideoProcessing="{DFF229E5-F70F-11D0-B917-00A0C9223196}"
GUID.VideoCameraTerminal="{DFF229E6-F70F-11D0-B917-00A0C9223196}"
GUID.VideoInputMTT="{DFF229E7-F70F-11D0-B917-00A0C9223196}"
GUID.VideoOutputMTT="{DFF229E8-F70F-11D0-B917-00A0C9223196}"

;------------
;Localizable
;------------
Msft="Microsoft"
USBVideo.DeviceDesc="USB Video Device"
USBVideoStreaming.DeviceDesc="USB Video Device (VS Interface)"
USBVideo.SvcDesc="USB Video Device (WDM)"

Node.VideoStreaming="Video Streaming"
Node.VideoInputTerminal="Video Input Terminal"
Node.VideoOutputTerminal="Video Output Terminal"
Node.VideoSelector="Video Selector"
Node.VideoProcessing="Video Processing"
Node.VideoCameraTerminal="Video Camera Terminal"
Node.VideoInputMTT="Video Input Media Transport Terminal"
Node.VideoOutputMTT="Video Output Media Transport Terminal"


;
; PlugIns Descriptions
;
PlugIn_IAMExtDevice="WDM Streaming IAMExtDevice Interface Handler"
PlugIn_IAMExtTransport="WDM Streaming IAMExtTransport Interface Handler"
PlugIn_IAMTimecodeReader="WDM Streaming IAMTimecodeReader Interface Handler"
Plugin_IExtTransport="WDM Streaming IExtTransport Interface Handler"
PropPage_DVcrControl="DVcrControl Property Page"
Plugin_IKsTopologyInfo="WDM Streaming IKsTopologyInfo Interface Handler"
Plugin_ICameraControl="WDM Streaming ICameraControl Interface Handler"
Plugin_IVideoProcAmp="WDM Streaming IVideoProcAmp Interface Handler"
Plugin_ISelector="WDM Streaming ISelector Interface Handler"
Plugin_PropertyObject="Node Interface Aggregation Handler"

