18c77b71bSopenharmony_ci# Copyright (c) 2020 Huawei Device Co., Ltd. 28c77b71bSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 38c77b71bSopenharmony_ci# you may not use this file except in compliance with the License. 48c77b71bSopenharmony_ci# You may obtain a copy of the License at 58c77b71bSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 68c77b71bSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 78c77b71bSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 88c77b71bSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 98c77b71bSopenharmony_ci# See the License for the specific language governing permissions and 108c77b71bSopenharmony_ci# limitations under the License. 118c77b71bSopenharmony_ci 128c77b71bSopenharmony_ciimport("//build/lite/config/component/lite_component.gni") 138c77b71bSopenharmony_ci 148c77b71bSopenharmony_cishared_library("player_impl") { 158c77b71bSopenharmony_ci sources = [ 168c77b71bSopenharmony_ci "impl/buffersource/src/buffer_source.cpp", 178c77b71bSopenharmony_ci "impl/player_control/decoder/decoder.cpp", 188c77b71bSopenharmony_ci "impl/player_control/player/fsm/src/fsm_common.cpp", 198c77b71bSopenharmony_ci "impl/player_control/player/fsm/src/hi_fsm.cpp", 208c77b71bSopenharmony_ci "impl/player_control/player/fsm/src/hi_state.cpp", 218c77b71bSopenharmony_ci "impl/player_control/player/fsm/src/hi_state_machine.cpp", 228c77b71bSopenharmony_ci "impl/player_control/player/fsm/src/hi_state_machine_observer.cpp", 238c77b71bSopenharmony_ci "impl/player_control/player/fsm/src/message_looper.cpp", 248c77b71bSopenharmony_ci "impl/player_control/player/fsm/src/mmessage_pool.cpp", 258c77b71bSopenharmony_ci "impl/player_control/player/liteplayer.cpp", 268c77b71bSopenharmony_ci "impl/player_control/player/liteplayer_comm.cpp", 278c77b71bSopenharmony_ci "impl/player_control/player/liteplayer_state_machine.cpp", 288c77b71bSopenharmony_ci "impl/player_control/sink/player_audio_sink.cpp", 298c77b71bSopenharmony_ci "impl/player_control/sink/player_sink_manager.cpp", 308c77b71bSopenharmony_ci "impl/player_control/sink/player_sync.cpp", 318c77b71bSopenharmony_ci "impl/player_control/sink/player_video_sink.cpp", 328c77b71bSopenharmony_ci "impl/player_control/source/player_demux.cpp", 338c77b71bSopenharmony_ci "impl/player_control/source/player_source.cpp", 348c77b71bSopenharmony_ci "impl/player_impl.cpp", 358c77b71bSopenharmony_ci ] 368c77b71bSopenharmony_ci include_dirs = [ 378c77b71bSopenharmony_ci "//third_party/bounds_checking_function/include", 388c77b71bSopenharmony_ci "//foundation/multimedia/media_utils_lite/hals", 398c77b71bSopenharmony_ci "//foundation/multimedia/media_utils_lite/interfaces/kits", 408c77b71bSopenharmony_ci "//drivers/peripheral/display/interfaces/include", 418c77b71bSopenharmony_ci "//drivers/peripheral/base", 428c77b71bSopenharmony_ci "//foundation/multimedia/media_lite/interfaces/innerkits", 438c77b71bSopenharmony_ci ] 448c77b71bSopenharmony_ci outdir = rebase_path("$root_out_dir") 458c77b71bSopenharmony_ci public_configs = [ ":player_impl_external_library_config" ] 468c77b71bSopenharmony_ci ldflags = [ "-L$outdir" ] 478c77b71bSopenharmony_ci ldflags += [ "-laudio_hw" ] 488c77b71bSopenharmony_ci ldflags += [ "-lcodec" ] 498c77b71bSopenharmony_ci ldflags += [ "-lformat_hw" ] 508c77b71bSopenharmony_ci ldflags += [ "-lhdi_videodisplayer" ] 518c77b71bSopenharmony_ci public_deps = [ 528c77b71bSopenharmony_ci "//base/hiviewdfx/hilog_lite/frameworks/featured:hilog_shared", 538c77b71bSopenharmony_ci "//foundation/graphic/surface_lite:surface_lite", 548c77b71bSopenharmony_ci "//foundation/multimedia/media_utils_lite:media_common", 558c77b71bSopenharmony_ci "//third_party/bounds_checking_function:libsec_shared", 568c77b71bSopenharmony_ci ] 578c77b71bSopenharmony_ci ldflags += [ "-lstdc++" ] 588c77b71bSopenharmony_ci cflags = [ 598c77b71bSopenharmony_ci "-fPIC", 608c77b71bSopenharmony_ci "-Wall", 618c77b71bSopenharmony_ci "-Wno-format", 628c77b71bSopenharmony_ci ] 638c77b71bSopenharmony_ci cflags_cc = cflags 648c77b71bSopenharmony_ci} 658c77b71bSopenharmony_ci 668c77b71bSopenharmony_ciconfig("player_impl_external_library_config") { 678c77b71bSopenharmony_ci include_dirs = [ "//foundation/multimedia/frameworks/player_lite/binder" ] 688c77b71bSopenharmony_ci include_dirs += 698c77b71bSopenharmony_ci [ "//foundation/multimedia/media_lite/interfaces/kits/player_lite" ] 708c77b71bSopenharmony_ci include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/buffersource/include" ] 718c77b71bSopenharmony_ci include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/player_control/include" ] 728c77b71bSopenharmony_ci include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/player_control/player" ] 738c77b71bSopenharmony_ci include_dirs += [ "//foundation/multimedia/media_utils_lite/interfaces/kits" ] 748c77b71bSopenharmony_ci include_dirs += [ "//drivers/peripheral/format/interfaces/include" ] 758c77b71bSopenharmony_ci include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/player_control/player/fsm/src" ] 768c77b71bSopenharmony_ci include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/player_control/player/fsm/include" ] 778c77b71bSopenharmony_ci include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/player_control/source" ] 788c77b71bSopenharmony_ci include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/player_control/sink" ] 798c77b71bSopenharmony_ci include_dirs += [ "//drivers/peripheral/codec/interfaces/include" ] 808c77b71bSopenharmony_ci include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/player_control/decoder" ] 818c77b71bSopenharmony_ci include_dirs += [ "//drivers/peripheral/audio/interfaces/include" ] 828c77b71bSopenharmony_ci} 838c77b71bSopenharmony_cishared_library("player_server") { 848c77b71bSopenharmony_ci sources = [ 858c77b71bSopenharmony_ci "factory/src/player_factory.cpp", 868c77b71bSopenharmony_ci "server/src/player_server.cpp", 878c77b71bSopenharmony_ci "server/src/samgr_player_server.cpp", 888c77b71bSopenharmony_ci ] 898c77b71bSopenharmony_ci include_dirs = [ 908c77b71bSopenharmony_ci "factory/include", 918c77b71bSopenharmony_ci "factory/include", 928c77b71bSopenharmony_ci "impl", 938c77b71bSopenharmony_ci "//drivers/peripheral/audio/interfaces/include", 948c77b71bSopenharmony_ci "//drivers/peripheral/codec/interfaces/include", 958c77b71bSopenharmony_ci "//drivers/peripheral/format/interfaces/include", 968c77b71bSopenharmony_ci "//drivers/peripheral/display/interfaces/include", 978c77b71bSopenharmony_ci "//drivers/peripheral/base", 988c77b71bSopenharmony_ci "//foundation/multimedia/media_foundation/interface", 998c77b71bSopenharmony_ci "//foundation/multimedia/media_utils_lite/hals", 1008c77b71bSopenharmony_ci "//foundation/multimedia/media_utils_lite/interfaces/kits", 1018c77b71bSopenharmony_ci "//foundation/multimedia/media_lite/interfaces/innerkits", 1028c77b71bSopenharmony_ci "//foundation/multimedia/media_lite/frameworks/player_lite/binder", 1038c77b71bSopenharmony_ci "//base/startup/init/interfaces/innerkits/include/syspara", 1048c77b71bSopenharmony_ci "//foundation/systemabilitymgr/samgr_lite/interfaces/kits/registry", 1058c77b71bSopenharmony_ci "//foundation/systemabilitymgr/samgr_lite/interfaces/kits/samgr", 1068c77b71bSopenharmony_ci "//foundation/systemabilitymgr/samgr_lite/interfaces/kits/communication/broadcast", 1078c77b71bSopenharmony_ci ] 1088c77b71bSopenharmony_ci outdir = rebase_path("$root_out_dir") 1098c77b71bSopenharmony_ci public_configs = [ ":player_server_external_library_config" ] 1108c77b71bSopenharmony_ci cflags = [ 1118c77b71bSopenharmony_ci "-fPIC", 1128c77b71bSopenharmony_ci "-Wall", 1138c77b71bSopenharmony_ci "-Wno-format", 1148c77b71bSopenharmony_ci ] 1158c77b71bSopenharmony_ci cflags_cc = cflags 1168c77b71bSopenharmony_ci ldflags = [ 1178c77b71bSopenharmony_ci "-L$outdir", 1188c77b71bSopenharmony_ci "-lstdc++", 1198c77b71bSopenharmony_ci "-Wl,-rpath-link=$ohos_root_path/$root_out_dir", 1208c77b71bSopenharmony_ci "-lcodec", 1218c77b71bSopenharmony_ci ] 1228c77b71bSopenharmony_ci deps = [ 1238c77b71bSopenharmony_ci "//foundation/graphic/surface_lite:surface_lite", 1248c77b71bSopenharmony_ci "//foundation/multimedia/media_foundation:media_engine_histreamer", 1258c77b71bSopenharmony_ci "//foundation/systemabilitymgr/samgr_lite/samgr:samgr", 1268c77b71bSopenharmony_ci ] 1278c77b71bSopenharmony_ci public_deps = [ 1288c77b71bSopenharmony_ci "//base/startup/init/interfaces/innerkits:libbegetutil", 1298c77b71bSopenharmony_ci "//foundation/multimedia/media_lite/services/player_lite:player_impl", 1308c77b71bSopenharmony_ci "//foundation/multimedia/media_utils_lite:media_common", 1318c77b71bSopenharmony_ci ] 1328c77b71bSopenharmony_ci} 1338c77b71bSopenharmony_ci 1348c77b71bSopenharmony_ciconfig("player_server_external_library_config") { 1358c77b71bSopenharmony_ci include_dirs = [ 1368c77b71bSopenharmony_ci "//foundation/multimedia/media_lite/services/player_lite/server/include", 1378c77b71bSopenharmony_ci ] 1388c77b71bSopenharmony_ci include_dirs += 1398c77b71bSopenharmony_ci [ "//foundation/multimedia/media_lite/frameworks/player_lite/binder" ] 1408c77b71bSopenharmony_ci} 141