;Copyright (c) C-Media Electronics Inc. All rights reserved.

[SourceDisksNames]
111=%DiskDescription%

[SourceDisksFiles.x86]
HTOFENIXB.sys = 111
CMEffectAPO_HTOFENIX.dll = 111, \x86
CMCplExt_HTOFENIX.dll = 111, \x86

[SourceDisksFiles.amd64]
HTOFENIXB64.sys = 111
CMEffectAPO_HTOFENIX.dll = 111, \x64
CMCplExt_HTOFENIX.dll = 111, \x64

[Version]
Signature="$Windows NT$"
Class=MEDIA
ClassGuid={4d36e96c-e325-11ce-bfc1-08002be10318}
Provider=%ProviderName%
DriverVer=09/19/2014,8.1.1.2
CatalogFile=HTOFENIXB.cat

[DestinationDirs]
DefaultDestDir = 12
CMEFFECT.CopyFiles=11

[CMEFFECT.CopyFiles]
CMEffectAPO_HTOFENIX.dll
CMCplExt_HTOFENIX.dll

[Manufacturer]
HT OMEGA = HTOmegaHDA, ntamd64

[SignatureAttributes]
HTOFENIXB.sys=SignatureAttributes.DRM
HTOFENIXB64.sys=SignatureAttributes.DRM
CMEffectAPO_HTOFENIX.dll=SignatureAttributes.PETrust

[SignatureAttributes.DRM]
DRMLevel=1300

[SignatureAttributes.PETrust]
PETrust=true

;============================================================================

[ControlFlags]
ExcludeFromSelect = *

[HTOmegaHDA]
%HdAudioFunctionDriver.HTOFENIX.DeviceDesc% = HTOmegaHdAudModel, HDAUDIO\FUNC_01&VEN_13F6&DEV_8828&SUBSYS_72848828
[HTOmegaHDA.ntamd64]
%HdAudioFunctionDriver.HTOFENIX.DeviceDesc% = HTOmegaHdAudModel64, HDAUDIO\FUNC_01&VEN_13F6&DEV_8828&SUBSYS_72848828

[HTOmegaHdAudModel]
Include		= ks.inf,wdmaudio.inf
Needs		= KS.Registration,WDMAUDIO.Registration,mssysfx.CopyFilesAndRegister
CopyFiles 	= @HTOFENIXB.sys, CMEFFECT.CopyFiles
AddReg    	= HdAudCommon.AddReg, HdAudModel.AddReg, SfxFx.AddReg
AddProperty 	= HTOmegaHdAudBranding.AddProperty, HdAudModel.AddProperty
[HTOmegaHdAudModel64.ntamd64]
Include		= ks.inf,wdmaudio.inf
Needs		= KS.Registration,WDMAUDIO.Registration,mssysfx.CopyFilesAndRegister
CopyFiles 	= @HTOFENIXB64.sys, CMEFFECT.CopyFiles
AddReg    	= HdAudCommon.AddReg, HdAudModel64.AddReg, SfxFx.AddReg
AddProperty 	= HTOmegaHdAudBranding64.AddProperty, HdAudModel.AddProperty

; Enable driver to do its own volume persistence
[HdAudModel.AddProperty]
{F3E80BEF-1723-4FF2-BCC4-7F83DC5E46D4},2,7,,1


[HTOmegaHdAudModel.HW]
AddReg = HdAudSecurity.AddReg
[HTOmegaHdAudModel64.ntamd64.HW]
AddReg = HdAudSecurity.AddReg

; Called by needs entry in oem inf -- DO NOT REMOVE

[HTOmegaHdAudModel.Services]
AddService=HTHdAudAddService, 0x00000002, HdAud_Service_Install
[HTOmegaHdAudModel64.ntamd64.Services]
AddService=HTHdAudAddService, 0x00000002, HdAud_Service_Install64

[HdAud_Service_Install]
DisplayName   = %HTFunctionDriverForHdAudio.SvcDesc%
ServiceType   = 1
StartType     = 3
ErrorControl  = 1
ServiceBinary = %12%\HTOFENIXB.sys
[HdAud_Service_Install64]
DisplayName   = %HTFunctionDriverForHdAudio.SvcDesc%
ServiceType   = 1
StartType     = 3
ErrorControl  = 1
ServiceBinary = %12%\HTOFENIXB64.sys

[HdAudModel.AddReg]
HKR,,Driver,,HTOFENIXB.sys
[HdAudModel64.AddReg]
HKR,,Driver,,HTOFENIXB64.sys

[HdAudCommon.AddReg]
HKR,Drivers,SubClasses,,"wave,midi,mixer,aux"

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\aux\wdmaud.drv,Driver,,wdmaud.drv

