Convert AudioFlinger create* arguments to AIDL
This is a first step in AIDLizing IAudioFlinger, where we are
converting the in/out arguments from create{Track,Record} to stable
AIDL and add their respective conversion functions.
Bug: 160253486
Test: atest CtsMediaTestCases:Audio*
Manual verification of common playback and recording scenarios.
Change-Id: Iabb28472aedd90efbba673fb68574876528228df
diff --git a/media/libaudioclient/AudioSystem.cpp b/media/libaudioclient/AudioSystem.cpp
index 0507879..8a91e3b 100644
--- a/media/libaudioclient/AudioSystem.cpp
+++ b/media/libaudioclient/AudioSystem.cpp
@@ -33,7 +33,7 @@
#include <system/audio.h>
-#define VALUE_OR_RETURN(x) \
+#define VALUE_OR_RETURN_STATUS(x) \
({ auto _tmp = (x); \
if (!_tmp.ok()) return Status::fromStatusT(_tmp.error()); \
_tmp.value(); })
@@ -532,10 +532,10 @@
Status AudioSystem::AudioFlingerClient::ioConfigChanged(
media::AudioIoConfigEvent _event,
const media::AudioIoDescriptor& _ioDesc) {
- audio_io_config_event event = VALUE_OR_RETURN(
+ audio_io_config_event event = VALUE_OR_RETURN_STATUS(
aidl2legacy_AudioIoConfigEvent_audio_io_config_event(_event));
sp<AudioIoDescriptor> ioDesc(
- VALUE_OR_RETURN(aidl2legacy_AudioIoDescriptor_AudioIoDescriptor(_ioDesc)));
+ VALUE_OR_RETURN_STATUS(aidl2legacy_AudioIoDescriptor_AudioIoDescriptor(_ioDesc)));
ALOGV("ioConfigChanged() event %d", event);