History

add support for AudioDevice scripting interface, and switching audio input/output device on the fly

ZappoMan committed 12 years ago

Commit 82d620b1 parent 938959a5 files · +190 −23Browse files

Showing the changes to interface/src/scripting/AudioDeviceScriptingInterface.cpp (1 of 5 files). Show all

Unified · Split

interface/src/scripting/AudioDeviceScriptingInterface.cpp+44−0
@@ -0,0 +1,44 @@
1//
2// AudioDeviceScriptingInterface.cpp
3// hifi
4//
5// Created by Brad Hefta-Gaub on 3/23/14
6// Copyright (c) 2014 HighFidelity, Inc. All rights reserved.
7//
8
9#include "Application.h"
10#include "AudioDeviceScriptingInterface.h"
11
12
13AudioDeviceScriptingInterface* AudioDeviceScriptingInterface::getInstance() {
14 static AudioDeviceScriptingInterface sharedInstance;
15 return &sharedInstance;
16}
17
18bool AudioDeviceScriptingInterface::setInputDevice(const QString& deviceName) {
19 bool result;
20 QMetaObject::invokeMethod(Application::getInstance()->getAudio(), "switchInputToAudioDevice",
21 Qt::BlockingQueuedConnection,
22 Q_RETURN_ARG(bool, result),
23 Q_ARG(const QString&, deviceName));
24
25 return result;
26}
27
28bool AudioDeviceScriptingInterface::setOutputDevice(const QString& deviceName) {
29 bool result;
30 QMetaObject::invokeMethod(Application::getInstance()->getAudio(), "switchOutputToAudioDevice",
31 Qt::BlockingQueuedConnection,
32 Q_RETURN_ARG(bool, result),
33 Q_ARG(const QString&, deviceName));
34
35 return result;
36}
37
38QString AudioDeviceScriptingInterface::getInputDevice() {
39 return Application::getInstance()->getAudio()->getInputAudioDeviceName();
40}
41
42QString AudioDeviceScriptingInterface::getOutputDevice() {
43 return Application::getInstance()->getAudio()->getOutputAudioDeviceName();
44}