Align LibAudioHal V2 and V4 for factorisation
In order to merge the two version, they must first align as much
as possible.
Test: playback music, assistant
Change-Id: If517cc3f4646a224af3e9b3d42b68a75f1801b39
Signed-off-by: Kevin Rocard <krocard@google.com>
diff --git a/media/libaudiohal/2.0/StreamHalHidl.cpp b/media/libaudiohal/2.0/StreamHalHidl.cpp
index 9869cd2..b6e8365 100644
--- a/media/libaudiohal/2.0/StreamHalHidl.cpp
+++ b/media/libaudiohal/2.0/StreamHalHidl.cpp
@@ -25,6 +25,7 @@
#include "DeviceHalHidl.h"
#include "EffectHalHidl.h"
#include "StreamHalHidl.h"
+#include "VersionUtils.h"
using ::android::hardware::audio::common::V2_0::AudioChannelMask;
using ::android::hardware::audio::common::V2_0::AudioFormat;
@@ -43,6 +44,7 @@
using ReadCommand = ::android::hardware::audio::V2_0::IStreamIn::ReadCommand;
namespace android {
+namespace V2_0 {
StreamHalHidl::StreamHalHidl(IStream *stream)
: ConversionHelperHidl("Stream"),
@@ -55,7 +57,7 @@
if (mStream != nullptr && mStreamPowerLog.isUserDebugOrEngBuild()) {
// Obtain audio properties (see StreamHalHidl::getAudioProperties() below).
Return<void> ret = mStream->getAudioProperties(
- [&](uint32_t sr, AudioChannelMask m, AudioFormat f) {
+ [&](auto sr, auto m, auto f) {
mStreamPowerLog.init(sr,
static_cast<audio_channel_mask_t>(m),
static_cast<audio_format_t>(f));
@@ -95,7 +97,7 @@
uint32_t *sampleRate, audio_channel_mask_t *mask, audio_format_t *format) {
if (!mStream) return NO_INIT;
Return<void> ret = mStream->getAudioProperties(
- [&](uint32_t sr, AudioChannelMask m, AudioFormat f) {
+ [&](uint32_t sr, auto m, auto f) {
*sampleRate = sr;
*mask = static_cast<audio_channel_mask_t>(m);
*format = static_cast<audio_format_t>(f);
@@ -108,7 +110,8 @@
hidl_vec<ParameterValue> hidlParams;
status_t status = parametersFromHal(kvPairs, &hidlParams);
if (status != OK) return status;
- return processReturn("setParameters", mStream->setParameters(hidlParams));
+ return processReturn("setParameters",
+ utils::setParameters(mStream, hidlParams, {} /* options */));
}
status_t StreamHalHidl::getParameters(const String8& keys, String8 *values) {
@@ -118,7 +121,9 @@
status_t status = keysFromHal(keys, &hidlKeys);
if (status != OK) return status;
Result retval;
- Return<void> ret = mStream->getParameters(
+ Return<void> ret = utils::getParameters(
+ mStream,
+ {} /* context */,
hidlKeys,
[&](Result r, const hidl_vec<ParameterValue>& parameters) {
retval = r;
@@ -150,7 +155,7 @@
if (!mStream) return NO_INIT;
native_handle_t* hidlHandle = native_handle_create(1, 0);
hidlHandle->data[0] = fd;
- Return<void> ret = mStream->debugDump(hidlHandle);
+ Return<void> ret = mStream->debug(hidlHandle, {} /* options */);
native_handle_delete(hidlHandle);
mStreamPowerLog.dump(fd);
return processReturn("dump", ret);
@@ -765,4 +770,5 @@
return INVALID_OPERATION;
}
+} // namespace V2_0
} // namespace android