HKR,Drivers\wave\wdmaud.drv,Description,,%HdAudioDeviceDescription%
HKR,Drivers\midi\wdmaud.drv,Description,,%HdAudioDeviceDescription%
HKR,Drivers\mixer\wdmaud.drv,Description,,%HdAudioDeviceDescription%
HKR,Drivers\aux\wdmaud.drv,Description,,%HdAudioDeviceDescription%

; Registry key to enable waveRT by default
HKR,GlobalSettings,EnableWaveRT,1,01,00,00,00
;HKR,PowerSettings,ConservationIdleTime,1,1e,00,00,0     ; 10 seconds for idle power management when on battery
;HKR,PowerSettings,PerformanceIdleTime,1,00,00,00,00     ; Not doing idle power management when on AC power
;HKR,PowerSettings,IdlePowerState,1,03,00,00,00          ; go to D3 for idle power management
HKR,PowerSettings,ConservationIdleTime,3,1e,00,00,0     ; 10 seconds for idle power management when on battery
HKR,PowerSettings,PerformanceIdleTime,3,00,00,00,00     ; Not doing idle power management when on AC power
HKR,PowerSettings,IdlePowerState,3,03,00,00,00          ; go to D3 for idle power management

HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%HDAGuidHeadphoneAmpNode%,Name,,%HDAHeadphoneAmpNodeName%
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%HDAGuidHeadphoneAmpNode%,Display,1,00,00,00,00
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%HDAGuidStereoMixPin%,Name,,%HDAStereoMixPinName%
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%HDAGuidStereoMixPin%,Display,1,00,00,00,00
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%HDAGuidAuxInPin%,Name,,%HDAAuxInPinName%
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%HDAGuidAuxInPin%,Display,1,00,00,00,00
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%HDAGuidSPDIFIn2Pin%,Name,,%HDASPDIFIn2PinName%
HKLM,SYSTEM\CurrentControlSet\Control\MediaCategories\%HDAGuidSPDIFIn2Pin%,Display,1,00,00,00,00

[SfxFx.AddReg]
HKCR,CLSID\%SYSFX_POSTMIX_CLSID%,,,"CMEffect Class (Global)"
HKCR,CLSID\%SYSFX_POSTMIX_CLSID%\InProcServer32,,,%11%\CMEffectAPO_HTOFENIX.dll
HKCR,CLSID\%SYSFX_POSTMIX_CLSID%\InProcServer32,ThreadingModel,,"Both"

HKCR,CLSID\%SYSFX_PREMIX_CLSID%,,,"CMEffect Class (Local)"
HKCR,CLSID\%SYSFX_PREMIX_CLSID%\InProcServer32,,,%11%\CMEffectAPO_HTOFENIX.dll
HKCR,CLSID\%SYSFX_PREMIX_CLSID%\InProcServer32,ThreadingModel,,"Both"

HKCR,CLSID\%SYSFX_UI_CLSID%,,,"CMEffect PropPageExt Class"
HKCR,CLSID\%SYSFX_UI_CLSID%\InProcServer32,,,%11%\CMCplExt_HTOFENIX.dll
HKCR,CLSID\%SYSFX_UI_CLSID%\InProcServer32,ThreadingModel,,"Apartment"

HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_POSTMIX_CLSID%, "FriendlyName", ,"Global CMEffect Class"
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_POSTMIX_CLSID%, "Copyright", ,"Copyright (c) C-Media Electronics Inc. All Rights Reserved"
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_POSTMIX_CLSID%, "MajorVersion", 0x00010001, 1
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_POSTMIX_CLSID%, "MinorVersion", 0x00010001, 1
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_POSTMIX_CLSID%, "Flags", 0x00010001, 0x00000004
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_POSTMIX_CLSID%, "MinInputConnections", 0x00010001, 1
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_POSTMIX_CLSID%, "MaxInputConnections", 0x00010001, 1
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_POSTMIX_CLSID%, "MinOutputConnections", 0x00010001, 1
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_POSTMIX_CLSID%, "MaxOutputConnections", 0x00010001, 1
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_POSTMIX_CLSID%, "MaxInstances", 0x00010001, 0xffffffff
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_POSTMIX_CLSID%, "NumAPOInterfaces", 0x00010001, 1
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_POSTMIX_CLSID%, "APOInterface0", ,"{FD7F2B29-24D0-4B5C-B177-592C39F9CA10}"

HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_PREMIX_CLSID%, "FriendlyName", ,"Local CMEffect Class"
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_PREMIX_CLSID%, "Copyright", ,"Copyright (c) C-Media Electronics Inc. All Rights Reserved"
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_PREMIX_CLSID%, "MajorVersion", 0x00010001, 1
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_PREMIX_CLSID%, "MinorVersion", 0x00010001, 1
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_PREMIX_CLSID%, "Flags", 0x00010001, 0x0000000c
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_PREMIX_CLSID%, "MinInputConnections", 0x00010001, 1
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_PREMIX_CLSID%, "MaxInputConnections", 0x00010001, 1
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_PREMIX_CLSID%, "MinOutputConnections", 0x00010001, 1
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_PREMIX_CLSID%, "MaxOutputConnections", 0x00010001, 1
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_PREMIX_CLSID%, "MaxInstances", 0x00010001, 0xffffffff
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_PREMIX_CLSID%, "NumAPOInterfaces", 0x00010001, 1
HKCR,AudioEngine\AudioProcessingObjects\%SYSFX_PREMIX_CLSID%, "APOInterface0", ,"{FD7F2B29-24D0-4B5C-B177-592C39F9CA10}"

;HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Audio","DisableProtectedAudioDG", %REG_DWORD%, 0x00000001

