mirror of
https://github.com/JulianGro/overte.git
synced 2025-04-07 03:22:27 +02:00
make server-audio-loopback button work in HMDs
This commit is contained in:
parent
6ee236e783
commit
d5e8cba1ee
5 changed files with 40 additions and 9 deletions
|
@ -21,13 +21,13 @@ RowLayout {
|
|||
function startAudioLoopback() {
|
||||
if (!audioLoopedBack) {
|
||||
audioLoopedBack = true;
|
||||
AudioScope.setServerEcho(true);
|
||||
AudioScriptingInterface.setServerEcho(true);
|
||||
}
|
||||
}
|
||||
function stopAudioLoopback () {
|
||||
if (audioLoopedBack) {
|
||||
audioLoopedBack = false;
|
||||
AudioScope.setServerEcho(false);
|
||||
AudioScriptingInterface.setServerEcho(false);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -213,13 +213,13 @@ public slots:
|
|||
void setWarnWhenMuted(bool isNoiseGateEnabled, bool emitSignal = true);
|
||||
bool isWarnWhenMutedEnabled() const { return _warnWhenMuted; }
|
||||
|
||||
bool getLocalEcho() { return _shouldEchoLocally; }
|
||||
void setLocalEcho(bool localEcho) { _shouldEchoLocally = localEcho; }
|
||||
void toggleLocalEcho() { _shouldEchoLocally = !_shouldEchoLocally; }
|
||||
virtual bool getLocalEcho() override { return _shouldEchoLocally; }
|
||||
virtual void setLocalEcho(bool localEcho) override { _shouldEchoLocally = localEcho; }
|
||||
virtual void toggleLocalEcho() override { _shouldEchoLocally = !_shouldEchoLocally; }
|
||||
|
||||
bool getServerEcho() { return _shouldEchoToServer; }
|
||||
void setServerEcho(bool serverEcho) { _shouldEchoToServer = serverEcho; }
|
||||
void toggleServerEcho() { _shouldEchoToServer = !_shouldEchoToServer; }
|
||||
virtual bool getServerEcho() override { return _shouldEchoToServer; }
|
||||
virtual void setServerEcho(bool serverEcho) override { _shouldEchoToServer = serverEcho; }
|
||||
virtual void toggleServerEcho() override { _shouldEchoToServer = !_shouldEchoToServer; }
|
||||
|
||||
void processReceivedSamples(const QByteArray& inputBuffer, QByteArray& outputBuffer);
|
||||
void sendMuteEnvironmentPacket();
|
||||
|
|
|
@ -45,9 +45,16 @@ public slots:
|
|||
virtual bool shouldLoopbackInjectors() { return false; }
|
||||
|
||||
virtual bool setIsStereoInput(bool stereo) = 0;
|
||||
|
||||
virtual bool isStereoInput() = 0;
|
||||
|
||||
virtual bool getLocalEcho() = 0;
|
||||
virtual void setLocalEcho(bool localEcho) = 0;
|
||||
virtual void toggleLocalEcho() = 0;
|
||||
|
||||
virtual bool getServerEcho() = 0;
|
||||
virtual void setServerEcho(bool serverEcho) = 0;
|
||||
virtual void toggleServerEcho() = 0;
|
||||
|
||||
signals:
|
||||
void isStereoInputChanged(bool isStereo);
|
||||
};
|
||||
|
|
|
@ -88,3 +88,15 @@ bool AudioScriptingInterface::isStereoInput() {
|
|||
}
|
||||
return stereoEnabled;
|
||||
}
|
||||
|
||||
void AudioScriptingInterface::setServerEcho(bool serverEcho) {
|
||||
if (_localAudioInterface) {
|
||||
QMetaObject::invokeMethod(_localAudioInterface, "setServerEcho", Q_ARG(bool, serverEcho));
|
||||
}
|
||||
}
|
||||
|
||||
void AudioScriptingInterface::setLocalEcho(bool localEcho) {
|
||||
if (_localAudioInterface) {
|
||||
QMetaObject::invokeMethod(_localAudioInterface, "setLocalEcho", Q_ARG(bool, localEcho));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -66,6 +66,18 @@ public:
|
|||
_localAudioInterface->getAudioSolo().reset();
|
||||
}
|
||||
|
||||
/**jsdoc
|
||||
* @function Audio.setServerEcho
|
||||
* @parm {boolean} serverEcho
|
||||
*/
|
||||
Q_INVOKABLE void setServerEcho(bool serverEcho);
|
||||
|
||||
/**jsdoc
|
||||
* @function Audio.setLocalEcho
|
||||
* @parm {boolean} localEcho
|
||||
*/
|
||||
Q_INVOKABLE void setLocalEcho(bool localEcho);
|
||||
|
||||
protected:
|
||||
AudioScriptingInterface() = default;
|
||||
|
||||
|
|
Loading…
Reference in a new issue