[wdmaudiodev] Inf file problems.

  • From: Ed Tottenham <Ed.Tottenham@xxxxxxxxx>
  • To: "wdmaudiodev@xxxxxxxxxxxxx" <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Tue, 3 Sep 2019 14:54:28 +0000

Hello,



I wonder if anyone can help me with two problems with the inf file for our 
audio driver.



The inf file was created using the MSVAD driver's inf file as a template.



The first problem is more of a question. In the Sound System Control Panel, the 
tab for "Supported Formats" (Dolby, DTS etc.) is always shown. Is this 
something that can be removed by changing the inf file or should I be doing 
something more fundamental?



The second problem is that since the 1903 update to windows 10, the device 
endpoint names are not being created in the registry, so all channels show up 
as "Digital Input" or "Digital Output" in the Sound Control Panel. I've been 
staring at the inf file till I'm blue in the face, but I just can't see why the 
entries are no longer written to the registry.



Can anybody help by looking at the inf file below?



Best wishes

Ed Tottenham





Inf file follows:

----------------------------------------------------



[Version]
Signature="$CHICAGO$"
Class=MEDIA
Provider=%PrismSound%
ClassGUID={4d36e96c-e325-11ce-bfc1-08002be10318}
DriverVer=09/19/2016,13.35.48.843
CatalogFile=PrismSoundWDM_WIN7_X64.cat



[SourceDisksNames]
222="Prism Sound WDM Audio Drivers Disk","",222



[SourceDisksFiles]
PrismSoundWDM_WIN7_X64.sys=222



;;This syntax is only recognized on Windows XP and above- it is needed to 
install 64-bit drivers on
;;Windows Server 2003 Service Pack 1 and above.



[Manufacturer]
%PrismMedia%=PrismAudio,NTAMD64



;;  For Windows Server 2003 Service Pack 1 and above, a 64-bit OS will not 
install a driver
;;  unless the Manufacturer and Models Sections explicitly show it is a driver 
for that platform
;;  But the individual model section decorations (or lack thereof) work as they 
always have.
;;  All of the model sections referred to are undecorated or NT-decorated, 
hence work on all platforms

;; This section enables installing on x64 systems

[PrismAudio.NTAMD64]
%PrismWDM_Simple.DeviceDesc%=PrismWDM_Simple,*PrismWDM



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

;======================================================
; PrismWDM_SIMPLE
;======================================================

[PrismWDM_Simple.CopyList]
PrismSoundWDM_WIN7_X64.sys



[PrismWDM_Simple.AddReg]
HKR,,AssociatedFilters,,"wdmaud,swmidi,redbook"
HKR,,Driver,,PrismSoundWDM_WIN7_X64.sys

HKR,Drivers,SubClasses,,"wave,midi,mixer"

HKR,Drivers\wave\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\midi\wdmaud.drv,Driver,,wdmaud.drv
HKR,Drivers\mixer\wdmaud.drv,Driver,,wdmaud.drv

HKR,Drivers\wave\wdmaud.drv,Description,,%PrismWDM_Simple.DeviceDesc%
HKR,Drivers\midi\wdmaud.drv,Description,,%PrismWDM_MIDI%
HKR,Drivers\mixer\wdmaud.drv,Description,,%PrismWDM_Simple.DeviceDesc%

HKLM,%MediaCategories%\%Simple.NameGuid%,Name,,%Simple.Name%





;======================================================
; COMMON
;======================================================
[PrismWDM.I.Wave]
AddReg=PrismWDM.I.Wave.AddReg,PrismWDM_NAMES.AddReg

