From 7d3bf75f0b9b1b69f158767482f04c0996aac631 Mon Sep 17 00:00:00 2001 From: Zach Pomerantz Date: Mon, 12 Jun 2017 18:48:26 -0400 Subject: [PATCH] wip: sticky devices --- interface/src/scripting/Audio.cpp | 12 ++++++------ interface/src/scripting/Audio.h | 5 +++++ interface/src/scripting/AudioDevices.cpp | 9 +++++++++ 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/interface/src/scripting/Audio.cpp b/interface/src/scripting/Audio.cpp index 0830899356..bfad9a7a29 100644 --- a/interface/src/scripting/Audio.cpp +++ b/interface/src/scripting/Audio.cpp @@ -17,12 +17,12 @@ using namespace scripting; -static const QString DESKTOP_CONTEXT { "Desktop" }; -static const QString HMD_CONTEXT { "VR" }; +QString Audio::AUDIO { "Audio" }; +QString Audio::DESKTOP { "Desktop" }; +QString Audio::HMD { "VR" }; -static const QString AUDIO { "Audio" }; -Setting::Handle enableNoiseReductionSetting { QStringList(AUDIO) << "NoiseReduction", true }; -Setting::Handle showMicMeterSetting { QStringList(AUDIO) << "MicMeter", false }; +Setting::Handle enableNoiseReductionSetting { QStringList { Audio::AUDIO, "NoiseReduction" }, true }; +Setting::Handle showMicMeterSetting { QStringList { Audio::AUDIO, "MicMeter" }, false }; Audio::Audio() { auto client = DependencyManager::get(); @@ -52,7 +52,7 @@ void Audio::onChangedContext() { } QString Audio::getContext() const { - return _contextIsHMD ? HMD_CONTEXT : DESKTOP_CONTEXT; + return _contextIsHMD ? Audio::HMD : Audio::DESKTOP; } void Audio::onChangedMuted() { diff --git a/interface/src/scripting/Audio.h b/interface/src/scripting/Audio.h index 752880cc2f..86c68de7b8 100644 --- a/interface/src/scripting/Audio.h +++ b/interface/src/scripting/Audio.h @@ -31,6 +31,10 @@ class Audio : public AudioScriptingInterface { Q_PROPERTY(AudioDevices* devices READ getDevices NOTIFY nop) public: + static QString AUDIO; + static QString HMD; + static QString DESKTOP; + virtual ~Audio() {} bool isMuted() const { return _isMuted; } @@ -65,6 +69,7 @@ protected: Audio(); private: + float _inputVolume { 1.0f }; bool _isMuted { false }; bool _enableNoiseReduction; diff --git a/interface/src/scripting/AudioDevices.cpp b/interface/src/scripting/AudioDevices.cpp index 7284383a28..b314342b30 100644 --- a/interface/src/scripting/AudioDevices.cpp +++ b/interface/src/scripting/AudioDevices.cpp @@ -13,9 +13,18 @@ #include "Application.h" #include "AudioClient.h" +#include "Audio.h" using namespace scripting; +const QString INPUT { "INPUT" }; +const QString OUTPUT { "OUTPUT" }; + +Setting::Handle desktopInputDevice { QStringList { Audio::AUDIO, Audio::DESKTOP, INPUT }}; +Setting::Handle desktopOutputDevice { QStringList { Audio::AUDIO, Audio::DESKTOP, OUTPUT }}; +Setting::Handle HMDInputDevice { QStringList { Audio::AUDIO, Audio::HMD, INPUT }}; +Setting::Handle HMDOutputDevice { QStringList { Audio::AUDIO, Audio::HMD, OUTPUT }}; + QHash AudioDeviceList::_roles { { Qt::DisplayRole, "display" }, { Qt::CheckStateRole, "selected" }