diff --git a/services/player/engine/BUILD.gn b/services/player/engine/BUILD.gn index 05bbbded2e7b586c2fef70dfea54b73dc5b2b354..15357bdd3f3fb478be2271c4e70e02aeac807f4f 100644 --- a/services/player/engine/BUILD.gn +++ b/services/player/engine/BUILD.gn @@ -43,6 +43,9 @@ config("media_player_engine_config") { "//drivers/peripheral/display/interfaces/include", "//foundation/multimedia/media_standard/services/player/engine/player_register", "//foundation/multimedia/media_standard/services/player/engine/gstplayer_engine", + "//foundation/multimedia/audio_standard/frameworks/innerkitsimpl/common/include", + "//foundation/multimedia/audio_standard/interfaces/innerkits/native/audiocommon/include", + "//foundation/multimedia/audio_standard/interfaces/innerkits/native/audiomanager/include", "//third_party/gstreamer/gstreamer", "//third_party/gstreamer/gstreamer/libs", "//third_party/gstreamer/gstplugins_base", @@ -77,6 +80,7 @@ ohos_shared_library("media_player_engine") { deps = [ "//foundation/multimedia/media_standard/services/utils:media_service_utils", "//foundation/graphic/standard:libsurface", + "//foundation/multimedia/audio_standard/interfaces/innerkits/native/audiomanager:audio_client", "//third_party/gstreamer/gstreamer:gstreamer", "//third_party/gstreamer/gstreamer:gstbase", "//third_party/gstreamer/gstplugins_base:gstvideo", diff --git a/services/player/engine/gstplayer_engine/gst_player_ctrl.cpp b/services/player/engine/gstplayer_engine/gst_player_ctrl.cpp index e989cb0d717089170226f6677cfe98a142417fc6..bed77d1a22dca6678f2cce41219fd25503d05b3c 100644 --- a/services/player/engine/gstplayer_engine/gst_player_ctrl.cpp +++ b/services/player/engine/gstplayer_engine/gst_player_ctrl.cpp @@ -15,8 +15,9 @@ #include "gst_player_ctrl.h" #include "media_log.h" -// #include "audio_system_manager.h" +#include "audio_system_manager.h" #include "media_errors.h" +#include "audio_errors.h" namespace { constexpr OHOS::HiviewDFX::HiLogLabel LABEL = {LOG_CORE, LOG_DOMAIN, "GstPlayerCtrl"}; @@ -137,11 +138,12 @@ void GstPlayerCtrl::SetLoop(bool loop) void GstPlayerCtrl::SetVolume(float leftVolume, float rightVolume) { - // std::unique_lock lock(mutex_); - // AudioStandard::AudioSystemManager *audioManager = AudioStandard::AudioSystemManager::GetInstance(); - // CHECK_AND_RETURN_LOG(audioManager != nullptr, "audioManager is nullptr"); - // int32_t ret = audioManager->SetVolume(AudioStandard::AudioSystemManager::AudioVolumeType::STREAM_MUSIC, leftVolume); - // CHECK_AND_RETURN_LOG(ret == AudioStandard::SUCCESS, "set volume fail"); + std::unique_lock lock(mutex_); + AudioStandard::AudioSystemManager *audioManager = AudioStandard::AudioSystemManager::GetInstance(); + CHECK_AND_RETURN_LOG(audioManager != nullptr, "audioManager is nullptr"); + int32_t sysVolume = static_cast(leftVolume * 15); + int32_t ret = audioManager->SetVolume(AudioStandard::AudioSystemManager::AudioVolumeType::STREAM_MUSIC, sysVolume); + CHECK_AND_RETURN_LOG(ret == AudioStandard::SUCCESS, "set volume fail"); } uint64_t GstPlayerCtrl::GetPosition() diff --git a/services/plugins/BUILD.gn b/services/plugins/BUILD.gn index cd0e74bb3a0b930da16482ae2a4af1e9dc718455..27966f00d3753b3da69128a0d53a82ac171dccdf 100644 --- a/services/plugins/BUILD.gn +++ b/services/plugins/BUILD.gn @@ -17,7 +17,7 @@ group("media_plugins") { deps = [ # "gstreamer/codec:codec_plugins", "gstreamer/source/videocapture:gst_surface_video_src", - # "gstreamer/source/audiocapture:gst_audio_capture_src", - # "gstreamer/sink/audiosink:gst_audio_server_sink", + "gstreamer/source/audiocapture:gst_audio_capture_src", + "gstreamer/sink/audiosink:gst_audio_server_sink", ] }