[PrismWDM.I.Wave.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%Prism.Wave.szPname%
HKR,"EP\\0",%PKEY_AudioEndpoint_Association%,,%KSNODETYPE_ANY%
HKR,"EP\\0",%PKEY_AudioEngine_OEMFormat%,1,41,00,00,00,28,00,00,00,FE,FF,02,00,00,EE,02,00,00,94,11,00,06,00,18,00,16,00,18,00,03,00,00,00,01,00,00,00,00,00,10,00,80,00,00,AA,00,38,9B,71



[PrismWDM_NAMES.AddReg]
;; Pins
HKLM,%MediaCategories%\%PLWGUID.AnalogIn1%,Name,,%PLWPin.AnalogIn1%
HKLM,%MediaCategories%\%PLWGUID.AnalogIn1%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.AnalogIn2%,Name,,%PLWPin.AnalogIn2%
HKLM,%MediaCategories%\%PLWGUID.AnalogIn2%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.AnalogIn3%,Name,,%PLWPin.AnalogIn3%
HKLM,%MediaCategories%\%PLWGUID.AnalogIn3%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.AnalogIn4%,Name,,%PLWPin.AnalogIn4%
HKLM,%MediaCategories%\%PLWGUID.AnalogIn4%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.AnalogOut1%,Name,,%PLWPin.AnalogOut1%
HKLM,%MediaCategories%\%PLWGUID.AnalogOut1%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.AnalogOut2%,Name,,%PLWPin.AnalogOut2%
HKLM,%MediaCategories%\%PLWGUID.AnalogOut2%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.AnalogOut3%,Name,,%PLWPin.AnalogOut3%
HKLM,%MediaCategories%\%PLWGUID.AnalogOut3%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.AnalogOut4%,Name,,%PLWPin.AnalogOut4%
HKLM,%MediaCategories%\%PLWGUID.AnalogOut4%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.DigitalIn1%,Name,,%PLWPin.DigitalIn1%
HKLM,%MediaCategories%\%PLWGUID.DigitalIn1%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.DigitalOut1%,Name,,%PLWPin.DigitalOut1%
HKLM,%MediaCategories%\%PLWGUID.DigitalOut1%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.ADATIn1%,Name,,%PLWPin.ADATIn1%
HKLM,%MediaCategories%\%PLWGUID.ADATIn1%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.ADATIn2%,Name,,%PLWPin.ADATIn2%
HKLM,%MediaCategories%\%PLWGUID.ADATIn2%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.ADATIn3%,Name,,%PLWPin.ADATIn3%
HKLM,%MediaCategories%\%PLWGUID.ADATIn3%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.ADATIn4%,Name,,%PLWPin.ADATIn4%
HKLM,%MediaCategories%\%PLWGUID.ADATIn4%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.ADATOut1%,Name,,%PLWPin.ADATOut1%
HKLM,%MediaCategories%\%PLWGUID.ADATOut1%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.ADATOut2%,Name,,%PLWPin.ADATOut2%
HKLM,%MediaCategories%\%PLWGUID.ADATOut2%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.ADATOut3%,Name,,%PLWPin.ADATOut3%
HKLM,%MediaCategories%\%PLWGUID.ADATOut3%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.ADATOut4%,Name,,%PLWPin.ADATOut4%
HKLM,%MediaCategories%\%PLWGUID.ADATOut4%,Display,1,00,00,00,00
HKLM,%MediaCategories%\%PLWGUID.Headphone%,Name,,%PLWPin.Headphone%
HKLM,%MediaCategories%\%PLWGUID.Headphone%,Display,1,00,00,00,00

[PrismWDM.I.Topo]
AddReg=PrismWDM.I.Topo.AddReg

[PrismWDM.I.Topo.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%Prism.Topo.szPname%



;======================================================
; PrismWDM_SIMPLE
;======================================================

[PrismWDM_Simple.NTAMD64]
Include=ks.inf,wdmaudio.inf
Needs=KS.Registration, WDMAUDIO.Registration
CopyFiles=PrismWDM_Simple.CopyList
AddReg=PrismWDM_Simple.AddReg



[PrismWDM_Simple.NTAMD64.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave%,PrismWDM.I.Wave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_Wave%,PrismWDM.I.Wave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_Wave%,PrismWDM.I.Wave
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topology%,PrismWDM.I.Topo



[PrismWDM_Simple.NTAMD64.Services]
AddService=PrismWDM_simple,0x00000002,PrismWDM_Simple_Service_Inst



[PrismWDM_Simple_Service_Inst]
DisplayName=%PrismWDM_simple.SvcDesc%
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%10%\system32\drivers\PrismSoundWDM_WIN7_X64.sys





;======================================================
; COMMON
;======================================================
[Strings]
PrismSound="Prism Sound"
PrismMedia="Audio Squadron Ltd."
PrismWDM_Simple.DeviceDesc="Prism Sound WDM Audio Device"

Prism.Wave.szPname="Prism Wave"
Prism.Topo.szPname="Prism Topology"
PrismWDM_MIDI="Prism -> WDM Midi Device"

Proxy.CLSID="{17CCA71B-ECD7-11D0-B908-00A0C9223196}"

KSCATEGORY_AUDIO="{6994AD04-93EF-11D0-A3CC-00A0C9223196}"
KSCATEGORY_RENDER="{65E8773E-8F56-11D0-A3B9-00A0C9223196}"
KSCATEGORY_CAPTURE="{65E8773D-8F56-11D0-A3B9-00A0C9223196}"

KSNODETYPE_ANY      = "{00000000-0000-0000-0000-000000000000}"

KSNAME_Wave="Wave"
KSNAME_Topology="Topology"

PrismWDM_simple.SvcDesc="Prism Sound WDM Audio Device"

MediaCategories="SYSTEM\CurrentControlSet\Control\MediaCategories"

Simple.NameGuid="{946A7B1A-EBBC-422a-A81F-F07C8D40D3B4}"
Simple.Name="Prism WDM"



;; Pins
PLWGUID.AnalogIn1       ="{8E37AE30-2E11-4845-B3A6-AD0E86055C61}"
PLWGUID.AnalogIn2 ="{65EB395B-6EE1-4BF1-B1AD-C68FE59EA3D0}"
PLWGUID.AnalogIn3 ="{27586AF3-0BA9-45B7-A111-3153DF72B92A}"
PLWGUID.AnalogIn4 ="{5B948A4E-D111-463C-822C-AAA13DA4E10A}"
PLWGUID.AnalogOut1      ="{9B75DA74-6D1D-41F6-B25D-04B97B916AAE}"
PLWGUID.AnalogOut2      ="{93C4683E-E7B6-4568-B5D8-AF97C19A52C1}"
PLWGUID.AnalogOut3      ="{24D70761-E8F3-47AA-8B20-1BF48A7058FB}"
PLWGUID.AnalogOut4      ="{81812A72-34B9-4AD2-AAAB-93BCEB0F367A}"
PLWGUID.DigitalIn1      ="{BD5412E6-FA67-4BDD-96A3-16E925FE438B}"
PLWGUID.DigitalOut1     ="{3761A567-0DCE-4513-A813-C1099FD4302F}"
PLWGUID.ADATIn1         ="{28C6AFF0-D709-4E6C-8075-3EA63E351038}"
PLWGUID.ADATIn2         ="{7A45FB25-D91A-4DFB-AFB8-BA97734F549F}"
PLWGUID.ADATIn3         ="{5E940B0A-0767-4D87-9694-BF592053F46B}"
PLWGUID.ADATIn4         ="{ABFBB037-BA8B-41AF-885D-C948F8C95AE6}"
PLWGUID.ADATOut1        ="{68E3A829-431C-4A39-8A99-20FCB2678216}"
PLWGUID.ADATOut2        ="{8C952C69-4532-45EB-933D-FC17109F245A}"
PLWGUID.ADATOut3        ="{7664755F-D391-488A-83C5-853F6EFC729C}"
PLWGUID.ADATOut4        ="{6BDA0045-5422-402E-8F67-0743AC5507FC}"
PLWGUID.Headphone       ="{F703C95D-9A4A-45C3-AD52-FB59C113F6AF}"

;; Pin Names
PLWPin.AnalogIn1        ="Analog In (1+2)"
PLWPin.AnalogIn2        ="Analog In (3+4)"
PLWPin.AnalogIn3        ="Analog In (5+6)"
PLWPin.AnalogIn4        ="Analog In (7+8)"
PLWPin.AnalogOut1       ="Analog Out (1+2)"
PLWPin.AnalogOut2       ="Analog Out (3+4)"
PLWPin.AnalogOut3       ="Analog Out (5+6)"
PLWPin.AnalogOut4       ="Analog Out (7+8)"
PLWPin.DigitalIn1       ="Digital In (1+2)"
PLWPin.DigitalOut1      ="Digital Out (1+2)"
PLWPin.ADATIn1          ="ADAT In (1+2)"
PLWPin.ADATIn2          ="ADAT In (3+4)"
PLWPin.ADATIn3          ="ADAT In (5+6)"
PLWPin.ADATIn4          ="ADAT In (7+8)"
PLWPin.ADATOut1         ="ADAT Out (1+2)"
PLWPin.ADATOut2         ="ADAT Out (3+4)"
PLWPin.ADATOut3         ="ADAT Out (5+6)"
PLWPin.ADATOut4         ="ADAT Out (7+8)"
PLWPin.Headphone        ="Headphone"

PKEY_AudioEngine_OEMFormat =     "{E4870E26-3CC5-4CD2-BA46-CA0A9A70ED04},3"
PKEY_AudioEndpoint_Association = "{1DA5D803-D492-4EDD-8C23-E0C0FFEE7F0E},2"


Other related posts: