1# Copyright (c) 2020 Huawei Device Co., Ltd. 2# Licensed under the Apache License, Version 2.0 (the "License"); 3# you may not use this file except in compliance with the License. 4# You may obtain a copy of the License at 5# http://www.apache.org/licenses/LICENSE-2.0 6# Unless required by applicable law or agreed to in writing, software 7# distributed under the License is distributed on an "AS IS" BASIS, 8# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 9# See the License for the specific language governing permissions and 10# limitations under the License. 11 12import("//build/lite/config/component/lite_component.gni") 13 14shared_library("player_impl") { 15 sources = [ 16 "impl/buffersource/src/buffer_source.cpp", 17 "impl/player_control/decoder/decoder.cpp", 18 "impl/player_control/player/fsm/src/fsm_common.cpp", 19 "impl/player_control/player/fsm/src/hi_fsm.cpp", 20 "impl/player_control/player/fsm/src/hi_state.cpp", 21 "impl/player_control/player/fsm/src/hi_state_machine.cpp", 22 "impl/player_control/player/fsm/src/hi_state_machine_observer.cpp", 23 "impl/player_control/player/fsm/src/message_looper.cpp", 24 "impl/player_control/player/fsm/src/mmessage_pool.cpp", 25 "impl/player_control/player/liteplayer.cpp", 26 "impl/player_control/player/liteplayer_comm.cpp", 27 "impl/player_control/player/liteplayer_state_machine.cpp", 28 "impl/player_control/sink/player_audio_sink.cpp", 29 "impl/player_control/sink/player_sink_manager.cpp", 30 "impl/player_control/sink/player_sync.cpp", 31 "impl/player_control/sink/player_video_sink.cpp", 32 "impl/player_control/source/player_demux.cpp", 33 "impl/player_control/source/player_source.cpp", 34 "impl/player_impl.cpp", 35 ] 36 include_dirs = [ 37 "//third_party/bounds_checking_function/include", 38 "//foundation/multimedia/media_utils_lite/hals", 39 "//foundation/multimedia/media_utils_lite/interfaces/kits", 40 "//drivers/peripheral/display/interfaces/include", 41 "//drivers/peripheral/base", 42 "//foundation/multimedia/media_lite/interfaces/innerkits", 43 ] 44 outdir = rebase_path("$root_out_dir") 45 public_configs = [ ":player_impl_external_library_config" ] 46 ldflags = [ "-L$outdir" ] 47 ldflags += [ "-laudio_hw" ] 48 ldflags += [ "-lcodec" ] 49 ldflags += [ "-lformat_hw" ] 50 ldflags += [ "-lhdi_videodisplayer" ] 51 public_deps = [ 52 "//base/hiviewdfx/hilog_lite/frameworks/featured:hilog_shared", 53 "//foundation/graphic/surface_lite:surface_lite", 54 "//foundation/multimedia/media_utils_lite:media_common", 55 "//third_party/bounds_checking_function:libsec_shared", 56 ] 57 ldflags += [ "-lstdc++" ] 58 cflags = [ 59 "-fPIC", 60 "-Wall", 61 "-Wno-format", 62 ] 63 cflags_cc = cflags 64} 65 66config("player_impl_external_library_config") { 67 include_dirs = [ "//foundation/multimedia/frameworks/player_lite/binder" ] 68 include_dirs += 69 [ "//foundation/multimedia/media_lite/interfaces/kits/player_lite" ] 70 include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/buffersource/include" ] 71 include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/player_control/include" ] 72 include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/player_control/player" ] 73 include_dirs += [ "//foundation/multimedia/media_utils_lite/interfaces/kits" ] 74 include_dirs += [ "//drivers/peripheral/format/interfaces/include" ] 75 include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/player_control/player/fsm/src" ] 76 include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/player_control/player/fsm/include" ] 77 include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/player_control/source" ] 78 include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/player_control/sink" ] 79 include_dirs += [ "//drivers/peripheral/codec/interfaces/include" ] 80 include_dirs += [ "//foundation/multimedia/media_lite/services/player_lite/impl/player_control/decoder" ] 81 include_dirs += [ "//drivers/peripheral/audio/interfaces/include" ] 82} 83shared_library("player_server") { 84 sources = [ 85 "factory/src/player_factory.cpp", 86 "server/src/player_server.cpp", 87 "server/src/samgr_player_server.cpp", 88 ] 89 include_dirs = [ 90 "factory/include", 91 "factory/include", 92 "impl", 93 "//drivers/peripheral/audio/interfaces/include", 94 "//drivers/peripheral/codec/interfaces/include", 95 "//drivers/peripheral/format/interfaces/include", 96 "//drivers/peripheral/display/interfaces/include", 97 "//drivers/peripheral/base", 98 "//foundation/multimedia/media_foundation/interface", 99 "//foundation/multimedia/media_utils_lite/hals", 100 "//foundation/multimedia/media_utils_lite/interfaces/kits", 101 "//foundation/multimedia/media_lite/interfaces/innerkits", 102 "//foundation/multimedia/media_lite/frameworks/player_lite/binder", 103 "//base/startup/init/interfaces/innerkits/include/syspara", 104 "//foundation/systemabilitymgr/samgr_lite/interfaces/kits/registry", 105 "//foundation/systemabilitymgr/samgr_lite/interfaces/kits/samgr", 106 "//foundation/systemabilitymgr/samgr_lite/interfaces/kits/communication/broadcast", 107 ] 108 outdir = rebase_path("$root_out_dir") 109 public_configs = [ ":player_server_external_library_config" ] 110 cflags = [ 111 "-fPIC", 112 "-Wall", 113 "-Wno-format", 114 ] 115 cflags_cc = cflags 116 ldflags = [ 117 "-L$outdir", 118 "-lstdc++", 119 "-Wl,-rpath-link=$ohos_root_path/$root_out_dir", 120 "-lcodec", 121 ] 122 deps = [ 123 "//foundation/graphic/surface_lite:surface_lite", 124 "//foundation/multimedia/media_foundation:media_engine_histreamer", 125 "//foundation/systemabilitymgr/samgr_lite/samgr:samgr", 126 ] 127 public_deps = [ 128 "//base/startup/init/interfaces/innerkits:libbegetutil", 129 "//foundation/multimedia/media_lite/services/player_lite:player_impl", 130 "//foundation/multimedia/media_utils_lite:media_common", 131 ] 132} 133 134config("player_server_external_library_config") { 135 include_dirs = [ 136 "//foundation/multimedia/media_lite/services/player_lite/server/include", 137 ] 138 include_dirs += 139 [ "//foundation/multimedia/media_lite/frameworks/player_lite/binder" ] 140} 141