• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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