Migrate forced config and for force use to android.media.audio.common.types

Bug: 307310023
Test: m

Change-Id: I58747a8591b3a990ca986143f470b49b4b438413
Signed-off-by: François Gaffie <francois.gaffie@ampere.cars>
This commit is contained in:
François Gaffie
2024-08-02 17:22:14 +02:00
parent 5e3235fbf7
commit 32aa870a21

View File

@@ -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>
@@ -58,6 +59,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) {
@@ -133,6 +159,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_";