Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1a8da88a authored by François Gaffie's avatar François Gaffie Committed by Automerger Merge Worker
Browse files

Migrate forced config and for force use to android.media.audio.common.types am: 32aa870a

parents 3ca376b9 32aa870a
Loading
Loading
Loading
Loading
+32 −0
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@
#include <aidl/android/media/audio/common/AudioIoFlags.h>
#include <aidl/android/media/audio/common/AudioMode.h>
#include <aidl/android/media/audio/common/AudioOutputFlags.h>
#include <aidl/android/media/audio/common/AudioPolicyForcedConfig.h>
#include <aidl/android/media/audio/common/PcmType.h>
#include <android/binder_auto_utils.h>

@@ -61,6 +62,31 @@ constexpr std::array<::aidl::android::media::audio::common::AudioMode, 5> kValid
        ::aidl::android::media::audio::common::AudioMode::CALL_SCREEN,
};

constexpr std::array<::aidl::android::media::audio::common::AudioPolicyForcedConfig, 17>
        kValidAudioPolicyForcedConfig = {
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::NONE,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::SPEAKER,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::HEADPHONES,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::BT_SCO,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::BT_A2DP,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::WIRED_ACCESSORY,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::BT_CAR_DOCK,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::BT_DESK_DOCK,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::ANALOG_DOCK,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::DIGITAL_DOCK,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::NO_BT_A2DP,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::SYSTEM_ENFORCED,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::
                        HDMI_SYSTEM_AUDIO_ENFORCED,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::
                        ENCODED_SURROUND_NEVER,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::
                        ENCODED_SURROUND_ALWAYS,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::
                        ENCODED_SURROUND_MANUAL,
                ::aidl::android::media::audio::common::AudioPolicyForcedConfig::BT_BLE,
};

constexpr size_t getPcmSampleSizeInBytes(::aidl::android::media::audio::common::PcmType pcm) {
    using ::aidl::android::media::audio::common::PcmType;
    switch (pcm) {
@@ -136,6 +162,12 @@ constexpr bool isValidAudioMode(::aidl::android::media::audio::common::AudioMode
           kValidAudioModes.end();
}

constexpr bool isValidAudioPolicyForcedConfig(
        ::aidl::android::media::audio::common::AudioPolicyForcedConfig config) {
    return std::find(kValidAudioPolicyForcedConfig.begin(), kValidAudioPolicyForcedConfig.end(),
                     config) != kValidAudioPolicyForcedConfig.end();
}

static inline bool maybeVendorExtension(const std::string& s) {
    // Only checks whether the string starts with the "vendor prefix".
    static const std::string vendorPrefix = "VX_";