From 0411777632abe1d135d4ab0ec85de5f07b2b2a48 Mon Sep 17 00:00:00 2001 From: hwwuhaobo Date: Sat, 29 Jul 2023 09:56:26 +0800 Subject: [PATCH] all in av trans Signed-off-by: hwwuhaobo --- .../micclient/include/dmic_client.h | 1 - .../audioclient/micclient/src/dmic_client.cpp | 21 +-- .../spkclient/include/dspeaker_client.h | 1 - .../spkclient/src/dspeaker_client.cpp | 20 +- .../micclient/src/dmic_client_test.cpp | 1 - .../spkclient/src/dspeaker_client_test.cpp | 2 - .../managersink/include/daudio_sink_dev.h | 1 - .../managersink/include/daudio_sink_manager.h | 1 - .../managersink/src/daudio_sink_manager.cpp | 73 ++++---- .../managersource/include/daudio_source_dev.h | 1 - .../include/daudio_source_manager.h | 1 - .../managersource/include/dmic_dev.h | 1 - .../managersource/include/dspeaker_dev.h | 1 - .../managersource/src/daudio_source_dev.cpp | 173 ++++-------------- .../src/daudio_source_manager.cpp | 27 ++- .../managersource/src/dmic_dev.cpp | 31 ++-- .../managersource/src/dspeaker_dev.cpp | 27 ++- .../src/daudio_sink_manager_test.cpp | 2 - .../src/daudio_source_dev_test.cpp | 3 - 19 files changed, 120 insertions(+), 268 deletions(-) diff --git a/services/audioclient/micclient/include/dmic_client.h b/services/audioclient/micclient/include/dmic_client.h index a6283b03..af19b534 100644 --- a/services/audioclient/micclient/include/dmic_client.h +++ b/services/audioclient/micclient/include/dmic_client.h @@ -79,7 +79,6 @@ private: std::weak_ptr eventCallback_; std::unique_ptr audioCapturer_ = nullptr; std::shared_ptr micTrans_ = nullptr; - bool engineFlag_ = false; }; } // DistributedHardware } // OHOS diff --git a/services/audioclient/micclient/src/dmic_client.cpp b/services/audioclient/micclient/src/dmic_client.cpp index 150191fa..d83f4a31 100644 --- a/services/audioclient/micclient/src/dmic_client.cpp +++ b/services/audioclient/micclient/src/dmic_client.cpp @@ -59,16 +59,13 @@ void DMicClient::OnEngineTransMessage(const std::shared_ptr &mes int32_t DMicClient::InitSenderEngine(IAVEngineProvider *providerPtr) { DHLOGI("Init SenderEngine"); - IsParamEnabled(AUDIO_ENGINE_FLAG, engineFlag_); - if (engineFlag_) { - if (micTrans_ == nullptr) { - micTrans_ = std::make_shared(devId_, shared_from_this()); - } - int32_t ret = micTrans_->InitEngine(providerPtr); - if (ret != DH_SUCCESS) { - DHLOGE("Initialize av sender adapter failed. micclient"); - return ERR_DH_AUDIO_TRANS_NULL_VALUE; - } + if (micTrans_ == nullptr) { + micTrans_ = std::make_shared(devId_, shared_from_this()); + } + int32_t ret = micTrans_->InitEngine(providerPtr); + if (ret != DH_SUCCESS) { + DHLOGE("Initialize av sender adapter failed. micclient"); + return ERR_DH_AUDIO_TRANS_NULL_VALUE; } return DH_SUCCESS; } @@ -130,10 +127,6 @@ int32_t DMicClient::SetUp(const AudioParam ¶m) return ERR_DH_AUDIO_CLIENT_CREATE_CAPTURER_FAILED; } - // Use a unified process regardless of whether it relies on transport components or not - if (!engineFlag_) { - micTrans_ = std::make_shared(devId_); - } if (micTrans_ == nullptr) { DHLOGE("mic trans in engine should be init by dev."); return ERR_DH_AUDIO_NULLPTR; diff --git a/services/audioclient/spkclient/include/dspeaker_client.h b/services/audioclient/spkclient/include/dspeaker_client.h index 0929ef98..a20f5ae6 100644 --- a/services/audioclient/spkclient/include/dspeaker_client.h +++ b/services/audioclient/spkclient/include/dspeaker_client.h @@ -104,7 +104,6 @@ private: std::unique_ptr audioRenderer_ = nullptr; std::shared_ptr speakerTrans_ = nullptr; std::weak_ptr eventCallback_; - bool engineFlag_ = false; }; } // DistributedHardware } // OHOS diff --git a/services/audioclient/spkclient/src/dspeaker_client.cpp b/services/audioclient/spkclient/src/dspeaker_client.cpp index a1522a99..90f604ab 100644 --- a/services/audioclient/spkclient/src/dspeaker_client.cpp +++ b/services/audioclient/spkclient/src/dspeaker_client.cpp @@ -60,16 +60,13 @@ void DSpeakerClient::OnEngineTransDataAvailable(const std::shared_ptr int32_t DSpeakerClient::InitReceiverEngine(IAVEngineProvider *providerPtr) { DHLOGI("InitReceiverEngine enter."); - IsParamEnabled(AUDIO_ENGINE_FLAG, engineFlag_); - if (engineFlag_) { - if (speakerTrans_ == nullptr) { - speakerTrans_ = std::make_shared(devId_, shared_from_this()); - } - int32_t ret = speakerTrans_->InitEngine(providerPtr); - if (ret != DH_SUCCESS) { - DHLOGE("Initialize av receiver adapter failed spkclient."); - return ERR_DH_AUDIO_TRANS_NULL_VALUE; - } + if (speakerTrans_ == nullptr) { + speakerTrans_ = std::make_shared(devId_, shared_from_this()); + } + int32_t ret = speakerTrans_->InitEngine(providerPtr); + if (ret != DH_SUCCESS) { + DHLOGE("Initialize av receiver adapter failed spkclient."); + return ERR_DH_AUDIO_TRANS_NULL_VALUE; } return DH_SUCCESS; } @@ -111,9 +108,6 @@ int32_t DSpeakerClient::SetUp(const AudioParam ¶m) DHLOGE("Set up failed, Create Audio renderer failed."); return ret; } - if (!engineFlag_) { - speakerTrans_ = std::make_shared(devId_); - } if (speakerTrans_ == nullptr) { DHLOGE("Speaker trans should be init by dev."); return ERR_DH_AUDIO_NULLPTR; diff --git a/services/audioclient/test/unittest/micclient/src/dmic_client_test.cpp b/services/audioclient/test/unittest/micclient/src/dmic_client_test.cpp index de349ce3..cfe5d88e 100644 --- a/services/audioclient/test/unittest/micclient/src/dmic_client_test.cpp +++ b/services/audioclient/test/unittest/micclient/src/dmic_client_test.cpp @@ -54,7 +54,6 @@ void DMicClientTest::TearDown() HWTEST_F(DMicClientTest, InitSenderEngine_001, TestSize.Level1) { IAVEngineProvider *providerPtr = nullptr; - micClient_->engineFlag_ = true; auto message = std::make_shared(); micClient_->OnEngineTransMessage(message); EXPECT_EQ(DH_SUCCESS, micClient_->InitSenderEngine(providerPtr)); diff --git a/services/audioclient/test/unittest/spkclient/src/dspeaker_client_test.cpp b/services/audioclient/test/unittest/spkclient/src/dspeaker_client_test.cpp index 4522c916..efd68bdd 100644 --- a/services/audioclient/test/unittest/spkclient/src/dspeaker_client_test.cpp +++ b/services/audioclient/test/unittest/spkclient/src/dspeaker_client_test.cpp @@ -58,7 +58,6 @@ void DSpeakerClientTest::TearDown() HWTEST_F(DSpeakerClientTest, InitReceiverEngine_001, TestSize.Level1) { IAVEngineProvider *providerPtr = nullptr; - speakerClient_->engineFlag_ = true; AVTransEvent event1 = { EventType::EVENT_START_SUCCESS, "", ""}; speakerClient_->OnEngineTransEvent(event1); @@ -102,7 +101,6 @@ HWTEST_F(DSpeakerClientTest, SetUp_001, TestSize.Level1) AudioParam audioParam; EXPECT_NE(DH_SUCCESS, speakerClient_->SetUp(audioParam)); EXPECT_EQ(ERR_DH_AUDIO_TRANS_ERROR, speakerClient_->SetUp(audioParam_)); - speakerClient_->engineFlag_ = true; speakerClient_->speakerTrans_ = nullptr; EXPECT_EQ(ERR_DH_AUDIO_NULLPTR, speakerClient_->SetUp(audioParam)); EXPECT_EQ(ERR_DH_AUDIO_SA_STATUS_ERR, speakerClient_->Release()); diff --git a/services/audiomanager/managersink/include/daudio_sink_dev.h b/services/audiomanager/managersink/include/daudio_sink_dev.h index 856736cb..dd6a9bef 100644 --- a/services/audiomanager/managersink/include/daudio_sink_dev.h +++ b/services/audiomanager/managersink/include/daudio_sink_dev.h @@ -104,7 +104,6 @@ private: using DAudioSinkDevFunc = int32_t (DAudioSinkDev::*)(const AudioEvent &audioEvent); std::map memberFuncMap_; - bool engineFlag_ = false; }; } // DistributedHardware } // OHOS diff --git a/services/audiomanager/managersink/include/daudio_sink_manager.h b/services/audiomanager/managersink/include/daudio_sink_manager.h index 4b1df962..21b70f1e 100644 --- a/services/audiomanager/managersink/include/daudio_sink_manager.h +++ b/services/audiomanager/managersink/include/daudio_sink_manager.h @@ -70,7 +70,6 @@ private: IAVEngineProvider *rcvProviderPtr_ = nullptr; void *pSHandler_ = nullptr; void *pRHandler_ = nullptr; - bool engineFlag_ = false; }; } // DistributedHardware } // OHOS diff --git a/services/audiomanager/managersink/src/daudio_sink_manager.cpp b/services/audiomanager/managersink/src/daudio_sink_manager.cpp index fb55364c..1d470c99 100644 --- a/services/audiomanager/managersink/src/daudio_sink_manager.cpp +++ b/services/audiomanager/managersink/src/daudio_sink_manager.cpp @@ -63,43 +63,38 @@ int32_t DAudioSinkManager::Init() return ret; } - IsParamEnabled(AUDIO_ENGINE_FLAG, engineFlag_); - if (engineFlag_) { - ret = LoadAVReceiverEngineProvider(); - if (ret != DH_SUCCESS || rcvProviderPtr_ == nullptr) { - DHLOGE("Load av transport receiver engine provider failed."); - return ERR_DH_AUDIO_FAILED; - } - providerListener_ = std::make_shared(); - ret = rcvProviderPtr_->RegisterProviderCallback(providerListener_); - if (ret != DH_SUCCESS) { - DHLOGE("Register av transport receiver Provider Callback failed."); - return ERR_DH_AUDIO_FAILED; - } - DHLOGI("LoadAVReceiverEngineProvider success."); + ret = LoadAVReceiverEngineProvider(); + if (ret != DH_SUCCESS || rcvProviderPtr_ == nullptr) { + DHLOGE("Load av transport receiver engine provider failed."); + return ERR_DH_AUDIO_FAILED; + } + providerListener_ = std::make_shared(); + ret = rcvProviderPtr_->RegisterProviderCallback(providerListener_); + if (ret != DH_SUCCESS) { + DHLOGE("Register av transport receiver Provider Callback failed."); + return ERR_DH_AUDIO_FAILED; + } + DHLOGI("LoadAVReceiverEngineProvider success."); - ret = LoadAVSenderEngineProvider(); - if (ret != DH_SUCCESS || sendProviderPtr_ == nullptr) { - DHLOGI("Load av transport sender engine provider failed."); - return ERR_DH_AUDIO_FAILED; - } - ret = sendProviderPtr_->RegisterProviderCallback(providerListener_); - if (ret != DH_SUCCESS) { - DHLOGE("Register av transport sender Provider Callback failed."); - return ERR_DH_AUDIO_FAILED; - } - DHLOGI("LoadAVSenderEngineProvider success."); + ret = LoadAVSenderEngineProvider(); + if (ret != DH_SUCCESS || sendProviderPtr_ == nullptr) { + DHLOGI("Load av transport sender engine provider failed."); + return ERR_DH_AUDIO_FAILED; } + ret = sendProviderPtr_->RegisterProviderCallback(providerListener_); + if (ret != DH_SUCCESS) { + DHLOGE("Register av transport sender Provider Callback failed."); + return ERR_DH_AUDIO_FAILED; + } + DHLOGI("LoadAVSenderEngineProvider success."); return DH_SUCCESS; } int32_t DAudioSinkManager::UnInit() { DHLOGI("UnInit audio sink manager."); - if (engineFlag_) { - UnloadAVSenderEngineProvider(); - UnloadAVReceiverEngineProvider(); - } + UnloadAVSenderEngineProvider(); + UnloadAVReceiverEngineProvider(); { std::lock_guard remoteSvrLock(remoteSvrMutex_); sourceServiceMap_.clear(); @@ -161,24 +156,20 @@ int32_t DAudioSinkManager::HandleDAudioNotify(const std::string &devId, const st int32_t DAudioSinkManager::CreateAudioDevice(const std::string &devId) { DHLOGI("Create audio sink dev."); - if (engineFlag_) { - std::lock_guard lock(devMapMutex_); - if (audioDevMap_.find(devId) != audioDevMap_.end()) { - DHLOGI("Audio sink dev in map. devId: %s.", GetAnonyString(devId).c_str()); - return DH_SUCCESS; - } + std::lock_guard lock(devMapMutex_); + if (audioDevMap_.find(devId) != audioDevMap_.end()) { + DHLOGI("Audio sink dev in map. devId: %s.", GetAnonyString(devId).c_str()); + return DH_SUCCESS; } auto dev = std::make_shared(devId); if (dev->AwakeAudioDev() != DH_SUCCESS) { DHLOGE("Awake audio dev failed."); return ERR_DH_AUDIO_FAILED; } - if (engineFlag_) { - int32_t ret = dev->InitAVTransEngines(sendProviderPtr_, rcvProviderPtr_); - if (ret != DH_SUCCESS) { - DHLOGE("Init av transport sender engine failed."); - return ERR_DH_AUDIO_FAILED; - } + int32_t ret = dev->InitAVTransEngines(sendProviderPtr_, rcvProviderPtr_); + if (ret != DH_SUCCESS) { + DHLOGE("Init av transport sender engine failed."); + return ERR_DH_AUDIO_FAILED; } audioDevMap_.emplace(devId, dev); return DH_SUCCESS; diff --git a/services/audiomanager/managersource/include/daudio_source_dev.h b/services/audiomanager/managersource/include/daudio_source_dev.h index cf6340d8..bb769b17 100644 --- a/services/audiomanager/managersource/include/daudio_source_dev.h +++ b/services/audiomanager/managersource/include/daudio_source_dev.h @@ -138,7 +138,6 @@ private: using DAudioSourceDevFunc = int32_t (DAudioSourceDev::*)(const AudioEvent &audioEvent); std::map memberFuncMap_; std::map eventNotifyMap_; - bool engineFlag_ = false; }; } // DistributedHardware } // OHOS diff --git a/services/audiomanager/managersource/include/daudio_source_manager.h b/services/audiomanager/managersource/include/daudio_source_manager.h index 6a5b8c25..f0fedee3 100644 --- a/services/audiomanager/managersource/include/daudio_source_manager.h +++ b/services/audiomanager/managersource/include/daudio_source_manager.h @@ -79,7 +79,6 @@ private: IAVEngineProvider *rcvProviderPtr_ = nullptr; void *pSHandler_ = nullptr; void *pRHandler_ = nullptr; - bool engineFlag_ = false; }; } // DistributedHardware } // OHOS diff --git a/services/audiomanager/managersource/include/dmic_dev.h b/services/audiomanager/managersource/include/dmic_dev.h index 7fe002aa..de80fdaa 100644 --- a/services/audiomanager/managersource/include/dmic_dev.h +++ b/services/audiomanager/managersource/include/dmic_dev.h @@ -125,7 +125,6 @@ private: std::thread enqueueDataThread_; std::mutex writeAshmemMutex_; std::condition_variable dataQueueCond_; - bool engineFlag_ = false; }; } // DistributedHardware } // OHOS diff --git a/services/audiomanager/managersource/include/dspeaker_dev.h b/services/audiomanager/managersource/include/dspeaker_dev.h index 9d035917..ef64da75 100644 --- a/services/audiomanager/managersource/include/dspeaker_dev.h +++ b/services/audiomanager/managersource/include/dspeaker_dev.h @@ -111,7 +111,6 @@ private: int64_t readTvSec_ = 0; int64_t readTvNSec_ = 0; std::thread enqueueDataThread_; - bool engineFlag_ = false; }; } // DistributedHardware } // OHOS diff --git a/services/audiomanager/managersource/src/daudio_source_dev.cpp b/services/audiomanager/managersource/src/daudio_source_dev.cpp index 5463adc0..52218361 100644 --- a/services/audiomanager/managersource/src/daudio_source_dev.cpp +++ b/services/audiomanager/managersource/src/daudio_source_dev.cpp @@ -65,7 +65,6 @@ DAudioSourceDev::DAudioSourceDev(const std::string &devId, const std::shared_ptr eventNotifyMap_[NOTIFY_CLOSE_MIC_RESULT] = EVENT_NOTIFY_CLOSE_MIC; eventNotifyMap_[NOTIFY_OPEN_CTRL_RESULT] = EVENT_NOTIFY_OPEN_CTRL; eventNotifyMap_[NOTIFY_CLOSE_CTRL_RESULT] = EVENT_NOTIFY_CLOSE_CTRL; - IsParamEnabled(AUDIO_ENGINE_FLAG, engineFlag_); } int32_t DAudioSourceDev::AwakeAudioDev() @@ -223,31 +222,13 @@ int32_t DAudioSourceDev::HandleDMicClosed(const AudioEvent &event) int32_t DAudioSourceDev::OpenCtrlTrans(const AudioEvent &event) { - if (!engineFlag_) { - if (audioCtrlMgr_ == nullptr) { - audioCtrlMgr_ = std::make_shared(devId_, shared_from_this()); - } - if (!audioCtrlMgr_->IsOpened() && (HandleOpenCtrlTrans(event) != DH_SUCCESS)) { - DHLOGE("Open ctrl failed."); - return ERR_DH_AUDIO_SA_OPEN_CTRL_FAILED; - } - } + // todo 该函数可以删除 return DH_SUCCESS; } int32_t DAudioSourceDev::CloseCtrlTrans(const AudioEvent &event, bool isSpk) { - if (!engineFlag_) { - if (audioCtrlMgr_ == nullptr) { - DHLOGD("Ctrl already closed."); - return DH_SUCCESS; - } - if ((!isSpk && (speaker_ == nullptr || !speaker_->IsOpened())) || - (isSpk && (mic_ == nullptr || !mic_->IsOpened()))) { - DHLOGD("No distributed audio device used, close ctrl trans."); - return HandleCloseCtrlTrans(event); - } - } + // todo 该函数可以删除 return DH_SUCCESS; } @@ -600,12 +581,10 @@ int32_t DAudioSourceDev::TaskOpenDSpeaker(const std::string &args) return ERR_DH_AUDIO_FAILED; } - if (engineFlag_) { - int32_t ret = speaker_->InitSenderEngine(DAudioSourceManager::GetInstance().getSenderProvider()); - if (ret != DH_SUCCESS) { - DHLOGE("Speaker init sender Engine, error code %d.", ret); - return ret; - } + int32_t ret = speaker_->InitSenderEngine(DAudioSourceManager::GetInstance().getSenderProvider()); + if (ret != DH_SUCCESS) { + DHLOGE("Speaker init sender Engine, error code %d.", ret); + return ret; } json jAudioParam; @@ -699,7 +678,7 @@ int32_t DAudioSourceDev::TaskCloseDSpeaker(const std::string &args) DHLOGD("args length error."); return ERR_DH_AUDIO_SA_PARAM_INVALID; } - int32_t ret = !engineFlag_ ? CloseSpkOld(args) : CloseSpkNew(args); + int32_t ret = CloseSpkNew(args); if (ret != DH_SUCCESS) { DHLOGE("Close spk in old mode failed."); return ret; @@ -715,12 +694,10 @@ int32_t DAudioSourceDev::TaskOpenDMic(const std::string &args) DHLOGE("Mic device not init"); return ERR_DH_AUDIO_SA_MIC_DEVICE_NOT_INIT; } - if (engineFlag_) { - int32_t ret = mic_->InitReceiverEngine(DAudioSourceManager::GetInstance().getReceiverProvider()); - if (ret != DH_SUCCESS) { - DHLOGE("Init receiver engine failed."); - return ret; - } + int32_t ret = mic_->InitReceiverEngine(DAudioSourceManager::GetInstance().getReceiverProvider()); + if (ret != DH_SUCCESS) { + DHLOGE("Init receiver engine failed."); + return ret; } if (args.length() > DAUDIO_MAX_JSON_LEN || args.empty()) { return ERR_DH_AUDIO_SA_PARAM_INVALID; @@ -823,7 +800,7 @@ int32_t DAudioSourceDev::TaskCloseDMic(const std::string &args) if (args.length() > DAUDIO_MAX_JSON_LEN || args.empty()) { return ERR_DH_AUDIO_SA_PARAM_INVALID; } - int32_t ret = !engineFlag_ ? CloseMicOld(args): CloseMicNew(args); + int32_t ret = CloseMicNew(args); if (ret != DH_SUCCESS) { DHLOGE("Task close mic error."); return ret; @@ -835,42 +812,7 @@ int32_t DAudioSourceDev::TaskCloseDMic(const std::string &args) int32_t DAudioSourceDev::TaskOpenCtrlChannel(const std::string &args) { DHLOGI("Task open ctrl channel, args: %s.", args.c_str()); - if (!engineFlag_) { - if (audioCtrlMgr_ == nullptr) { - DHLOGE("Audio source ctrl mgr not init."); - return ERR_DH_AUDIO_NULLPTR; - } - if (args.length() > DAUDIO_MAX_JSON_LEN || args.empty()) { - DHLOGE("Task open ctrl channel, args length is invalid."); - return ERR_DH_AUDIO_SA_PARAM_INVALID; - } - - json jAudioParam; - json jParam = json::parse(args, nullptr, false); - if (!JsonParamCheck(jParam, { KEY_DH_ID })) { - DHLOGE("Task open ctrl channel, json param check error."); - return ERR_DH_AUDIO_FAILED; - } - int32_t ret = NotifySinkDev(OPEN_CTRL, jAudioParam, jParam[KEY_DH_ID]); - if (ret != DH_SUCCESS) { - DHLOGE("Notify sink open ctrl failed."); - return ret; - } - - ret = audioCtrlMgr_->SetUp(); - if (ret != DH_SUCCESS) { - DHLOGE("Set up audio ctrl failed."); - return ret; - } - ret = audioCtrlMgr_->Start(); - if (ret != DH_SUCCESS) { - DHLOGE("Start audio ctrl failed."); - audioCtrlMgr_->Release(); - audioCtrlMgr_ = nullptr; - return ret; - } - } - + // todo 该函数可以删除 DHLOGI("Task open ctrl channel success."); return DH_SUCCESS; } @@ -878,29 +820,7 @@ int32_t DAudioSourceDev::TaskOpenCtrlChannel(const std::string &args) int32_t DAudioSourceDev::TaskCloseCtrlChannel(const std::string &args) { DHLOGI("Task close ctrl channel, args: %s.", args.c_str()); - if (!engineFlag_) { - if (audioCtrlMgr_ == nullptr) { - DHLOGD("Audio source ctrl magr already closed."); - return DH_SUCCESS; - } - - bool closeStatus = true; - int32_t ret = audioCtrlMgr_->Stop(); - if (ret != DH_SUCCESS) { - DHLOGE("Stop audio ctrl failed."); - closeStatus = false; - } - ret = audioCtrlMgr_->Release(); - if (ret != DH_SUCCESS) { - DHLOGE("Release audio ctrl failed."); - closeStatus = false; - } - audioCtrlMgr_ = nullptr; - if (!closeStatus) { - return ERR_DH_AUDIO_FAILED; - } - } - + // todo 该函数可以删除 DHLOGI("Close audio ctrl channel success."); return DH_SUCCESS; } @@ -960,28 +880,16 @@ int32_t DAudioSourceDev::TaskPlayStatusChange(const std::string &args) int32_t DAudioSourceDev::SendAudioEventToRemote(const AudioEvent &event) { - if (!engineFlag_) { - if (audioCtrlMgr_ == nullptr) { - DHLOGE("Audio ctrl mgr not init."); - return ERR_DH_AUDIO_NULLPTR; - } - int32_t ret = audioCtrlMgr_->SendAudioEvent(event); - if (ret != DH_SUCCESS) { - DHLOGE("Task send audio event to remote failed."); - return ERR_DH_AUDIO_NULLPTR; - } - } else { - // because: type: CHANGE_PLAY_STATUS / VOLUME_MUTE_SET / VOLUME_SET, so speaker - if (speaker_ == nullptr) { - DHLOGE("Audio ctrl mgr not init."); - return ERR_DH_AUDIO_NULLPTR; - } - int32_t ret = speaker_->SendMessage(static_cast(event.type), - event.content, devId_); - if (ret != DH_SUCCESS) { - DHLOGE("Task send message to remote failed."); - return ERR_DH_AUDIO_NULLPTR; - } + // because: type: CHANGE_PLAY_STATUS / VOLUME_MUTE_SET / VOLUME_SET, so speaker + if (speaker_ == nullptr) { + DHLOGE("Audio ctrl mgr not init."); + return ERR_DH_AUDIO_NULLPTR; + } + int32_t ret = speaker_->SendMessage(static_cast(event.type), + event.content, devId_); + if (ret != DH_SUCCESS) { + DHLOGE("Task send message to remote failed."); + return ERR_DH_AUDIO_NULLPTR; } return DH_SUCCESS; } @@ -1054,25 +962,20 @@ int32_t DAudioSourceDev::NotifySinkDev(const AudioEventType type, const json Par { KEY_EVENT_TYPE, type }, { KEY_AUDIO_PARAM, Param }, { KEY_RANDOM_TASK_CODE, std::to_string(randomTaskCode) } }; - DHLOGD("Notify sink dev, random task code: %s", std::to_string(randomTaskCode).c_str()); - if (!engineFlag_) { - DAudioSourceManager::GetInstance().DAudioNotify(devId_, dhId, type, jParam.dump()); - } else { - DHLOGD("Notify sink dev, new engine, random task code:%s", std::to_string(randomTaskCode).c_str()); - if (speaker_ == nullptr || mic_ == nullptr) { - DHLOGE("speaker or mic dev is null."); - return ERR_DH_AUDIO_NULLPTR; - } - if (type == OPEN_CTRL || type == CLOSE_CTRL) { - DHLOGE("In new engine mode, ctrl is not allowed."); - return ERR_DH_AUDIO_NULLPTR; - } - speaker_->SendMessage(static_cast(type), jParam.dump(), devId_); - mic_->SendMessage(static_cast(type), jParam.dump(), devId_); - if (type == CLOSE_SPEAKER || type == CLOSE_MIC) { - // Close spk || Close mic do not need to wait RPC - return DH_SUCCESS; - } + DHLOGD("Notify sink dev, new engine, random task code:%s", std::to_string(randomTaskCode).c_str()); + if (speaker_ == nullptr || mic_ == nullptr) { + DHLOGE("speaker or mic dev is null."); + return ERR_DH_AUDIO_NULLPTR; + } + if (type == OPEN_CTRL || type == CLOSE_CTRL) { + DHLOGE("In new engine mode, ctrl is not allowed."); + return ERR_DH_AUDIO_NULLPTR; + } + speaker_->SendMessage(static_cast(type), jParam.dump(), devId_); + mic_->SendMessage(static_cast(type), jParam.dump(), devId_); + if (type == CLOSE_SPEAKER || type == CLOSE_MIC) { + // Close spk || Close mic do not need to wait RPC + return DH_SUCCESS; } return WaitForRPC(static_cast(static_cast(type) + eventOffset)); } diff --git a/services/audiomanager/managersource/src/daudio_source_manager.cpp b/services/audiomanager/managersource/src/daudio_source_manager.cpp index 09dcb92b..85923dc1 100644 --- a/services/audiomanager/managersource/src/daudio_source_manager.cpp +++ b/services/audiomanager/managersource/src/daudio_source_manager.cpp @@ -77,18 +77,15 @@ int32_t DAudioSourceManager::Init(const sptr &callback) ipcCallback_ = callback; daudioMgrCallback_ = std::make_shared(); - IsParamEnabled(AUDIO_ENGINE_FLAG, engineFlag_); - if (engineFlag_) { - int32_t ret = LoadAVSenderEngineProvider(); - if (ret != DH_SUCCESS) { - DHLOGE("load av transport sender engine provider failed"); - return ERR_DH_AUDIO_FAILED; - } - ret = LoadAVReceiverEngineProvider(); - if (ret != DH_SUCCESS) { - DHLOGE("load av transport receiver engine provider failed."); - return ERR_DH_AUDIO_FAILED; - } + int32_t ret = LoadAVSenderEngineProvider(); + if (ret != DH_SUCCESS) { + DHLOGE("load av transport sender engine provider failed"); + return ERR_DH_AUDIO_FAILED; + } + ret = LoadAVReceiverEngineProvider(); + if (ret != DH_SUCCESS) { + DHLOGE("load av transport receiver engine provider failed."); + return ERR_DH_AUDIO_FAILED; } return DH_SUCCESS; } @@ -96,10 +93,8 @@ int32_t DAudioSourceManager::Init(const sptr &callback) int32_t DAudioSourceManager::UnInit() { DHLOGI("Uninit audio source manager."); - if (engineFlag_) { - UnloadAVReceiverEngineProvider(); - UnloadAVSenderEngineProvider(); - } + UnloadAVReceiverEngineProvider(); + UnloadAVSenderEngineProvider(); { std::lock_guard lock(devMapMtx_); for (auto iter = audioDevMap_.begin(); iter != audioDevMap_.end(); iter++) { diff --git a/services/audiomanager/managersource/src/dmic_dev.cpp b/services/audiomanager/managersource/src/dmic_dev.cpp index d5626693..2665c7cf 100644 --- a/services/audiomanager/managersource/src/dmic_dev.cpp +++ b/services/audiomanager/managersource/src/dmic_dev.cpp @@ -66,21 +66,18 @@ void DMicDev::OnEngineTransDataAvailable(const std::shared_ptr &audio int32_t DMicDev::InitReceiverEngine(IAVEngineProvider *providerPtr) { DHLOGI("InitReceiverEngine enter."); - IsParamEnabled(AUDIO_ENGINE_FLAG, engineFlag_); - if (engineFlag_) { - if (micTrans_ == nullptr) { - micTrans_ = std::make_shared(devId_, shared_from_this()); - } - int32_t ret = micTrans_->InitEngine(providerPtr); - if (ret != DH_SUCCESS) { - DHLOGE("Initialize av receiver adapter failed. micdev"); - return ERR_DH_AUDIO_TRANS_NULL_VALUE; - } - ret = micTrans_->CreateCtrl(); - if (ret != DH_SUCCESS) { - DHLOGE("Create ctrl channel failed. micdev"); - return ERR_DH_AUDIO_TRANS_NULL_VALUE; - } + if (micTrans_ == nullptr) { + micTrans_ = std::make_shared(devId_, shared_from_this()); + } + int32_t ret = micTrans_->InitEngine(providerPtr); + if (ret != DH_SUCCESS) { + DHLOGE("Initialize av receiver adapter failed. micdev"); + return ERR_DH_AUDIO_TRANS_NULL_VALUE; + } + ret = micTrans_->CreateCtrl(); + if (ret != DH_SUCCESS) { + DHLOGE("Create ctrl channel failed. micdev"); + return ERR_DH_AUDIO_TRANS_NULL_VALUE; } return DH_SUCCESS; } @@ -233,9 +230,7 @@ int32_t DMicDev::NotifyEvent(const std::string &devId, const int32_t dhId, const int32_t DMicDev::SetUp() { DHLOGI("Set up mic device."); - if (!engineFlag_) { - micTrans_ = std::make_shared(devId_); - } else if (micTrans_ == nullptr) { + if (micTrans_ == nullptr) { DHLOGE("mic trans should be init by dev."); return ERR_DH_AUDIO_NULLPTR; } diff --git a/services/audiomanager/managersource/src/dspeaker_dev.cpp b/services/audiomanager/managersource/src/dspeaker_dev.cpp index 3152d3c2..b61c382c 100644 --- a/services/audiomanager/managersource/src/dspeaker_dev.cpp +++ b/services/audiomanager/managersource/src/dspeaker_dev.cpp @@ -104,21 +104,18 @@ int32_t DSpeakerDev::DisableDevice(const int32_t dhId) int32_t DSpeakerDev::InitSenderEngine(IAVEngineProvider *providerPtr) { DHLOGI("InitSenderEngine enter"); - IsParamEnabled(AUDIO_ENGINE_FLAG, engineFlag_); - if (engineFlag_) { - if (speakerTrans_ == nullptr) { - speakerTrans_ = std::make_shared(devId_, shared_from_this()); - } - int32_t ret = speakerTrans_->InitEngine(providerPtr); - if (ret != DH_SUCCESS) { - DHLOGE("Initialize av sender adapter failed."); - return ERR_DH_AUDIO_TRANS_NULL_VALUE; - } - ret = speakerTrans_->CreateCtrl(); - if (ret != DH_SUCCESS) { - DHLOGE("Create ctrl channel failed."); - return ERR_DH_AUDIO_TRANS_NULL_VALUE; - } + if (speakerTrans_ == nullptr) { + speakerTrans_ = std::make_shared(devId_, shared_from_this()); + } + int32_t ret = speakerTrans_->InitEngine(providerPtr); + if (ret != DH_SUCCESS) { + DHLOGE("Initialize av sender adapter failed."); + return ERR_DH_AUDIO_TRANS_NULL_VALUE; + } + ret = speakerTrans_->CreateCtrl(); + if (ret != DH_SUCCESS) { + DHLOGE("Create ctrl channel failed."); + return ERR_DH_AUDIO_TRANS_NULL_VALUE; } return DH_SUCCESS; } diff --git a/services/audiomanager/test/unittest/managersink/src/daudio_sink_manager_test.cpp b/services/audiomanager/test/unittest/managersink/src/daudio_sink_manager_test.cpp index 1d42fde2..c2ed3c04 100644 --- a/services/audiomanager/test/unittest/managersink/src/daudio_sink_manager_test.cpp +++ b/services/audiomanager/test/unittest/managersink/src/daudio_sink_manager_test.cpp @@ -39,7 +39,6 @@ void DAudioSinkManagerTest::TearDown() {} HWTEST_F(DAudioSinkManagerTest, Init_001, TestSize.Level1) { EXPECT_NE(DH_SUCCESS, daudioSinkManager.Init()); - daudioSinkManager.engineFlag_ = true; EXPECT_EQ(DH_SUCCESS, daudioSinkManager.UnInit()); } @@ -53,7 +52,6 @@ HWTEST_F(DAudioSinkManagerTest, CreateAudioDevice_001, TestSize.Level1) { std::string devId = "devId"; EXPECT_EQ(DH_SUCCESS, daudioSinkManager.CreateAudioDevice(devId)); - daudioSinkManager.engineFlag_ = true; EXPECT_EQ(DH_SUCCESS, daudioSinkManager.CreateAudioDevice(devId)); auto dev = std::make_shared(devId); daudioSinkManager.audioDevMap_.emplace(devId, dev); diff --git a/services/audiomanager/test/unittest/sourcedevice/src/daudio_source_dev_test.cpp b/services/audiomanager/test/unittest/sourcedevice/src/daudio_source_dev_test.cpp index fe311035..fd5664e4 100644 --- a/services/audiomanager/test/unittest/sourcedevice/src/daudio_source_dev_test.cpp +++ b/services/audiomanager/test/unittest/sourcedevice/src/daudio_source_dev_test.cpp @@ -292,7 +292,6 @@ HWTEST_F(DAudioSourceDevTest, OpenCtrlTrans_001, TestSize.Level1) { AudioEvent event; EXPECT_EQ(ERR_DH_AUDIO_SA_OPEN_CTRL_FAILED, sourceDev_->OpenCtrlTrans(event)); - sourceDev_->engineFlag_ = true; EXPECT_EQ(DH_SUCCESS, sourceDev_->OpenCtrlTrans(event)); sourceDev_->audioCtrlMgr_ = std::make_shared(DEV_ID, sourceDev_); sourceDev_->audioCtrlMgr_->isOpened_ = true; @@ -320,7 +319,6 @@ HWTEST_F(DAudioSourceDevTest, CloseCtrlTrans_001, TestSize.Level1) EXPECT_EQ(DH_SUCCESS, sourceDev_->CloseCtrlTrans(event, isSpk)); sourceDev_->audioCtrlMgr_ = std::make_shared(DEV_ID, sourceDev_); EXPECT_EQ(ERR_DH_AUDIO_NULLPTR, sourceDev_->CloseCtrlTrans(event, isSpk)); - sourceDev_->engineFlag_ = true; EXPECT_EQ(DH_SUCCESS, sourceDev_->CloseCtrlTrans(event, isSpk)); } @@ -787,7 +785,6 @@ HWTEST_F(DAudioSourceDevTest, TaskOpenDMic_001, TestSize.Level1) sourceDev_->mic_ = std::make_shared(DEV_ID, sourceDev_); EXPECT_EQ(ERR_DH_AUDIO_SA_PARAM_INVALID, sourceDev_->TaskOpenDMic("")); - sourceDev_->engineFlag_ = true; EXPECT_EQ(ERR_DH_AUDIO_SA_PARAM_INVALID, sourceDev_->TaskOpenDMic("")); std::string tempLongStr(DAUDIO_MAX_JSON_LEN + 1, 'a'); -- Gitee