diff options
author | fuzzard <fuzzard@users.noreply.github.com> | 2023-10-17 11:11:13 +1000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-17 11:11:13 +1000 |
commit | 871b40cdd90adec56b94974ce9014dc854336cc0 (patch) | |
tree | 03dfa08c16f80ca27a8e5c2b66f41ff34239970a | |
parent | 355521021a5a4c7a4efdc6217207b2e02ec00872 (diff) | |
parent | 8905d673db80bac1312c925d545358e557384e21 (diff) | |
download | xbmc-871b40cdd90adec56b94974ce9014dc854336cc0.tar.xz |
Merge pull request #23886 from lrusak/freebsd-audio-app-params
CPlatformFreebsd: use app params to set audio backend
-rw-r--r-- | cmake/scripts/freebsd/ArchSetup.cmake | 2 | ||||
-rw-r--r-- | tools/Linux/kodi.sh.in | 2 | ||||
-rw-r--r-- | xbmc/platform/freebsd/PlatformFreebsd.cpp | 16 |
3 files changed, 12 insertions, 8 deletions
diff --git a/cmake/scripts/freebsd/ArchSetup.cmake b/cmake/scripts/freebsd/ArchSetup.cmake index 87f4f0c9cc..9e128df162 100644 --- a/cmake/scripts/freebsd/ArchSetup.cmake +++ b/cmake/scripts/freebsd/ArchSetup.cmake @@ -44,3 +44,5 @@ if(NOT USE_INTERNAL_LIBS) set(USE_INTERNAL_LIBS OFF) endif() endif() + +list(APPEND AUDIO_BACKENDS_LIST "oss") diff --git a/tools/Linux/kodi.sh.in b/tools/Linux/kodi.sh.in index d68e23516d..52d4646db5 100644 --- a/tools/Linux/kodi.sh.in +++ b/tools/Linux/kodi.sh.in @@ -182,6 +182,8 @@ if [ -n "${KODI_AE_SINK}" ]; then ENV_ARGS="--audio-backend=pulseaudio" elif [ "${KODI_AE_SINK}" = "ALSA" ]; then ENV_ARGS="--audio-backend=alsa" + elif [ "${KODI_AE_SINK}" = "OSS" ]; then + ENV_ARGS="--audio-backend=oss" elif [ "${KODI_AE_SINK}" = "SNDIO" ]; then ENV_ARGS="--audio-backend=sndio" elif [ "${KODI_AE_SINK}" = "ALSA+PULSE" ]; then diff --git a/xbmc/platform/freebsd/PlatformFreebsd.cpp b/xbmc/platform/freebsd/PlatformFreebsd.cpp index b65501b522..c949a339cb 100644 --- a/xbmc/platform/freebsd/PlatformFreebsd.cpp +++ b/xbmc/platform/freebsd/PlatformFreebsd.cpp @@ -8,6 +8,8 @@ #include "PlatformFreebsd.h" +#include "ServiceBroker.h" +#include "application/AppParams.h" #include "utils/StringUtils.h" #include "platform/freebsd/OptionalsReg.h" @@ -79,27 +81,25 @@ bool CPlatformFreebsd::InitStageOne() CLinuxPowerSyscall::Register(); - std::string envSink; - if (getenv("KODI_AE_SINK")) - envSink = getenv("KODI_AE_SINK"); + std::string_view sink = CServiceBroker::GetAppParams()->GetAudioBackend(); - if (StringUtils::EqualsNoCase(envSink, "ALSA")) + if (sink == "alsa") { OPTIONALS::ALSARegister(); } - else if (StringUtils::EqualsNoCase(envSink, "PULSE")) + else if (sink == "pulseaudio") { OPTIONALS::PulseAudioRegister(); } - else if (StringUtils::EqualsNoCase(envSink, "OSS")) + else if (sink == "oss") { OPTIONALS::OSSRegister(); } - else if (StringUtils::EqualsNoCase(envSink, "SNDIO")) + else if (sink == "sndio") { OPTIONALS::SndioRegister(); } - else if (StringUtils::EqualsNoCase(envSink, "ALSA+PULSE")) + else if (sink == "alsa+pulseaudio") { OPTIONALS::ALSARegister(); OPTIONALS::PulseAudioRegister(); |