1# Copyright (c) 2021-2021 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#
6#     http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13#
14import("//foundation/multimedia/media_foundation/config.gni")
15
16config("histreamer_player_config") {
17  include_dirs = [
18    "//foundation/multimedia/media_foundation/engine/include",
19    "//foundation/multimedia/media_foundation/engine/scene/player",
20  ]
21  if (hst_is_lite_sys) {
22    include_dirs += [
23      "//foundation/multimedia/media_lite/interfaces/innerkits",
24      "//foundation/multimedia/media_lite/interfaces/kits/player_lite",
25    ]
26  } else {
27    include_dirs += [
28      "//foundation/multimedia/player_framework/interfaces/inner_api/native",
29      "//foundation/multimedia/image_framework/interfaces/innerkits/include",
30      "//foundation/multimedia/player_framework/services/include",
31      "//foundation/multimedia/player_framework/services/services/engine_intf",
32      "//foundation/multimedia/audio_framework/interfaces/inner_api/native/audiocommon/include",
33      "//commonlibrary/c_utils/base/include",
34    ]
35  }
36}
37
38if (hst_is_lite_sys) {
39  source_set("histreamer_player") {
40    include_dirs = [ "//base/hiviewdfx/hitrace/interfaces/native/innerkits/include/hitrace_meter" ]
41    sources = [
42      "//foundation/multimedia/media_foundation/engine/scene/player/internal/state.cpp",
43      "//foundation/multimedia/media_foundation/engine/scene/player/internal/state_machine.cpp",
44    ]
45    public_configs = [
46      ":histreamer_player_config",
47      "//foundation/multimedia/media_foundation:histreamer_presets",
48    ]
49    public_deps = [
50      "//foundation/multimedia/media_foundation/engine/foundation:histreamer_foundation",
51      "//foundation/multimedia/media_foundation/engine/pipeline:histreamer_base",
52      "//foundation/multimedia/media_foundation/engine/pipeline:histreamer_engine_filters",
53      "//foundation/multimedia/media_foundation/engine/scene:scene_common",
54    ]
55    sources += [
56      "//foundation/multimedia/media_foundation/engine/scene/player/lite/hiplayer.cpp",
57      "//foundation/multimedia/media_foundation/engine/scene/player/lite/hiplayer_impl.cpp",
58    ]
59    public_deps += [ "//foundation/multimedia/media_utils_lite:media_common" ]
60  }
61} else {
62  ohos_source_set("histreamer_player") {
63    subsystem_name = "multimedia"
64    part_name = "media_foundation"
65    include_dirs = [ "//base/hiviewdfx/hitrace/interfaces/native/innerkits/include/hitrace_meter" ]
66    sources = [
67      "//foundation/multimedia/media_foundation/engine/scene/player/internal/state.cpp",
68      "//foundation/multimedia/media_foundation/engine/scene/player/internal/state_machine.cpp",
69    ]
70    public_configs = [
71      ":histreamer_player_config",
72      "//foundation/multimedia/media_foundation:histreamer_presets",
73    ]
74    public_deps = [
75      "//foundation/multimedia/media_foundation/engine/foundation:histreamer_foundation",
76      "//foundation/multimedia/media_foundation/engine/pipeline:histreamer_base",
77      "//foundation/multimedia/media_foundation/engine/pipeline:histreamer_engine_filters",
78      "//foundation/multimedia/media_foundation/engine/scene:scene_common",
79    ]
80    sources += [
81      "//foundation/multimedia/media_foundation/engine/scene/player/standard/hiplayer_callback_looper.cpp",
82      "//foundation/multimedia/media_foundation/engine/scene/player/standard/hiplayer_impl.cpp",
83      "//foundation/multimedia/media_foundation/engine/scene/player/standard/media_utils.cpp",
84    ]
85    external_deps = [
86      "graphic_surface:surface",
87      "hilog:libhilog",
88    ]
89  }
90}
91