audio: Bring default HAL configuration closer to cuttlefish

This is to simplify switching of cuttlefish to
the AIDL implementation. Split out 'r_submix' module.

Add all IModule instance names to the compatibility
matrix.

Bug: 205884982
Test: atest VtsHalAudioCoreTargetTest
Change-Id: I424db14257281671eea87aa743deb778ca75f388
This commit is contained in:
Mikhail Naganov
2022-12-09 00:33:47 +00:00
parent 72a3964894
commit c8e4312da8
9 changed files with 241 additions and 104 deletions

View File

@@ -43,14 +43,21 @@ int main() {
AServiceManager_addService(config->asBinder().get(), configName.c_str());
CHECK_EQ(STATUS_OK, status);
// Make the default module
auto moduleDefault = ndk::SharedRefBase::make<Module>();
// Make modules
auto moduleDefault = ndk::SharedRefBase::make<Module>(Module::Type::DEFAULT);
const std::string moduleDefaultName = std::string() + Module::descriptor + "/default";
AIBinder_setMinSchedulerPolicy(moduleDefault->asBinder().get(), SCHED_NORMAL,
ANDROID_PRIORITY_AUDIO);
const std::string moduleDefaultName = std::string() + Module::descriptor + "/default";
status = AServiceManager_addService(moduleDefault->asBinder().get(), moduleDefaultName.c_str());
CHECK_EQ(STATUS_OK, status);
auto moduleRSubmix = ndk::SharedRefBase::make<Module>(Module::Type::R_SUBMIX);
const std::string moduleRSubmixName = std::string() + Module::descriptor + "/r_submix";
AIBinder_setMinSchedulerPolicy(moduleRSubmix->asBinder().get(), SCHED_NORMAL,
ANDROID_PRIORITY_AUDIO);
status = AServiceManager_addService(moduleRSubmix->asBinder().get(), moduleRSubmixName.c_str());
CHECK_EQ(STATUS_OK, status);
ABinderProcess_joinThreadPool();
return EXIT_FAILURE; // should not reach
}