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# 14import("//build/ohos.gni") 15declare_args() { 16 histreamer_root_dir = "//foundation/multimedia/histreamer" 17 18 # build histreamer plugin feature ability 19 # only for small and std (mini device does not support dynamic libraries) 20 histreamer_enable_plugin_ffmpeg_adapter = true 21 22 # hdi codec adapter, only for std device (Omx has not been implemented) 23 histreamer_enable_plugin_codec_adapter = false 24 25 # only tested on std device 26 histreamer_enable_plugin_http_source = true 27 28 # depends on lite audio hdi interface (small device) 29 histreamer_enable_plugin_hdi_adapter = false 30 31 # depends on lite media api 32 histreamer_enable_plugin_stream_source = false 33 34 # only support mini device bes2600 tech (L0) 35 histreamer_enable_plugin_lite_aac_decoder = false 36 histreamer_enable_plugin_http_lite_source = false 37 38 # no external dependence 39 histreamer_enable_plugin_file_source = true 40 histreamer_enable_plugin_file_fd_source = true 41 histreamer_enable_plugin_file_fd_sink = false 42 histreamer_enable_plugin_aac_demuxer = false 43 histreamer_enable_plugin_wav_demuxer = false 44 45 # no release (https://gitee.com/histreamer/minimp3) 46 histreamer_enable_plugin_minimp3_adapter = false 47 histreamer_enable_plugin_minimp4_demuxer = false 48 49 # depends on std media api 50 histreamer_enable_plugin_std_stream_source = false 51 52 # depends on std audio service 53 histreamer_enable_plugin_std_audio_capture = false 54 histreamer_enable_plugin_audio_server_sink = false 55 56 # depends on std surface 57 histreamer_enable_plugin_std_video_surface_sink = false 58 histreamer_enable_plugin_std_video_capture = false 59 60 histreamer_enable_plugin_avs3_audio_decoder = false 61 62 histreamer_enable_recorder = false 63 histreamer_enable_video = false 64 histreamer_enable_avs3da = false 65 66 # configuration for histreamer created thread's stack size. 67 # 0 means using system default thread stack size, other positive values will be accepted. 68 config_ohos_histreamer_stack_size = 0 69 hst_is_lite_sys = false 70} 71if (!defined(ohos_lite) || !ohos_lite) { 72 hst_is_lite_sys = false 73 histreamer_enable_plugin_audio_server_sink = true 74 histreamer_enable_recorder = true 75 histreamer_enable_plugin_file_fd_sink = true 76 histreamer_enable_plugin_std_audio_capture = true 77 histreamer_enable_plugin_std_stream_source = true 78 histreamer_enable_video = true 79 histreamer_enable_plugin_std_video_surface_sink = true 80 histreamer_enable_plugin_codec_adapter = true 81} else { 82 hst_is_lite_sys = true 83 histreamer_enable_plugin_hdi_adapter = true 84} 85