1# Copyright (C) 2022-2022 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
14declare_args() {
15  player_framework_support_player = true
16  player_framework_support_recorder = true
17  player_framework_support_transcoder = true
18  player_framework_support_player_js_api9 = true
19  player_framework_support_recorder_js_api9 = true
20  player_framework_support_metadata = true
21  player_framework_support_histreamer = true
22  player_framework_support_video = true
23  player_framework_support_jsapi = true
24  player_framework_support_capi = true
25  player_framework_support_test = true
26  player_framework_support_xcollie = true
27  player_framework_support_jsstack = true
28  player_framework_support_seccomp = false
29  player_framework_support_screen_capture = true
30  player_framework_support_screen_capture_stopbycall = true
31  player_framework_support_screen_capture_controller = false
32  player_framework_feature_pc_select_window = false
33  player_framework_support_jssoundpool = true
34  player_framework_support_mediasource = true
35  player_framework_support_auto_create_file = false
36  player_framework_check_video_is_hdr_vivid = false
37  if (defined(build_seccomp) && build_seccomp) {
38    player_framework_support_seccomp = true
39  }
40  if (defined(global_parts_info) &&
41      defined(global_parts_info.multimedia_camera_framework) &&
42      defined(global_parts_info.multimedia_media_library)) {
43    player_framework_support_auto_create_file = true
44  }
45  player_framework_support_monitor = true
46  use_memmgr_plugin = false
47  if (defined(global_parts_info) &&
48      defined(global_parts_info.resourceschedule_memmgr_override)) {
49    use_memmgr_plugin = true
50  }
51  use_memmgr = false
52  if (defined(global_parts_info) &&
53      defined(global_parts_info.resourceschedule_memmgr)) {
54    use_memmgr = true
55  }
56  player_framework_support_avsession_background = false
57  if (defined(global_parts_info) &&
58      defined(global_parts_info.multimedia_av_session)) {
59    player_framework_support_avsession_background = true
60  }
61  player_framework_support_drm = false
62  if (defined(global_parts_info) &&
63      defined(global_parts_info.multimedia_drm_framework)) {
64    player_framework_support_drm = true
65  }
66  player_framework_support_vibrator = false
67  if (defined(global_parts_info) &&
68      defined(global_parts_info.sensors_miscdevice)) {
69    player_framework_support_vibrator = true
70  }
71  player_framework_support_power_manager = false
72  if (defined(global_parts_info) &&
73      defined(global_parts_info.powermgr_power_manager)) {
74    player_framework_support_power_manager = true
75  }
76  player_framework_support_json = false
77  if (defined(global_parts_info) &&
78      defined(global_parts_info.third_party_json)) {
79    player_framework_support_json = true
80  }
81}
82
83player_framework_defines = []
84
85if (player_framework_support_player) {
86  player_framework_defines += [ "SUPPORT_PLAYER" ]
87} else {
88  player_framework_defines += [ "UNSUPPORT_PLAYER" ]
89}
90
91if (player_framework_support_player_js_api9) {
92  player_framework_defines += [ "SUPPORT_PLAYER_API9" ]
93}
94
95if (player_framework_support_avsession_background) {
96  player_framework_defines += [ "SUPPORT_AVSESSION" ]
97}
98
99if (player_framework_support_recorder_js_api9) {
100  player_framework_defines += [ "SUPPORT_RECORDER_API9" ]
101}
102
103if (player_framework_support_recorder) {
104  player_framework_defines += [ "SUPPORT_RECORDER" ]
105} else {
106  player_framework_defines += [ "UNSUPPORT_RECORDER" ]
107}
108
109if (player_framework_support_transcoder) {
110  player_framework_defines += [ "SUPPORT_TRANSCODER" ]
111} else {
112  player_framework_defines += [ "UNSUPPORT_TRANSCODER" ]
113}
114
115if (player_framework_support_metadata) {
116  player_framework_defines += [ "SUPPORT_METADATA" ]
117} else {
118  player_framework_defines += [ "UNSUPPORT_METADATA" ]
119}
120
121if (player_framework_support_video) {
122  player_framework_defines += [ "SUPPORT_VIDEO" ]
123} else {
124  player_framework_defines += [ "SUPPORT_AUDIO_ONLY" ]
125}
126
127if (player_framework_support_xcollie) {
128  player_framework_defines += [ "HICOLLIE_ENABLE" ]
129}
130
131if (player_framework_support_jsstack) {
132  player_framework_defines += [ "SUPPORT_JSSTACK" ]
133}
134
135if (use_memmgr_plugin || use_memmgr) {
136  player_framework_defines += [ "PLAYER_USE_MEMORY_MANAGE" ]
137}
138
139if (player_framework_support_monitor) {
140  player_framework_defines += [ "USE_MONITOR" ]
141}
142
143if (player_framework_support_screen_capture) {
144  player_framework_defines += [ "SUPPORT_SCREEN_CAPTURE" ]
145} else {
146  player_framework_defines += [ "UNSUPPORT_SCREEN_CAPTURE" ]
147}
148
149if (player_framework_support_screen_capture_controller) {
150  player_framework_defines += [ "SUPPORT_SCREEN_CAPTURE_WINDOW_NOTIFICATION" ]
151}
152
153if (player_framework_support_jssoundpool) {
154  player_framework_defines += [ "SUPPORT_SOUND_POOL" ]
155} else {
156  player_framework_defines += [ "UNSUPPORT_SOUND_POOL" ]
157}
158
159if (player_framework_support_drm) {
160  player_framework_defines += [ "SUPPORT_AVPLAYER_DRM" ]
161} else {
162  player_framework_defines += [ "UNSUPPORT_AVPLAYER_DRM" ]
163}
164
165if (player_framework_support_vibrator) {
166  player_framework_defines += [ "SUPPORT_VIBRATOR" ]
167} else {
168  player_framework_defines += [ "UNSUPPORT_VIBRATOR" ]
169}
170
171if (player_framework_support_power_manager) {
172  player_framework_defines += [ "SUPPORT_POWER_MANAGER" ]
173}
174
175if (player_framework_support_mediasource) {
176  player_framework_defines += [ "SUPPORT_MEDIA_SOURCE" ]
177}
178
179if (player_framework_support_auto_create_file) {
180  player_framework_defines += [ "SUPPORT_RECORDER_CREATE_FILE" ]
181}
182
183if (player_framework_support_json) {
184  player_framework_defines += [ "SUPPORT_JSON" ]
185}
186
187# Config path
188MEDIA_PLAYER_ROOT_DIR = "//foundation/multimedia/player_framework"
189MEDIA_PLAYER_AVCODEC = "//foundation/multimedia/av_codec"
190MEDIA_PLAYER_HISTREAMER = "//foundation/multimedia/media_foundation"
191
192MEDIA_PLAYER_C_UTILS = "//commonlibrary/c_utils"
193MEDIA_PLAYER_GRAPHIC = "//foundation/graphic/graphic_2d"
194MEDIA_PLAYER_GRAPHIC_SURFACE = "//foundation/graphic/graphic_surface"
195MEDIA_DRM_ROOT_DIR = "//foundation/multimedia/drm_framework"
196
197# Fuzz test output path.
198MODULE_OUTPUT_PATH = "player_framework/player_framework"
199