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# 14import("//foundation/multimedia/media_foundation/config.gni") 15 16config("histreamer_recorder_config") { 17 if (media_foundation_enable_recorder) { 18 include_dirs = [ 19 "//foundation/multimedia/media_foundation/engine/include", 20 "//foundation/multimedia/media_foundation/engine/scene/recorder", 21 ] 22 if (hst_is_standard_sys) { 23 include_dirs += [ 24 "//foundation/communication/ipc/interfaces/innerkits/ipc_core/include", 25 "//foundation/multimedia/player_framework/interfaces/inner_api/native", 26 "//foundation/multimedia/image_framework/interfaces/innerkits/include", 27 "//foundation/multimedia/player_framework/services/include", 28 "//foundation/multimedia/player_framework/services/services/engine_intf", 29 "//commonlibrary/c_utils/base/include", 30 ] 31 } 32 } 33} 34 35ohos_source_set("histreamer_recorder") { 36 subsystem_name = "multimedia" 37 part_name = "media_foundation" 38 if (media_foundation_enable_recorder) { 39 sources = [ 40 "internal/state.cpp", 41 "internal/state_machine.cpp", 42 ] 43 public_configs = [ 44 ":histreamer_recorder_config", 45 "//foundation/communication/ipc/interfaces/innerkits/ipc_core:libipc_core_private_config", 46 "//foundation/multimedia/media_foundation:histreamer_presets", 47 ] 48 deps = [ "//foundation/multimedia/media_foundation/engine/foundation:histreamer_foundation" ] 49 if (hst_is_standard_sys) { 50 sources += [ 51 "standard/hirecorder_impl.cpp", 52 "standard/recorder_utils.cpp", 53 ] 54 deps += [ 55 "//foundation/multimedia/media_foundation/engine/pipeline:histreamer_base", 56 "//foundation/multimedia/media_foundation/engine/pipeline:histreamer_engine_filters", 57 ] 58 external_deps = [ 59 "graphic_surface:surface", 60 "hilog:libhilog", 61 "hitrace:hitrace_meter", 62 ] 63 } 64 } 65} 66