[HTOmegaHdAudBranding.AddProperty]
DeviceBrandingIcon,,,,"%1%\HTOFENIXB.sys,-203"
DeviceVendorWebSite,,,,"http://www.htomega.com"
[HTOmegaHdAudBranding64.AddProperty]
DeviceBrandingIcon,,,,"%1%\HTOFENIXB64.sys,-203"
DeviceVendorWebSite,,,,"http://www.htomega.com"
;
; Add Interface sections. These refer to various model sections below.
;
[HTOmegaHdAudModel.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eLineOutWave%, HdAudModel.PrimaryLineOutWave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_eLineOutWave%, HdAudModel.PrimaryLineOutWave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eLineOutWave%, HdAudModel.PrimaryLineOutWave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eHeadphoneWave%, HdAudModel.IndependentHeadphoneWave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_eHeadphoneWave%, HdAudModel.IndependentHeadphoneWave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eHeadphoneWave%, HdAudModel.IndependentHeadphoneWave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eHeadphone2Wave%, HdAudModel.IndependentHeadphone2Wave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_eHeadphone2Wave%, HdAudModel.IndependentHeadphone2Wave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eHeadphone2Wave%, HdAudModel.IndependentHeadphone2Wave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eLineInWave%, HdAudModel.PrimaryLineInWave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_eLineInWave%, HdAudModel.PrimaryLineInWave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eLineInWave%, HdAudModel.PrimaryLineInWave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eSpdifOutWave%, HdAudModel.DigitalOutputWave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_eSpdifOutWave%, HdAudModel.DigitalOutputWave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eSpdifOutWave%, HdAudModel.DigitalOutputWave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eMicInWave%, HdAudModel.PrimaryMicInWave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_eMicInWave%, HdAudModel.PrimaryMicInWave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eMicInWave%, HdAudModel.PrimaryMicInWave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eMicIn2Wave%, HdAudModel.PrimaryMicIn2Wave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_eMicIn2Wave%, HdAudModel.PrimaryMicIn2Wave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eMicIn2Wave%, HdAudModel.PrimaryMicIn2Wave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eStereoMixWave%, HdAudModel.StereoMixWave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_eStereoMixWave%, HdAudModel.StereoMixWave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eStereoMixWave%, HdAudModel.StereoMixWave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eSpdifInWave%, HdAudModel.DigitalInputWave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_eSpdifInWave%, HdAudModel.DigitalInputWave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eSpdifInWave%, HdAudModel.DigitalInputWave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eGlobalMixer%, HdAudModel.GlobalMixerTopo
AddInterface=%KSCATEGORY_TOPOLOGY%,%KSNAME_eGlobalMixer%, HdAudModel.GlobalMixerTopo

[HTOmegaHdAudModel64.ntamd64.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eLineOutWave%, HdAudModel.PrimaryLineOutWave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_eLineOutWave%, HdAudModel.PrimaryLineOutWave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eLineOutWave%, HdAudModel.PrimaryLineOutWave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eHeadphoneWave%, HdAudModel.IndependentHeadphoneWave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_eHeadphoneWave%, HdAudModel.IndependentHeadphoneWave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eHeadphoneWave%, HdAudModel.IndependentHeadphoneWave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eHeadphone2Wave%, HdAudModel.IndependentHeadphone2Wave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_eHeadphone2Wave%, HdAudModel.IndependentHeadphone2Wave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eHeadphone2Wave%, HdAudModel.IndependentHeadphone2Wave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eLineInWave%, HdAudModel.PrimaryLineInWave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_eLineInWave%, HdAudModel.PrimaryLineInWave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eLineInWave%, HdAudModel.PrimaryLineInWave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eSpdifOutWave%, HdAudModel.DigitalOutputWave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_eSpdifOutWave%, HdAudModel.DigitalOutputWave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eSpdifOutWave%, HdAudModel.DigitalOutputWave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eMicInWave%, HdAudModel.PrimaryMicInWave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_eMicInWave%, HdAudModel.PrimaryMicInWave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eMicInWave%, HdAudModel.PrimaryMicInWave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eMicIn2Wave%, HdAudModel.PrimaryMicIn2Wave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_eMicIn2Wave%, HdAudModel.PrimaryMicIn2Wave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eMicIn2Wave%, HdAudModel.PrimaryMicIn2Wave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eStereoMixWave%, HdAudModel.StereoMixWave
AddInterface=%KSCATEGORY_CAPTURE%,%KSNAME_eStereoMixWave%, HdAudModel.StereoMixWave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eStereoMixWave%, HdAudModel.StereoMixWave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eSpdifInWave%, HdAudModel.DigitalInputWave
AddInterface=%KSCATEGORY_RENDER%,%KSNAME_eSpdifInWave%, HdAudModel.DigitalInputWave
AddInterface=%KSCATEGORY_REALTIME%,%KSNAME_eSpdifInWave%, HdAudModel.DigitalInputWave

AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_eGlobalMixer%, HdAudModel.GlobalMixerTopo
AddInterface=%KSCATEGORY_TOPOLOGY%,%KSNAME_eGlobalMixer%, HdAudModel.GlobalMixerTopo

;
; Settings for system effect begins
;
; System Effects settings
[CMEFFECT.SysFx]
HKR,"FX\\0",%PKEY_ItemNameDisplay%,,%SYSFX_FriendlyName%
HKR,"FX\\0",%PKEY_FX_PreMixClsid%,,%SYSFX_PREMIX_CLSID%
HKR,"FX\\0",%PKEY_FX_PostMixClsid%,,%SYSFX_POSTMIX_CLSID%
HKR,"FX\\0",%PKEY_FX_UiClsid%,,%SYSFX_UI_CLSID%
HKR,"FX\\0",%PKEY_FX_StreamEffectClsid%,,%SYSFX_PREMIX_CLSID%
HKR,"FX\\0",%PKEY_FX_ModeEffectClsid%,,%SYSFX_POSTMIX_CLSID%
HKR,"FX\\0",%PKEY_FX_Association%,,%KSNODETYPE_SPEAKER%

HKR,"FX\\0",%PKEY_SFX_ProcessingModes_Supported_For_Streaming%,0x00010000,%AUDIO_SIGNALPROCESSINGMODE_DEFAULT%
HKR,"FX\\0",%PKEY_MFX_ProcessingModes_Supported_For_Streaming%,0x00010000,%AUDIO_SIGNALPROCESSINGMODE_DEFAULT%

HKR,"FX\\0","{5e96e4d9-ff2c-4d84-9bd6-fe10cf815009},14",%REG_DWORD%,160

HKR,"EP\\0",%PKEY_AudioEndpoint_Association%,,%KSNODETYPE_SPEAKER%
HKR,"EP\\0",%PKEY_AudioEndpoint_Supports_EventDriven_Mode%,0x00010001,0x1

HKR,"FX\\1",%PKEY_ItemNameDisplay%,,%SYSFX_FriendlyName%
HKR,"FX\\1",%PKEY_FX_PreMixClsid%,,%SYSFX_PREMIX_CLSID%
HKR,"FX\\1",%PKEY_FX_PostMixClsid%,,%SYSFX_POSTMIX_CLSID%
HKR,"FX\\1",%PKEY_FX_UiClsid%,,%SYSFX_UI_CLSID%
HKR,"FX\\1",%PKEY_FX_StreamEffectClsid%,,%SYSFX_PREMIX_CLSID%
HKR,"FX\\1",%PKEY_FX_ModeEffectClsid%,,%SYSFX_POSTMIX_CLSID%
HKR,"FX\\1",%PKEY_FX_Association%,,%KSNODETYPE_HEADPHONES%

HKR,"FX\\1",%PKEY_SFX_ProcessingModes_Supported_For_Streaming%,0x00010000,%AUDIO_SIGNALPROCESSINGMODE_DEFAULT%
HKR,"FX\\1",%PKEY_MFX_ProcessingModes_Supported_For_Streaming%,0x00010000,%AUDIO_SIGNALPROCESSINGMODE_DEFAULT%

HKR,"EP\\1",%PKEY_AudioEndpoint_Association%,,%KSNODETYPE_HEADPHONES%
HKR,"EP\\1",%PKEY_AudioEndpoint_Supports_EventDriven_Mode%,0x00010001,0x1

HKR,"FX\\2",%PKEY_ItemNameDisplay%,,%SYSFX_FriendlyName%
HKR,"FX\\2",%PKEY_FX_PreMixClsid%,,%SYSFX_PREMIX_CLSID%
HKR,"FX\\2",%PKEY_FX_PostMixClsid%,,%SYSFX_POSTMIX_CLSID%
HKR,"FX\\2",%PKEY_FX_UiClsid%,,%SYSFX_UI_CLSID%
HKR,"FX\\2",%PKEY_FX_StreamEffectClsid%,,%SYSFX_PREMIX_CLSID%
HKR,"FX\\2",%PKEY_FX_ModeEffectClsid%,,%SYSFX_POSTMIX_CLSID%
HKR,"FX\\2",%PKEY_FX_Association%,,%KSNODETYPE_SPDIF_INTERFACE%

HKR,"FX\\2",%PKEY_SFX_ProcessingModes_Supported_For_Streaming%,0x00010000,%AUDIO_SIGNALPROCESSINGMODE_DEFAULT%
HKR,"FX\\2",%PKEY_MFX_ProcessingModes_Supported_For_Streaming%,0x00010000,%AUDIO_SIGNALPROCESSINGMODE_DEFAULT%

HKR,"EP\\2",%PKEY_AudioEndpoint_Association%,,%KSNODETYPE_SPDIF_INTERFACE%
HKR,"EP\\2",%PKEY_AudioEndpoint_Supports_EventDriven_Mode%,0x00010001,0x1

HKR,"FX\\3",%PKEY_ItemNameDisplay%,,%SYSFX_FriendlyName%
HKR,"FX\\3",%PKEY_FX_PreMixClsid%,,%SYSFX_PREMIX_CLSID%
HKR,"FX\\3",%PKEY_FX_UiClsid%,,%SYSFX_UI_CLSID%
HKR,"FX\\3",%PKEY_FX_StreamEffectClsid%,,%SYSFX_PREMIX_CLSID%
HKR,"FX\\3",%PKEY_FX_Association%,,%KSNODETYPE_MICROPHONE%

HKR,"FX\\3",%PKEY_SFX_ProcessingModes_Supported_For_Streaming%,0x00010000,%AUDIO_SIGNALPROCESSINGMODE_DEFAULT%

HKR,"EP\\3",%PKEY_AudioEndpoint_Association%,,%KSNODETYPE_MICROPHONE%
HKR,"EP\\3",%PKEY_AudioEndpoint_Supports_EventDriven_Mode%,0x00010001,0x1

HKR,"FX\\4",%PKEY_ItemNameDisplay%,,%SYSFX_FriendlyName%
HKR,"FX\\4",%PKEY_FX_PreMixClsid%,,%SYSFX_PREMIX_CLSID%
HKR,"FX\\4",%PKEY_FX_UiClsid%,,%SYSFX_UI_CLSID%
HKR,"FX\\4",%PKEY_FX_StreamEffectClsid%,,%SYSFX_PREMIX_CLSID%
HKR,"FX\\4",%PKEY_FX_Association%,,%KSNODETYPE_DESKTOP_MICROPHONE%

HKR,"FX\\4",%PKEY_SFX_ProcessingModes_Supported_For_Streaming%,0x00010000,%AUDIO_SIGNALPROCESSINGMODE_DEFAULT%

HKR,"EP\\4",%PKEY_AudioEndpoint_Association%,,%KSNODETYPE_DESKTOP_MICROPHONE%
HKR,"EP\\4",%PKEY_AudioEndpoint_Supports_EventDriven_Mode%,0x00010001,0x1

HKR,"EP\\5",%PKEY_AudioEndpoint_Association%,,%KSNODETYPE_ANALOG_CONNECTOR%
HKR,"EP\\5",%PKEY_AudioEndpoint_Supports_EventDriven_Mode%,0x00010001,0x1
HKR,"EP\\5",%PKEY_AudioDevice_EnableEndpointByDefault%,0x00010001,0x00000201

; Settings for system effect ends

;
; Primary line out Model and AddRegs.
;
[HdAudModel.PrimaryLineOutWave]
AddReg = HdAudModel.PrimaryLineOutWave.AddReg
[HdAudModel.PrimaryLineOutWave.AddReg]
HKR,,FriendlyName,,%PrimarySpeakerWaveDeviceName%
HKR,,CLSID,,%Proxy.CLSID%
;
; Independent headphone Model and AddRegs.
;
[HdAudModel.IndependentHeadphoneWave]
AddReg = HdAudModel.IndependentHeadphoneWave.AddReg
[HdAudModel.IndependentHeadphoneWave.AddReg]
HKR,,FriendlyName,,%IndependentHeadphoneWaveDeviceName%
HKR,,CLSID,,%Proxy.CLSID%

[HdAudModel.IndependentHeadphone2Wave]
AddReg = HdAudModel.IndependentHeadphone2Wave.AddReg
[HdAudModel.IndependentHeadphone2Wave.AddReg]
HKR,,FriendlyName,,%IndependentHeadphone2WaveDeviceName%
HKR,,CLSID,,%Proxy.CLSID%
;
; Primary line in Model and AddReg.
;
[HdAudModel.PrimaryLineInWave]
AddReg = HdAudModel.PrimaryLineInWave.AddReg
[HdAudModel.PrimaryLineInWave.AddReg]
HKR,,FriendlyName,,%PrimaryLineInWaveDeviceName%
HKR,,CLSID,,%Proxy.CLSID%
;
; Digital output Model and AddRegs.
;
[HdAudModel.DigitalOutputWave]
AddReg = HdAudModel.DigitalOutputWave.AddReg
[HdAudModel.DigitalOutputWave.AddReg]
HKR,,FriendlyName,,%DigitalOutputWaveDeviceName%
HKR,,CLSID,,%Proxy.CLSID%
;
; Primary microphone Model and AddReg.
;
[HdAudModel.PrimaryMicInWave]
AddReg = HdAudModel.PrimaryMicInWave.AddReg
[HdAudModel.PrimaryMicInWave.AddReg]
HKR,,FriendlyName,,%PrimaryMicInWaveDeviceName%
HKR,,CLSID,,%Proxy.CLSID%

[HdAudModel.PrimaryMicIn2Wave]
AddReg = HdAudModel.PrimaryMicIn2Wave.AddReg
[HdAudModel.PrimaryMicIn2Wave.AddReg]
HKR,,FriendlyName,,%PrimaryMicIn2WaveDeviceName%
HKR,,CLSID,,%Proxy.CLSID%
;
; CD in Model and AddReg.
;
[HdAudModel.CDInWave]
AddReg = HdAudModel.CDInWave.AddReg
[HdAudModel.CDInWave.AddReg]
HKR,,FriendlyName,,%CDInWaveDeviceName%
HKR,,CLSID,,%Proxy.CLSID%
;
; Aux in Model and AddReg.
;
[HdAudModel.AuxInWave]
AddReg = HdAudModel.AuxInWave.AddReg
[HdAudModel.AuxInWave.AddReg]
HKR,,FriendlyName,,%AuxInWaveDeviceName%
HKR,,CLSID,,%Proxy.CLSID%
;
; Stereo mix Model and AddReg.
;
[HdAudModel.StereoMixWave]
AddReg = HdAudModel.StereoMixWave.AddReg
[HdAudModel.StereoMixWave.AddReg]
HKR,,FriendlyName,,%StereoMixWaveDeviceName%
HKR,,CLSID,,%Proxy.CLSID%
;
; Digital input Model and AddRegs.
;
[HdAudModel.DigitalInputWave]
AddReg = HdAudModel.DigitalInputWave.AddReg
[HdAudModel.DigitalInputWave.AddReg]
HKR,,FriendlyName,,%DigitalInputWaveDeviceName%
HKR,,CLSID,,%Proxy.CLSID%

[HdAudModel.GlobalMixerTopo]
AddReg = HdAudModel.GlobalMixerTopo.AddReg, CMEFFECT.SysFx
[HdAudModel.GlobalMixerTopo.AddReg]
HKR,,FriendlyName,,%GlobalMixerTopoDeviceName%
HKR,,CLSID,,%Proxy.CLSID%

[HdAudSecurity.AddReg]
; FILE_DEVICE_SOUND
HKR,,DeviceType,0x10001,0x0000001D
; SDDL_DEVOBJ_SYS_ALL_ADM_RWX_WORLD_RWX_RES_RWX
;HKR,,Security,,"D:P(A;;GA;;;SY)(A;;GA;;;BA)"
HKR,,Security,,"D:P(A;;GA;;;SY)(A;;GRGWGX;;;BA)(A;;GRGWGX;;;WD)(A;;GRGWGX;;;RC)"


[Strings]
ProviderName="C-Media Electronics Inc."
DiskDescription="HTO FENIX High Definition Audio Driver"

HdAudioFunctionDriver.HTOFENIX.DeviceDesc = "HT OMEGA FENIX"
HTFunctionDriverForHdAudio.SvcDesc = "HTO FENIX Function Driver for High Definition Audio Service"

; These are the name strings for the wave miniports displayed in mmsys.cpl
PrimarySpeakerWaveDeviceName = "HTO FENIX HD Audio Speaker"
PrimarySpeakerTopoDeviceName = "HTO FENIX HD Audio Speaker mixer"
IndependentHeadphoneWaveDeviceName = "HTO FENIX HD Audio Headphone"
IndependentHeadphoneTopoDeviceName = "HTO FENIX HD Audio Headphone mixer"
IndependentHeadphone2WaveDeviceName = "HTO FENIX HD Audio Headphone 2"
IndependentHeadphone2TopoDeviceName = "HTO FENIX HD Audio Headphone 2 mixer"
PrimaryLineInWaveDeviceName  = "HTO FENIX HD Audio Line in"
PrimaryLineInTopoDeviceName  = "HTO FENIX HD Audio Line in mixer"
DigitalOutputWaveDeviceName = "HTO FENIX HD Audio SPDIF out"
DigitalOutputTopoDeviceName = "HTO FENIX HD Audio SPDIF out mixer"
PrimaryMicInWaveDeviceName  = "HTO FENIX HD Audio Microphone"
PrimaryMicInTopoDeviceName  = "HTO FENIX HD Audio Microphone mixer"
PrimaryMicIn2WaveDeviceName  = "HTO FENIX HD Audio Microphone 2"
PrimaryMicIn2TopoDeviceName  = "HTO FENIX HD Audio Microphone 2 mixer"
CDInWaveDeviceName  = "HTO FENIX HD Audio CD in capture"
CDInTopoDeviceName  = "HTO FENIX HD Audio CD in capture mixer"
AuxInWaveDeviceName  = "HTO FENIX HD Audio Aux in"
AuxInTopoDeviceName  = "HTO FENIX HD Audio Aux in mixer"
StereoMixWaveDeviceName  = "HTO FENIX HD Audio Stereo mix"
StereoMixTopoDeviceName  = "HTO FENIX HD Audio Stereo mix mixer"
DigitalInputWaveDeviceName = "HTO FENIX HD Audio Digital in"
DigitalInputTopoDeviceName = "HTO FENIX HD Audio Digital in mixer"
GlobalMixerTopoDeviceName = "C-Media HD Audio Global Mixer"

; These are the strings passed to PcRegisterSubdevice for wave ports
KSNAME_eLineOutWave = "eLineOutWave"   ; non-localizable
KSNAME_eLineOutTopo = "eLineOutTopo"   ; non-localizable
KSNAME_eHeadphoneWave = "eHPOutWave"   ; non-localizable
KSNAME_eHeadphoneTopo = "eHPOutTopo"   ; non-localizable
KSNAME_eHeadphone2Wave = "eHPOut2Wave"   ; non-localizable
KSNAME_eHeadphone2Topo = "eHPOut2Topo"   ; non-localizable
KSNAME_eLineInWave = "eLineInWave"   ; non-localizable
KSNAME_eLineInTopo = "eLineInTopo"   ; non-localizable
KSNAME_eSpdifOutWave = "eSpdifOutWave"
KSNAME_eSpdifOutTopo = "eSpdifOutTopo"
KSNAME_eMicInWave = "eMicInWave"   ; non-localizable
KSNAME_eMicInTopo = "eMicInTopo"   ; non-localizable
KSNAME_eMicIn2Wave = "eMicIn2Wave"   ; non-localizable
KSNAME_eMicIn2Topo = "eMicIn2Topo"   ; non-localizable
KSNAME_eCDInWave = "eCDInWave"   ; non-localizable
KSNAME_eCDInTopo = "eCDInTopo"   ; non-localizable
KSNAME_eAuxInWave = "eAuxInWave"   ; non-localizable
KSNAME_eAuxInTopo = "eAuxInTopo"   ; non-localizable
KSNAME_eStereoMixWave = "eStereoMixWave"   ; non-localizable
KSNAME_eStereoMixTopo = "eStereoMixTopo"   ; non-localizable
KSNAME_eSpdifInWave = "eSpdifInWave"
KSNAME_eSpdifInTopo = "eSpdifInTopo"
KSNAME_eGlobalMixer = "eGlobalMixer"

;
; KSCategory Guids
; 
KSCATEGORY_AUDIO = "{6994AD04-93EF-11D0-A3CC-00A0C9223196}"    ; non-localizable
KSCATEGORY_RENDER = "{65E8773E-8F56-11D0-A3B9-00A0C9223196}"   ; non-localizable
KSCATEGORY_CAPTURE = "{65E8773D-8F56-11D0-A3B9-00A0C9223196}"  ; non-localizable
KSCATEGORY_TOPOLOGY = "{DDA54A40-1E4C-11D1-A050-405705C10000}" ; non-localizable
KSCATEGORY_REALTIME = "{EB115FFC-10C8-4964-831D-6DCB02E6F23F}" ; non-localizable
Proxy.CLSID = "{17CCA71B-ECD7-11D0-B908-00A0C9223196}"         ; non-localizable

HdAudioDeviceDescription = "HTO FENIX Function Driver for High Definition Audio" ; {PlaceHolder="UAA","High Definition Audio"}

;Information for FX
; PropertyKeys
PKEY_FX_Association  = "{D04E05A6-594B-4fb6-A80D-01AF5EED7D1D},0"
PKEY_FX_PreMixClsid  = "{D04E05A6-594B-4fb6-A80D-01AF5EED7D1D},1"
PKEY_FX_PostMixClsid = "{D04E05A6-594B-4fb6-A80D-01AF5EED7D1D},2"
PKEY_FX_UiClsid      = "{D04E05A6-594B-4fb6-A80D-01AF5EED7D1D},3"
PKEY_FX_StreamEffectClsid   = "{D04E05A6-594B-4fb6-A80D-01AF5EED7D1D},5"
PKEY_FX_ModeEffectClsid     = "{D04E05A6-594B-4fb6-A80D-01AF5EED7D1D},6"
PKEY_FX_EndpointEffectClsid = "{D04E05A6-594B-4fb6-A80D-01AF5EED7D1D},7"
PKEY_ItemNameDisplay = "{B725F130-47EF-101A-A5F1-02608C9EEBAC},10"

PKEY_SFX_ProcessingModes_Supported_For_Streaming = "{D3993A3F-99C2-4402-B5EC-A92A0367664B},5"
PKEY_MFX_ProcessingModes_Supported_For_Streaming = "{D3993A3F-99C2-4402-B5EC-A92A0367664B},6"

AUDIO_SIGNALPROCESSINGMODE_DEFAULT = "{C18E2F7E-933D-4965-B7D1-1EEF228D2AF3}"

FX_UI_CLSID      = "{5860E1C5-F95C-4a7a-8EC8-8AEF24F379A1}"

KSNODETYPE_ANY   			= "{00000000-0000-0000-0000-000000000000}"
KSNODETYPE_SPEAKER			= "{DFF21CE1-F70F-11D0-B917-00A0C9223196}"
KSNODETYPE_HEADPHONES                   = "{DFF21CE2-F70F-11D0-B917-00A0C9223196}"
KSNODETYPE_SPDIF_INTERFACE              = "{DFF21FE5-F70F-11D0-B917-00A0C9223196}"
KSNODETYPE_MICROPHONE 			= "{DFF21BE1-F70F-11D0-B917-00A0C9223196}"
KSNODETYPE_DESKTOP_MICROPHONE 		= "{DFF21BE2-F70F-11D0-B917-00A0C9223196}"
KSNODETYPE_ANALOG_CONNECTOR		= "{DFF21FE1-F70F-11D0-B917-00A0C9223196}"
KSNODETYPE_DIGITAL_AUDIO_INTERFACE	= "{DFF21FE2-F70F-11D0-B917-00A0C9223196}"

SYSFX_UI_CLSID      = "{A3BD3B3B-A55F-4B2C-BA56-6691125EF8F9}"
SYSFX_PREMIX_CLSID  = "{7C324E18-CE0D-4CF9-8FF0-3939E187818C}"
SYSFX_POSTMIX_CLSID = "{766F84B7-A979-4991-BAEA-CE0482D3955D}"
SYSFX_FriendlyName  = "CMedia Audio System Effect"

SYSFX_APO_DLL		= "CMEffectAPO_HTOFENIX.dll"
SYSFX_CPLEXT_DLL	= "CMCplExt_HTOFENIX.dll"
CM_DRIVER_SYS		= "HTOFENIXB.sys"
CM_DRIVER_SYS_64	= "HTOFENIXB64.sys"

PKEY_AudioEndpoint_Association = "{1DA5D803-D492-4EDD-8C23-E0C0FFEE7F0E},2"
PKEY_AudioEndpoint_Supports_EventDriven_Mode = "{1DA5D803-D492-4EDD-8C23-E0C0FFEE7F0E},7"
PKEY_AudioDevice_EnableEndpointByDefault = "{F3E80BEF-1723-4FF2-BCC4-7F83DC5E46D4},4"

REG_BINARY          = 0x00000001
REG_DWORD	    = 0x00010001

HDAHeadphoneAmpNodeName = "HP Impedance"
HDAGuidHeadphoneAmpNode = "{1AE56E74-9EB1-4cd8-B0BB-3BC110182568}"

HDAOutputSelectNodeName = "Output Select"
HDAGuidOutputSelectNode = "{08DC724D-5578-4753-A9D1-CE20E2A10AAF}"

HDAStereoMixPinName = "Stereo Mix"
HDAGuidStereoMixPin = "{8c5716e6-c984-492e-a2fb-1385f2d0f3c9}"

HDAAuxInPinName = "Aux In"
HDAGuidAuxInPin = "{5f4bb488-a646-408a-9265-8647f9c374d4}"

HDASPDIFIn2PinName = "Digital Audio (S/PDIF) 2"
HDAGuidSPDIFIn2Pin = "{D3C1359E-8AAA-46e0-8661-FCF2F4DD4894}"
