mirror of
https://github.com/overte-org/overte.git
synced 2025-08-08 19:56:44 +02:00
move environment mute to Audio
This commit is contained in:
parent
78edb94963
commit
aeb273a882
4 changed files with 22 additions and 28 deletions
|
@ -992,6 +992,25 @@ void Audio::processReceivedSamples(const QByteArray& inputBuffer, QByteArray& ou
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Audio::sendMuteEnvironmentPacket() {
|
||||||
|
QByteArray mutePacket = byteArrayWithPopulatedHeader(PacketTypeMuteEnvironment);
|
||||||
|
QDataStream mutePacketStream(&mutePacket, QIODevice::Append);
|
||||||
|
|
||||||
|
const float MUTE_RADIUS = 50;
|
||||||
|
|
||||||
|
mutePacketStream.writeBytes(reinterpret_cast<const char *>(&Application::getInstance()->getAvatar()->getPosition()),
|
||||||
|
sizeof(glm::vec3));
|
||||||
|
mutePacketStream.writeBytes(reinterpret_cast<const char *>(&MUTE_RADIUS), sizeof(float));
|
||||||
|
|
||||||
|
// grab our audio mixer from the NodeList, if it exists
|
||||||
|
SharedNodePointer audioMixer = NodeList::getInstance()->soloNodeOfType(NodeType::AudioMixer);
|
||||||
|
|
||||||
|
if (audioMixer) {
|
||||||
|
// send off this mute packet
|
||||||
|
NodeList::getInstance()->writeDatagram(mutePacket, audioMixer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void Audio::addReceivedAudioToStream(const QByteArray& audioByteArray) {
|
void Audio::addReceivedAudioToStream(const QByteArray& audioByteArray) {
|
||||||
if (_audioOutput) {
|
if (_audioOutput) {
|
||||||
// Audio output must exist and be correctly set up if we're going to process received audio
|
// Audio output must exist and be correctly set up if we're going to process received audio
|
||||||
|
|
|
@ -150,6 +150,7 @@ public slots:
|
||||||
void addLastFrameRepeatedWithFadeToScope(int samplesPerChannel);
|
void addLastFrameRepeatedWithFadeToScope(int samplesPerChannel);
|
||||||
void addStereoSamplesToScope(const QByteArray& samples);
|
void addStereoSamplesToScope(const QByteArray& samples);
|
||||||
void processReceivedSamples(const QByteArray& inputBuffer, QByteArray& outputBuffer);
|
void processReceivedSamples(const QByteArray& inputBuffer, QByteArray& outputBuffer);
|
||||||
|
void sendMuteEnvironmentPacket();
|
||||||
|
|
||||||
virtual bool outputLocalInjector(bool isStereo, qreal volume, AudioInjector* injector);
|
virtual bool outputLocalInjector(bool isStereo, qreal volume, AudioInjector* injector);
|
||||||
|
|
||||||
|
|
|
@ -80,7 +80,6 @@ const QString DEFAULT_FACESHIFT_HOSTNAME = "localhost";
|
||||||
const float DEFAULT_AVATAR_LOD_DISTANCE_MULTIPLIER = 1.0f;
|
const float DEFAULT_AVATAR_LOD_DISTANCE_MULTIPLIER = 1.0f;
|
||||||
const int ONE_SECOND_OF_FRAMES = 60;
|
const int ONE_SECOND_OF_FRAMES = 60;
|
||||||
const int FIVE_SECONDS_OF_FRAMES = 5 * ONE_SECOND_OF_FRAMES;
|
const int FIVE_SECONDS_OF_FRAMES = 5 * ONE_SECOND_OF_FRAMES;
|
||||||
const float MUTE_RADIUS = 50;
|
|
||||||
|
|
||||||
const QString CONSOLE_TITLE = "Scripting Console";
|
const QString CONSOLE_TITLE = "Scripting Console";
|
||||||
const float CONSOLE_WINDOW_OPACITY = 0.95f;
|
const float CONSOLE_WINDOW_OPACITY = 0.95f;
|
||||||
|
@ -546,8 +545,8 @@ Menu::Menu() :
|
||||||
addActionToQMenuAndActionHash(audioDebugMenu,
|
addActionToQMenuAndActionHash(audioDebugMenu,
|
||||||
MenuOption::MuteEnvironment,
|
MenuOption::MuteEnvironment,
|
||||||
0,
|
0,
|
||||||
this,
|
appInstance->getAudio(),
|
||||||
SLOT(muteEnvironment()));
|
SLOT(sendMuteEnvironmentPacket()));
|
||||||
|
|
||||||
addCheckableActionToQMenuAndActionHash(audioDebugMenu, MenuOption::AudioSourceInject,
|
addCheckableActionToQMenuAndActionHash(audioDebugMenu, MenuOption::AudioSourceInject,
|
||||||
0,
|
0,
|
||||||
|
@ -1141,30 +1140,6 @@ void Menu::toggleAddressBar() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Menu::muteEnvironment() {
|
|
||||||
int headerSize = numBytesForPacketHeaderGivenPacketType(PacketTypeMuteEnvironment);
|
|
||||||
int packetSize = headerSize + sizeof(glm::vec3) + sizeof(float);
|
|
||||||
|
|
||||||
glm::vec3 position = Application::getInstance()->getAvatar()->getPosition();
|
|
||||||
|
|
||||||
char* packet = (char*)malloc(packetSize);
|
|
||||||
populatePacketHeader(packet, PacketTypeMuteEnvironment);
|
|
||||||
memcpy(packet + headerSize, &position, sizeof(glm::vec3));
|
|
||||||
memcpy(packet + headerSize + sizeof(glm::vec3), &MUTE_RADIUS, sizeof(float));
|
|
||||||
|
|
||||||
QByteArray mutePacket(packet, packetSize);
|
|
||||||
|
|
||||||
// grab our audio mixer from the NodeList, if it exists
|
|
||||||
SharedNodePointer audioMixer = NodeList::getInstance()->soloNodeOfType(NodeType::AudioMixer);
|
|
||||||
|
|
||||||
if (audioMixer) {
|
|
||||||
// send off this mute packet
|
|
||||||
NodeList::getInstance()->writeDatagram(mutePacket, audioMixer);
|
|
||||||
}
|
|
||||||
|
|
||||||
free(packet);
|
|
||||||
}
|
|
||||||
|
|
||||||
void Menu::changeVSync() {
|
void Menu::changeVSync() {
|
||||||
Application::getInstance()->setVSyncEnabled(isOptionChecked(MenuOption::RenderTargetFramerateVSyncOn));
|
Application::getInstance()->setVSyncEnabled(isOptionChecked(MenuOption::RenderTargetFramerateVSyncOn));
|
||||||
}
|
}
|
||||||
|
|
|
@ -229,7 +229,6 @@ private slots:
|
||||||
void toggleChat();
|
void toggleChat();
|
||||||
void audioMuteToggled();
|
void audioMuteToggled();
|
||||||
void displayNameLocationResponse(const QString& errorString);
|
void displayNameLocationResponse(const QString& errorString);
|
||||||
void muteEnvironment();
|
|
||||||
void changeVSync();
|
void changeVSync();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
Loading…
Reference in a new issue