audio policy: check audio attributes with use case validator
Add calls to use case validator when playback and capture starts
to fix incomplete or default usages in audio attributes.
Bug: 257922898
Test: libaudiousecasevalidation-test
Change-Id: I5c22c34564a101eb9773988919cff6ded370485e
diff --git a/media/libaudioclient/AudioSystem.cpp b/media/libaudioclient/AudioSystem.cpp
index 1f107a6..459e248 100644
--- a/media/libaudioclient/AudioSystem.cpp
+++ b/media/libaudioclient/AudioSystem.cpp
@@ -1086,6 +1086,8 @@
responseAidl.secondaryOutputs, aidl2legacy_int32_t_audio_io_handle_t));
*isSpatialized = responseAidl.isSpatialized;
*isBitPerfect = responseAidl.isBitPerfect;
+ *attr = VALUE_OR_RETURN_STATUS(
+ aidl2legacy_AudioAttributesInternal_audio_attributes_t(responseAidl.attr));
return OK;
}
diff --git a/media/libaudioclient/aidl/android/media/GetOutputForAttrResponse.aidl b/media/libaudioclient/aidl/android/media/GetOutputForAttrResponse.aidl
index 385f787..9d44bb0 100644
--- a/media/libaudioclient/aidl/android/media/GetOutputForAttrResponse.aidl
+++ b/media/libaudioclient/aidl/android/media/GetOutputForAttrResponse.aidl
@@ -18,7 +18,7 @@
import android.media.audio.common.AudioConfigBase;
import android.media.audio.common.AudioStreamType;
-
+import android.media.AudioAttributesInternal;
/**
* {@hide}
*/
@@ -37,4 +37,6 @@
/** The suggested audio config if fails to get an output. **/
AudioConfigBase configBase;
boolean isBitPerfect;
+ /** The corrected audio attributes. **/
+ AudioAttributesInternal attr;
}