|
|
[Version] signature="$CHICAGO$" Class=MEDIA ClassGUID={4d36e96c-e325-11ce-bfc1-08002be10318} Provider=%MSFT% ; The following line is used only when the INF comes with the Windows system ; IHV needs to comment out the following line for their OEM redistributed disk. ; LayoutFile=layout.inf, layout1.inf, layout2.inf
; You must specify which platform is supported by each SourceDisksNames section ; Valid platform identifiers include .x86, .ia64, .alpha, .axp64 [SourceDisksNames.NT] 333=%DiskDescription%,,,
; You must also specify which platform is supported by each SourceDisksFiles section ; Valid platform identifiers include .x86, .ia64, .alpha, .axp64 [SourceDisksFiles.NT] gfxswap.dll=333 gfxswap.sys=333 gfxswap.inf=333
[Manufacturer] %Msft%=Microsoft
; Excluding drivers from the "Add New Hardware" list. [ControlFlags] ExcludeFromSelect=*
; ; Note that the GUID here is the same as %GFX.DeviceId%. It is a unique ; identifier for the device very similar to hardware PnP IDs. You must ; generate a new GUID for your own GFX. Do not use the one from this sample. ; [Microsoft] %GFX.DeviceDesc%=GFX,SW\{18265810-4768-483a-8fd3-3b6a81d8f5f2}
[DestinationDirs] GFX.CopySys = 12 ; %windir%\system32\drivers GFX.UI = 11 ; %windir%\system32 GFX.CopyINF = 24,DDK ; Applications directory\DDK
; ; This is the section that is invoked by Install. ; [DefaultInstall] CopyFiles=GFX.UI, GFX.CopyINF AddReg=GFX.RunOnce.AddReg RegisterDlls = GFXSwapRegister
[GFX.CopyINF] gfxswap.inf
[GFX.UI] gfxswap.dll
; ; There should be a runonce line for each class that the object server will ; create. The "GFXx" label has to be unique for each line. ; [GFX.RunOnce.AddReg] HKLM,%RunOnce%,"GFX0",,"rundll32.exe streamci,StreamingDeviceSetup %GFX.DeviceId%,%GFX.Ref%,%KSCATEGORY_AUDIO%,%24%\DDK\gfxswap.inf,GFX.Audio.Install" HKLM,%RunOnce%,"GFX1",,"rundll32.exe streamci,StreamingDeviceSetup %GFX.DeviceId%,%GFX.Ref%,%KSCATEGORY_DATATRANSFORM%,%24%\DDK\gfxswap.inf,GFX.Transform.Install"
[GFXSwapRegister] 11, ,GFXSwap.dll,1
; ; This section is for the device (see above at [Microsoft]) ; [GFX] CopyFiles=GFX.CopySys
[GFX.Services] AddService=GfxSwap,0x00000002,GFX.ServiceInstall
[GFX.CopySys] gfxswap.sys
[GFX.ServiceInstall] DisplayName=%GFX.DeviceDesc% ServiceType=%SERVICE_KERNEL_DRIVER% StartType=%SERVICE_DEMAND_START% ErrorControl=%SERVICE_ERROR_NORMAL% ServiceBinary=%10%\system32\drivers\gfxswap.sys
; ; This get called by RunOnce. ; [GFX.Audio.Install] AddReg=GFX.Interface.AddReg AddReg=GFX.Audio.AddReg AddReg=GFX.AddNames.AddReg
; ; This get called by RunOnce. ; [GFX.Transform.Install] AddReg=GFX.Interface.AddReg
[GFX.Interface.AddReg] HKR,,CLSID,,%Proxy.CLSID% HKR,,FriendlyName,,%GFX.FriendlyName%
[GFX.Audio.AddReg] ; Format of these lines is ; [reg-root],[subkey],[value-entry-name],[flags],[value] ; ; This key must be present for the audio system to recognize the filter as a ; GFX HKR,Gfx,,%FLG_ADDREG_KEYONLY% ; Store CLSID of the your vendor-specific UI COM object. Note you ; must use a CLSID different from the one in this sample! ; This GUID is the same as the GUID in section "GFXPropLib" in file GFXprop.idl HKR,Gfx\UserInterface\CLSID,,%FLG_ADDREG_TYPE_SZ%,"{25957AEC-9A65-464B-AE00-8AB9F2ABC678}" ; If you wish to automatically apply this GFX to some specific audio hardware, ; you can customize and include the following lines. ; Specify either GFX_TYPE_RENDER or GFX_TYPE_CAPTURE: ; HKR,Gfx\AutoLoad\0,Type,%FLG_ADDREG_TYPE_DWORD%,%GFX_TYPE_RENDER% ; Specify your PnP hardware ID here: ; HKR,Gfx\AutoLoad\0,HardwareId,%FLG_ADDREG_TYPE_SZ%,"USB\VID_mmmm&PID_nnnn" ; Specify the reference string used for the KSCATEGORY_AUDIO interface ; exposed by your hardware driver. "Global" is typical for USB devices. ; HKR,Gfx\AutoLoad\0,ReferenceString,%FLG_ADDREG_TYPE_SZ%,"Global" ; Set this value to 1 only if it doesn't already exist ; HKR,Gfx\AutoLoad\0,NewAutoLoad,%FLG_ADDREG_TYPE_DWORD_NOCLOBBER%,1 ; If you wish to specify more than one PnP hardwre ID, just repeat ; the above lines but replace Gfx\AutoLoad\0 with Gfx\AutoLoad\1, ; Gfx\AutoLoad\2, etc.
; ; Make the sample autoload on the Microsoft USB speakers. ; Modify the PnP ID to fit your own device. ; HKR,Gfx\AutoLoad\0,Type,%FLG_ADDREG_TYPE_DWORD%,%GFX_TYPE_RENDER% HKR,Gfx\AutoLoad\0,HardwareId,%FLG_ADDREG_TYPE_SZ%,"USB\VID_045E&PID_0014&MI_00" HKR,Gfx\AutoLoad\0,ReferenceString,%FLG_ADDREG_TYPE_SZ%,"Global" HKR,Gfx\AutoLoad\0,NewAutoLoad,%FLG_ADDREG_TYPE_DWORD_NOCLOBBER%,1
; ; This section is used to add the friendly names of the topology nodes. ; Whenever you generate a new name for the GFX node(s) you need to create ; a new GUID. This GUID (GFXGUID.ChannelSwap in Strings section) needs ; to be the same than GUID GFXSAMPLE_NODENAME_CHANNEL_SWAP in file msgfx.h ; [GFX.AddNames.AddReg] HKLM,%MediaCategories%\%GFXGUID.ChannelSwap%,Name,,%GFXNode.ChannelSwap% HKLM,%MediaCategories%\%GFXGUID.ChannelSwap%,Display,1,00,00,00,00
[Strings] ; non-localizeable RunOnce="SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce"
; ; GFX.DeviceId is a unique device ID. GUIDGEN one of these and copy it into ; the Microsoft section above (you need to create your own GUID for your GFX). ; ; If your driver implements multiple AvStream filters, then generate a ; different GFX.Ref for each. These GUIDs need to be unique too, that means ; you need to create your own GUIDs for GFX.Ref. The GUID "GFX.Ref" needs to be ; the same as GUID KSNAME_MsGfxSample in file msgfx.h. ; GFX.DeviceId = "{18265810-4768-483a-8fd3-3b6a81d8f5f2}" GFX.Ref = "{9b365890-165f-11d0-a195-0020afd156e4}"
GFX_TYPE_RENDER = 0x00000001 GFX_TYPE_CAPTURE = 0x00000002
KSCATEGORY_AUDIO = "{6994AD04-93EF-11D0-A3CC-00A0C9223196}" KSCATEGORY_DATATRANSFORM = "{2EB07EA0-7E70-11D0-A5D6-28DB04C10000}" KSCATEGORY_RENDER = "{65E8773E-8F56-11D0-A3B9-00A0C9223196}"
MediaCategories="SYSTEM\CurrentControlSet\Control\MediaCategories"
Proxy.CLSID = "{17CCA71B-ECD7-11D0-B908-00A0C9223196}"
GFXGUID.ChannelSwap = "{2B143FE6-4F67-4b12-8039-CE03EBEF1290}"
SERVICE_KERNEL_DRIVER=1 SERVICE_DEMAND_START=3 SERVICE_ERROR_NORMAL=1
FLG_ADDREG_TYPE_SZ = 0x00000000 FLG_ADDREG_KEYONLY = 0x00000010 FLG_ADDREG_TYPE_MULTI_SZ = 0x00010000 FLG_ADDREG_TYPE_MULTI_SZ_APPEND = 0x00010008 FLG_ADDREG_TYPE_DWORD = 0x00010001 FLG_ADDREG_TYPE_DWORD_NOCLOBBER = 0x00010003
;localizeable MSFT = "Microsoft" GFX.DeviceDesc = "Microsoft WDM Audio GFXSwap (sample)" GFX.FriendlyName = "Microsoft WDM Audio GFXSwap (sample)"
GFXNode.ChannelSwap = "Channel Swap"
|