• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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#
14
15# build plugin interface
16import("//foundation/multimedia/histreamer/config.gni")
17config("histreamer_pipeline_config") {
18  include_dirs = [
19    "//foundation/multimedia/histreamer/engine/pipeline",
20    "//foundation/multimedia/histreamer/engine/pipeline/filters",
21    "//foundation/multimedia/histreamer/engine/pipeline/core",
22  ]
23}
24
25source_set("histreamer_pipeline") {
26  sources = [
27    "core/compatible_check.cpp",
28    "core/error_code.cpp",
29    "core/event.cpp",
30    "core/filter_base.cpp",
31    "core/media_sync_manager.cpp",
32    "core/pipeline_core.cpp",
33    "core/port.cpp",
34    "factory/filter_factory.cpp",
35    "filters/codec/async_mode.cpp",
36    "filters/codec/audio_decoder/audio_decoder_filter.cpp",
37    "filters/codec/audio_encoder/audio_encoder_filter.cpp",
38    "filters/codec/codec_filter_base.cpp",
39    "filters/codec/codec_filter_factory.cpp",
40    "filters/codec/codec_mode.cpp",
41    "filters/codec/sync_mode.cpp",
42    "filters/common/buffer_calibration/audio_buffer_calibration.cpp",
43    "filters/common/buffer_calibration/buffer_calibration.cpp",
44    "filters/common/plugin_settings.cpp",
45    "filters/common/plugin_utils.cpp",
46    "filters/demux/data_packer.cpp",
47    "filters/demux/demuxer_filter.cpp",
48    "filters/demux/type_finder.cpp",
49    "filters/muxer/muxer_filter.cpp",
50    "filters/sink/audio_sink/audio_sink_filter.cpp",
51    "filters/sink/media_synchronous_sink.cpp",
52    "filters/sink/output_sink/output_sink_filter.cpp",
53    "filters/source/audio_capture/audio_capture_filter.cpp",
54    "filters/source/media_source/media_source_filter.cpp",
55  ]
56  if (multimedia_histreamer_enable_video) {
57    sources += [
58      "filters/codec/video_decoder/video_decoder_filter.cpp",
59      "filters/sink/video_sink/video_sink_filter.cpp",
60    ]
61    if (multimedia_histreamer_enable_recorder) {
62      sources += [
63        "filters/codec/video_encoder/video_encoder_filter.cpp",
64        "filters/source/video_capture/video_capture_filter.cpp",
65      ]
66    }
67  }
68  public_configs = [
69    ":histreamer_pipeline_config",
70    "//foundation/multimedia/histreamer:histreamer_presets",
71  ]
72  public_deps = [
73    "//foundation/multimedia/histreamer/engine/foundation:histreamer_foundation",
74    "//foundation/multimedia/histreamer/engine/plugin:histreamer_plugin_core",
75    "//foundation/multimedia/histreamer/engine/plugin:histreamer_plugin_intf",
76  ]
77}
78