Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mpc-hc/sanear.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Marsev <alex.marsev@gmail.com>2015-10-12 12:04:49 +0300
committerAlex Marsev <alex.marsev@gmail.com>2015-10-12 17:28:25 +0300
commit9e951bba74fb927f94804e2ed0109f83570a9c5f (patch)
tree06435a8adfd4067b93ea738b7a0885ea990e075c
parent608aebaf8385c5caf83e2a0bf166c5d732b763fc (diff)
Add menu entry for the new option
-rw-r--r--dll/src/sanear-dll/OuterFilter.cpp6
-rw-r--r--dll/src/sanear-dll/TrayWindow.cpp14
2 files changed, 20 insertions, 0 deletions
diff --git a/dll/src/sanear-dll/OuterFilter.cpp b/dll/src/sanear-dll/OuterFilter.cpp
index 422f3b7..8336efe 100644
--- a/dll/src/sanear-dll/OuterFilter.cpp
+++ b/dll/src/sanear-dll/OuterFilter.cpp
@@ -14,6 +14,7 @@ namespace SaneAudioRenderer
const auto CrossfeedEnabled = L"CrossfeedEnabled";
const auto CrossfeedCutoffFrequency = L"CrossfeedCutoffFrequency";
const auto CrossfeedLevel = L"CrossfeedLevel";
+ const auto IgnoreSystemChannelMixer = L"IgnoreSystemChannelMixer";
}
OuterFilter::OuterFilter(IUnknown* pUnknown, const GUID& guid)
@@ -44,6 +45,8 @@ namespace SaneAudioRenderer
m_settings->GetCrossfeedSettings(&uintValue1, &uintValue2);
m_registryKey.SetUint(CrossfeedCutoffFrequency, uintValue1);
m_registryKey.SetUint(CrossfeedLevel, uintValue2);
+
+ m_registryKey.SetUint(IgnoreSystemChannelMixer, m_settings->GetIgnoreSystemChannelMixer());
}
STDMETHODIMP OuterFilter::NonDelegatingQueryInterface(REFIID riid, void** ppv)
@@ -94,6 +97,9 @@ namespace SaneAudioRenderer
m_settings->SetCrossfeedSettings(uintValue1, uintValue2);
}
+ if (m_registryKey.GetUint(IgnoreSystemChannelMixer, uintValue1))
+ m_settings->SetIgnoreSystemChannelMixer(uintValue1);
+
return S_OK;
}
}
diff --git a/dll/src/sanear-dll/TrayWindow.cpp b/dll/src/sanear-dll/TrayWindow.cpp
index e5dbba4..10278df 100644
--- a/dll/src/sanear-dll/TrayWindow.cpp
+++ b/dll/src/sanear-dll/TrayWindow.cpp
@@ -19,6 +19,7 @@ namespace SaneAudioRenderer
{
ExclusiveMode = 10,
AllowBitstreaming,
+ IgnoreSystemChannelMixer,
EnableCrossfeed,
CrossfeedCMoy, // used in CheckMenuRadioItem()
CrossfeedJMeier, // used in CheckMenuRadioItem()
@@ -192,6 +193,8 @@ namespace SaneAudioRenderer
BOOL crossfeedEnabled = m_settings->GetCrossfeedEnabled();
+ BOOL ignoreMixer = m_settings->GetIgnoreSystemChannelMixer();
+
UINT32 crosfeedCutoff;
UINT32 crosfeedLevel;
m_settings->GetCrossfeedSettings(&crosfeedCutoff, &crosfeedLevel);
@@ -230,6 +233,11 @@ namespace SaneAudioRenderer
check.fState = (exclusive ? MFS_CHECKED : MFS_UNCHECKED);
InsertMenuItem(hMenu, 0, TRUE, &check);
+ check.wID = Item::IgnoreSystemChannelMixer;
+ check.dwTypeData = L"Ignore system channel mixer (always ignored in exclusive WASAPI mode)";
+ check.fState = (ignoreMixer ? MFS_CHECKED : MFS_UNCHECKED) | (exclusive ? MFS_DISABLED : MFS_ENABLED);
+ InsertMenuItem(hMenu, 0, TRUE, &check);
+
InsertMenuItem(hMenu, 0, TRUE, &separator);
check.wID = Item::CrossfeedJMeier;
@@ -331,6 +339,12 @@ namespace SaneAudioRenderer
break;
}
+ case Item::IgnoreSystemChannelMixer:
+ {
+ m_settings->SetIgnoreSystemChannelMixer(!m_settings->GetIgnoreSystemChannelMixer());
+ break;
+ }
+
case Item::EnableCrossfeed:
{
m_settings->SetCrossfeedEnabled(!m_settings->GetCrossfeedEnabled());