Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

197 lines
6.5 KiB

[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"