summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErik Kundiman <erik@megapahit.org>2026-05-17 07:09:05 +0800
committerErik Kundiman <erik@megapahit.org>2026-05-17 07:09:05 +0800
commitb228223b5d7b4b8c7db01208c84a0d22cbfc395c (patch)
tree9ff2c0d71fc8974aefaf1eb1803a48039ce6e86c
parenta2e8968d17356a4009ee69b2a7a772b91203e360 (diff)
parentbf0ab355d501017669f0efeb1ca269a1dccc21bc (diff)
Merge branch 'main' into 2026.02
-rw-r--r--indra/CMakeLists.txt2
-rw-r--r--indra/cmake/WebRTC.cmake2
-rw-r--r--indra/newview/CMakeLists.txt7
-rw-r--r--indra/newview/llvoiceclient.cpp84
4 files changed, 47 insertions, 48 deletions
diff --git a/indra/CMakeLists.txt b/indra/CMakeLists.txt
index 58e637f290..aacbfe6496 100644
--- a/indra/CMakeLists.txt
+++ b/indra/CMakeLists.txt
@@ -74,7 +74,7 @@ add_subdirectory(${LIBS_OPEN_PREFIX}llphysicsextensionsos)
add_subdirectory(${LIBS_OPEN_PREFIX}llprimitive)
add_subdirectory(${LIBS_OPEN_PREFIX}llrender)
add_subdirectory(${LIBS_OPEN_PREFIX}llfilesystem)
-if (NOT (CMAKE_SYSTEM_NAME MATCHES FreeBSD OR ($ENV{MSYSTEM_CARCH} MATCHES aarch64) OR (${LINUX_DISTRO} MATCHES gentoo) OR (${LINUX_DISTRO} MATCHES debian AND CMAKE_SYSTEM_PROCESSOR MATCHES aarch64)))
+if (NOT (CMAKE_SYSTEM_NAME MATCHES FreeBSD OR ($ENV{MSYSTEM_CARCH} MATCHES aarch64)))
add_subdirectory(${LIBS_OPEN_PREFIX}llwebrtc)
endif ()
add_subdirectory(${LIBS_OPEN_PREFIX}llwindow)
diff --git a/indra/cmake/WebRTC.cmake b/indra/cmake/WebRTC.cmake
index 038ce90b88..286d3aa172 100644
--- a/indra/cmake/WebRTC.cmake
+++ b/indra/cmake/WebRTC.cmake
@@ -8,7 +8,7 @@ add_library( ll::webrtc INTERFACE IMPORTED )
target_include_directories( ll::webrtc SYSTEM INTERFACE "${LIBS_PREBUILT_DIR}/include/webrtc" "${LIBS_PREBUILT_DIR}/include/webrtc/third_party/abseil-cpp")
if (DARWIN OR WINDOWS)
use_prebuilt_binary(webrtc)
-elseif (NOT (CMAKE_SYSTEM_NAME MATCHES FreeBSD OR ($ENV{MSYSTEM_CARCH} MATCHES aarch64) OR (${LINUX_DISTRO} MATCHES gentoo) OR (${LINUX_DISTRO} MATCHES debian AND CMAKE_SYSTEM_PROCESSOR MATCHES aarch64)))
+elseif (NOT (CMAKE_SYSTEM_NAME MATCHES FreeBSD OR ($ENV{MSYSTEM_CARCH} MATCHES aarch64)))
target_compile_definitions(ll::webrtc INTERFACE CM_WEBRTC=1)
if (${PREBUILD_TRACKING_DIR}/sentinel_installed IS_NEWER_THAN ${PREBUILD_TRACKING_DIR}/webrtc_installed OR NOT ${webrtc_installed} EQUAL 0)
if (DARWIN)
diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt
index 7d0256fa26..933d8aa1b6 100644
--- a/indra/newview/CMakeLists.txt
+++ b/indra/newview/CMakeLists.txt
@@ -766,7 +766,7 @@ set(viewer_SOURCE_FILES
rlvhandler.cpp
)
-if (CMAKE_SYSTEM_NAME MATCHES FreeBSD OR ($ENV{MSYSTEM_CARCH} MATCHES aarch64) OR (${LINUX_DISTRO} MATCHES gentoo) OR (${LINUX_DISTRO} MATCHES debian AND CMAKE_SYSTEM_PROCESSOR MATCHES aarch64))
+if (CMAKE_SYSTEM_NAME MATCHES FreeBSD OR ($ENV{MSYSTEM_CARCH} MATCHES aarch64))
list(REMOVE_ITEM viewer_SOURCE_FILES llvoicewebrtc.cpp)
endif ()
@@ -2196,8 +2196,7 @@ target_link_libraries(${VIEWER_BINARY_NAME}
ll::openxr
)
-if (NOT (CMAKE_SYSTEM_NAME MATCHES FreeBSD OR ($ENV{MSYSTEM_CARCH} MATCHES aarch64) OR (${LINUX_DISTRO} MATCHES gentoo) OR (${LINUX_DISTRO} MATCHES debian AND CMAKE_SYSTEM_PROCESSOR MATCHES aarch64)))
- target_compile_definitions(${VIEWER_BINARY_NAME} PRIVATE USE_WEBRTC=1)
+if (NOT (CMAKE_SYSTEM_NAME MATCHES FreeBSD OR ($ENV{MSYSTEM_CARCH} MATCHES aarch64)))
target_link_libraries(${VIEWER_BINARY_NAME} llwebrtc )
endif ()
@@ -2376,7 +2375,7 @@ if (LINUX)
CACHE STRING "Debian package section.")
if (${LINUX_DISTRO} MATCHES debian)
if (CMAKE_SYSTEM_PROCESSOR MATCHES aarch64)
- set(CPACK_DEBIAN_PACKAGE_DEPENDS "libalut0, libaprutil1t64, libboost-fiber1.83.0, libboost-filesystem1.83.0, libboost-program-options1.83.0, libboost-regex1.83.0, libboost-thread1.83.0, libboost-url1.83.0, libexpat1, libfltk1.4, libgles-dev, libglu1-mesa, libhunspell-1.7-0, libmeshoptimizer2d, libminizip1t64, libnghttp2-14, libnspr4, libnss3, libopenjp2-7, libsdl2-2.0-0, libvlc5, libvorbisenc2, libvorbisfile3, vlc-plugin-base"
+ set(CPACK_DEBIAN_PACKAGE_DEPENDS "libalut0, libaprutil1t64, libboost-fiber1.83.0, libboost-filesystem1.83.0, libboost-program-options1.83.0, libboost-regex1.83.0, libboost-thread1.83.0, libboost-url1.83.0, libexpat1, libfltk1.4, libgles-dev, libglu1-mesa, libhunspell-1.7-0, libmeshoptimizer2d, libminizip1t64, libnghttp2-14, libnspr4, libnss3, libopenjp2-7, pulseaudio, libsdl2-2.0-0, libvlc5, libvorbisenc2, libvorbisfile3, vlc-plugin-base"
CACHE STRING "Debian package dependencies.")
else ()
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libaprutil1t64, libboost-fiber1.83.0, libboost-filesystem1.83.0, libboost-program-options1.83.0, libboost-regex1.83.0, libboost-thread1.83.0, libboost-url1.83.0, libexpat1, libfltk1.4, libgles-dev, libglu1-mesa, libhunspell-1.7-0, libmeshoptimizer2d, libminizip1t64, libnghttp2-14, libnspr4, libnss3, libopenjp2-7, libsdl2-2.0-0, libvlc5, libvorbisenc2, libvorbisfile3, vlc-plugin-base"
diff --git a/indra/newview/llvoiceclient.cpp b/indra/newview/llvoiceclient.cpp
index 113054b9e6..4fd0a8e2b8 100644
--- a/indra/newview/llvoiceclient.cpp
+++ b/indra/newview/llvoiceclient.cpp
@@ -26,7 +26,7 @@
#include "llvoiceclient.h"
#include "llvoicevivox.h"
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
#include "llvoicewebrtc.h"
#endif
#include "llviewernetwork.h"
@@ -123,7 +123,7 @@ LLVoiceModuleInterface *getVoiceModule(const std::string &voice_server_type)
{
return (LLVoiceModuleInterface *) LLVivoxVoiceClient::getInstance();
}
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
else if (voice_server_type == WEBRTC_VOICE_SERVER_TYPE)
{
return (LLVoiceModuleInterface *) LLWebRTCVoiceClient::getInstance();
@@ -170,7 +170,7 @@ void LLVoiceClient::init(LLPumpIO *pump)
{
// Initialize all of the voice modules
m_servicePump = pump;
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->init(pump);
#endif
LLVivoxVoiceClient::getInstance()->init(pump);
@@ -183,7 +183,7 @@ void LLVoiceClient::userAuthorized(const std::string& user_id, const LLUUID &age
mRegionChangedCallbackSlot.disconnect();
}
mRegionChangedCallbackSlot = gAgent.addRegionChangedCallback(boost::bind(&LLVoiceClient::onRegionChanged, this));
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->userAuthorized(user_id, agentID);
#endif
LLVivoxVoiceClient::getInstance()->userAuthorized(user_id, agentID);
@@ -295,7 +295,7 @@ void LLVoiceClient::setNonSpatialVoiceModule(const std::string &voice_server_typ
void LLVoiceClient::setHidden(bool hidden)
{
LL_INFOS("Voice") << "( " << (hidden ? "true" : "false") << " )" << LL_ENDL;
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->setHidden(hidden);
#endif
LLVivoxVoiceClient::getInstance()->setHidden(hidden);
@@ -303,7 +303,7 @@ void LLVoiceClient::setHidden(bool hidden)
void LLVoiceClient::terminate()
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
if (LLVivoxVoiceClient::instanceExists())
{
LLWebRTCVoiceClient::getInstance()->terminate();
@@ -347,7 +347,7 @@ void LLVoiceClient::updateSettings()
updateMicMuteLogic();
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->updateSettings();
#endif
LLVivoxVoiceClient::getInstance()->updateSettings();
@@ -358,7 +358,7 @@ void LLVoiceClient::updateSettings()
void LLVoiceClient::tuningStart()
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->tuningStart();
#endif
LLVivoxVoiceClient::getInstance()->tuningStart();
@@ -366,7 +366,7 @@ void LLVoiceClient::tuningStart()
void LLVoiceClient::tuningStop()
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->tuningStop();
#endif
LLVivoxVoiceClient::getInstance()->tuningStop();
@@ -374,7 +374,7 @@ void LLVoiceClient::tuningStop()
bool LLVoiceClient::inTuningMode()
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
return LLWebRTCVoiceClient::getInstance()->inTuningMode();
#else
return LLVivoxVoiceClient::getInstance()->inTuningMode();
@@ -383,7 +383,7 @@ bool LLVoiceClient::inTuningMode()
void LLVoiceClient::tuningSetMicVolume(float volume)
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->tuningSetMicVolume(volume);
#else
LLVivoxVoiceClient::getInstance()->tuningSetMicVolume(volume);
@@ -392,7 +392,7 @@ void LLVoiceClient::tuningSetMicVolume(float volume)
void LLVoiceClient::tuningSetSpeakerVolume(float volume)
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->tuningSetSpeakerVolume(volume);
#else
LLVivoxVoiceClient::getInstance()->tuningSetSpeakerVolume(volume);
@@ -401,7 +401,7 @@ void LLVoiceClient::tuningSetSpeakerVolume(float volume)
float LLVoiceClient::tuningGetEnergy(void)
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
return LLWebRTCVoiceClient::getInstance()->tuningGetEnergy();
#else
return LLVivoxVoiceClient::getInstance()->tuningGetEnergy();
@@ -413,7 +413,7 @@ float LLVoiceClient::tuningGetEnergy(void)
bool LLVoiceClient::deviceSettingsAvailable()
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
return LLWebRTCVoiceClient::getInstance()->deviceSettingsAvailable();
#else
return LLVivoxVoiceClient::getInstance()->deviceSettingsAvailable();
@@ -422,7 +422,7 @@ bool LLVoiceClient::deviceSettingsAvailable()
bool LLVoiceClient::deviceSettingsUpdated()
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
return LLWebRTCVoiceClient::getInstance()->deviceSettingsUpdated();
#else
return LLVivoxVoiceClient::getInstance()->deviceSettingsUpdated();
@@ -431,7 +431,7 @@ bool LLVoiceClient::deviceSettingsUpdated()
void LLVoiceClient::refreshDeviceLists(bool clearCurrentList)
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->refreshDeviceLists(clearCurrentList);
#else
LLVivoxVoiceClient::getInstance()->refreshDeviceLists(clearCurrentList);
@@ -441,7 +441,7 @@ void LLVoiceClient::refreshDeviceLists(bool clearCurrentList)
void LLVoiceClient::setCaptureDevice(const std::string& name)
{
LLVivoxVoiceClient::getInstance()->setCaptureDevice(name);
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->setCaptureDevice(name);
#endif
}
@@ -449,14 +449,14 @@ void LLVoiceClient::setCaptureDevice(const std::string& name)
void LLVoiceClient::setRenderDevice(const std::string& name)
{
LLVivoxVoiceClient::getInstance()->setRenderDevice(name);
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->setRenderDevice(name);
#endif
}
const LLVoiceDeviceList& LLVoiceClient::getCaptureDevices()
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
return LLWebRTCVoiceClient::getInstance()->getCaptureDevices();
#else
return LLVivoxVoiceClient::getInstance()->getCaptureDevices();
@@ -466,7 +466,7 @@ const LLVoiceDeviceList& LLVoiceClient::getCaptureDevices()
const LLVoiceDeviceList& LLVoiceClient::getRenderDevices()
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
return LLWebRTCVoiceClient::getInstance()->getRenderDevices();
#else
return LLVivoxVoiceClient::getInstance()->getRenderDevices();
@@ -479,7 +479,7 @@ const LLVoiceDeviceList& LLVoiceClient::getRenderDevices()
void LLVoiceClient::getParticipantList(std::set<LLUUID> &participants) const
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->getParticipantList(participants);
#endif
LLVivoxVoiceClient::getInstance()->getParticipantList(participants);
@@ -487,7 +487,7 @@ void LLVoiceClient::getParticipantList(std::set<LLUUID> &participants) const
bool LLVoiceClient::isParticipant(const LLUUID &speaker_id) const
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
return LLWebRTCVoiceClient::getInstance()->isParticipant(speaker_id) ||
#else
return
@@ -584,7 +584,7 @@ void LLVoiceClient::activateSpatialChannel(bool activate)
bool LLVoiceClient::isCurrentChannel(const LLSD& channelInfo)
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
return LLWebRTCVoiceClient::getInstance()->isCurrentChannel(channelInfo) ||
#else
return
@@ -594,7 +594,7 @@ bool LLVoiceClient::isCurrentChannel(const LLSD& channelInfo)
bool LLVoiceClient::compareChannels(const LLSD &channelInfo1, const LLSD &channelInfo2)
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
return LLWebRTCVoiceClient::getInstance()->compareChannels(channelInfo1, channelInfo2) ||
#else
return
@@ -640,7 +640,7 @@ LLVoiceP2POutgoingCallInterface *LLVoiceClient::getOutgoingCallInterface(const L
void LLVoiceClient::setVoiceVolume(F32 volume)
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->setVoiceVolume(volume);
#endif
LLVivoxVoiceClient::getInstance()->setVoiceVolume(volume);
@@ -648,7 +648,7 @@ void LLVoiceClient::setVoiceVolume(F32 volume)
void LLVoiceClient::setMicGain(F32 gain)
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->setMicGain(gain);
#endif
LLVivoxVoiceClient::getInstance()->setMicGain(gain);
@@ -697,7 +697,7 @@ bool LLVoiceClient::voiceEnabled()
void LLVoiceClient::setVoiceEnabled(bool enabled)
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
if (LLWebRTCVoiceClient::instanceExists())
{
LLWebRTCVoiceClient::getInstance()->setVoiceEnabled(enabled);
@@ -725,7 +725,7 @@ void LLVoiceClient::updateMicMuteLogic()
// Either of these always overrides any other PTT setting.
new_mic_mute = true;
}
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->setMuteMic(new_mic_mute);
#endif
LLVivoxVoiceClient::getInstance()->setMuteMic(new_mic_mute);
@@ -825,7 +825,7 @@ bool LLVoiceClient::getVoiceEnabled(const LLUUID& id) const
std::string LLVoiceClient::getDisplayName(const LLUUID& id) const
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
std::string result = LLWebRTCVoiceClient::getInstance()->getDisplayName(id);
if (result.empty())
{
@@ -839,7 +839,7 @@ std::string LLVoiceClient::getDisplayName(const LLUUID& id) const
bool LLVoiceClient::isVoiceWorking() const
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
return LLVivoxVoiceClient::getInstance()->isVoiceWorking() ||
LLWebRTCVoiceClient::getInstance()->isVoiceWorking();
#else
@@ -859,7 +859,7 @@ bool LLVoiceClient::isOnlineSIP(const LLUUID& id)
bool LLVoiceClient::getIsSpeaking(const LLUUID& id)
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
return LLWebRTCVoiceClient::getInstance()->getIsSpeaking(id) ||
#else
return
@@ -871,7 +871,7 @@ bool LLVoiceClient::getIsModeratorMuted(const LLUUID& id)
{
// don't bother worrying about p2p calls, as
// p2p calls don't have mute.
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
return LLWebRTCVoiceClient::getInstance()->getIsModeratorMuted(id) ||
#else
return
@@ -881,7 +881,7 @@ bool LLVoiceClient::getIsModeratorMuted(const LLUUID& id)
F32 LLVoiceClient::getCurrentPower(const LLUUID& id)
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
return std::fmax(LLVivoxVoiceClient::getInstance()->getCurrentPower(id),
LLWebRTCVoiceClient::getInstance()->getCurrentPower(id));
#else
@@ -898,7 +898,7 @@ bool LLVoiceClient::getOnMuteList(const LLUUID& id)
F32 LLVoiceClient::getUserVolume(const LLUUID& id)
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
return std::fmax(LLVivoxVoiceClient::getInstance()->getUserVolume(id), LLWebRTCVoiceClient::getInstance()->getUserVolume(id));
#else
return LLVivoxVoiceClient::getInstance()->getUserVolume(id);
@@ -907,7 +907,7 @@ F32 LLVoiceClient::getUserVolume(const LLUUID& id)
void LLVoiceClient::setUserVolume(const LLUUID& id, F32 volume)
{
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->setUserVolume(id, volume);
#endif
LLVivoxVoiceClient::getInstance()->setUserVolume(id, volume);
@@ -919,7 +919,7 @@ void LLVoiceClient::setUserVolume(const LLUUID& id, F32 volume)
void LLVoiceClient::addObserver(LLVoiceClientStatusObserver* observer)
{
LLVivoxVoiceClient::getInstance()->addObserver(observer);
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->addObserver(observer);
#endif
}
@@ -930,7 +930,7 @@ void LLVoiceClient::removeObserver(LLVoiceClientStatusObserver* observer)
{
LLVivoxVoiceClient::getInstance()->removeObserver(observer);
}
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
if (LLWebRTCVoiceClient::instanceExists())
{
LLWebRTCVoiceClient::getInstance()->removeObserver(observer);
@@ -941,7 +941,7 @@ void LLVoiceClient::removeObserver(LLVoiceClientStatusObserver* observer)
void LLVoiceClient::addObserver(LLFriendObserver* observer)
{
LLVivoxVoiceClient::getInstance()->addObserver(observer);
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->addObserver(observer);
#endif
}
@@ -952,7 +952,7 @@ void LLVoiceClient::removeObserver(LLFriendObserver* observer)
{
LLVivoxVoiceClient::getInstance()->removeObserver(observer);
}
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
if (LLWebRTCVoiceClient::instanceExists())
{
LLWebRTCVoiceClient::getInstance()->removeObserver(observer);
@@ -963,7 +963,7 @@ void LLVoiceClient::removeObserver(LLFriendObserver* observer)
void LLVoiceClient::addObserver(LLVoiceClientParticipantObserver* observer)
{
LLVivoxVoiceClient::getInstance()->addObserver(observer);
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
LLWebRTCVoiceClient::getInstance()->addObserver(observer);
#endif
}
@@ -974,7 +974,7 @@ void LLVoiceClient::removeObserver(LLVoiceClientParticipantObserver* observer)
{
LLVivoxVoiceClient::getInstance()->removeObserver(observer);
}
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
if (LLWebRTCVoiceClient::instanceExists())
{
LLWebRTCVoiceClient::getInstance()->removeObserver(observer);
@@ -1042,7 +1042,7 @@ class LLViewerRequiredVoiceVersion : public LLHTTPNode
{
voiceModule = (LLVoiceModuleInterface *) LLVivoxVoiceClient::getInstance();
}
-#if USE_WEBRTC
+#if !__FreeBSD__ && !_M_ARM64
else if (voice_server_type == "webrtc")
{
voiceModule = (LLVoiceModuleInterface *) LLWebRTCVoiceClient::getInstance();