1# Copyright (C) 2023 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("//build/ohos.gni") 15import("//foundation/multimedia/av_codec/config.gni") 16 17ohos_static_library("av_codec_video_ffmpeg_codec") { 18 sanitize = av_codec_sanitize 19 include_dirs = [ 20 "$av_codec_root_dir/interfaces/inner_api/native", 21 "$av_codec_root_dir/interfaces/kits/c", 22 "$av_codec_root_dir/services/dfx/include", 23 "$av_codec_root_dir/services/engine/base/include", 24 "$av_codec_root_dir/services/engine/codec/include/video", 25 "$av_codec_root_dir/services/engine/common/include", 26 "$av_codec_root_dir/services/utils/include", 27 "$media_foundation_root_dir/interface/inner_api", 28 "$media_foundation_root_dir/src/buffer/avbuffer/include", 29 "//drivers/peripheral/display/interfaces/include", 30 "//base/startup/init/interfaces/innerkits/include/syspara", 31 "//base/hiviewdfx/hisysevent/interfaces/native/innerkits/hisysevent/include", 32 "//third_party/ffmpeg", 33 ] 34 35 defines = [] 36 defines += av_codec_defines 37 38 sources = [ 39 "$av_codec_root_dir/services/engine/codec/video/fcodec.cpp", 40 "$av_codec_root_dir/services/engine/codec/video/hcodec_loader.cpp", 41 ] 42 43 deps = [ 44 "$av_codec_root_dir/services/engine/base:av_codec_codec_base", 45 "$av_codec_root_dir/services/engine/common:av_codec_engine_common", 46 "//third_party/bounds_checking_function:libsec_static", 47 "//third_party/ffmpeg:libohosffmpeg", 48 ] 49 50 public_deps = [ 51 "$av_codec_root_dir/services/dfx:av_codec_service_dfx", 52 "$av_codec_root_dir/services/utils:av_codec_service_utils", 53 ] 54 55 external_deps = [ 56 "c_utils:utils", 57 "graphic_surface:surface", 58 "graphic_surface:sync_fence", 59 "hilog:libhilog", 60 "hisysevent:libhisysevent", 61 "hitrace:hitrace_meter", 62 "media_foundation:media_foundation", 63 ] 64 65 subsystem_name = "multimedia" 66 part_name = "av_codec" 67} 68