Agora Java API Reference for Android
IAgoraParameter.h
1 //
2 // Agora Engine SDK
3 //
4 // Created by minbo in 2019-10.
5 // Copyright (c) 2019 Agora.io. All rights reserved.
6 
7 /*
8  * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
9  *
10  * Use of this source code is governed by a BSD-style license
11  * that can be found in the LICENSE file in the root of the source
12  * tree. An additional intellectual property rights grant can be found
13  * in the file PATENTS. All contributing project authors may
14  * be found in the AUTHORS file in the root of the source tree.
15  */
16 
17 #pragma once // NOLINT(build/header_guard)
18 
19 // external key
24 #define KEY_RTC_UDP_PORT_RANGE "rtc.udp_port_range"
25 
29 #define KEY_RTC_UDP_PORT_LIST "rtc.udp_port_list"
30 
35 #define KEY_RTC_UDP_SEND_FD "rtc.udp_send_fd"
36 
40 #define KEY_RTC_VIDEO_ENABLED_HW_ENCODER "engine.video.enable_hw_encoder"
41 
45 #define KEY_RTC_VIDEO_ENABLED_HW_DECODER "engine.video.enable_hw_decoder"
46 
50 #define KEY_RTC_VIDEO_HW_ENCODER_PROVIDER "engine.video.hw_encoder_provider"
51 
55 #define KEY_RTC_VIDEO_OVERRIDE_SMALLVIDEO_NOT_USE_HWENC_POLICY "engine.video.override_smallvideo_not_use_hwenc_policy"
56 
60 #define KEY_RTC_VIDEO_RESEND "rtc.video_resend"
61 
65 #define KEY_RTC_AUDIO_RESEND "rtc.audio_resend"
66 
70 #define KEY_RTC_AUDIO_ENABLE_AGORA_AEC "rtc.audio.aec.enable"
71 
72 #define KEY_RTC_AUDIO_MAX_TARGET_DELAY "rtc.audio.max_target_delay"
73 
77 #define KEY_RTC_AUDIO_ENABLE_AGORA_AGC "rtc.audio.agc.enable"
78 
82 #define KEY_RTC_AUDIO_ENABLE_AGORA_ANS "rtc.audio.ans.enable"
83 
87 #define KEY_RTC_AUDIO_ENABLE_AGORA_MD "rtc.audio.md.enable"
88 
92 #define KEY_RTC_AUDIO_OPENSL_MODE "rtc.audio.opensl.mode"
93 
97 #define KEY_RTC_AUDIO_INPUT_SAMPLE_RATE "rtc.audio.input_sample_rate"
98 
102 #define KEY_RTC_VIDEO_BITRATE_ADJUST_RATIO "rtc.video.bitrate_adjust_ratio"
103 
107 #define KEY_RTC_VIDEO_MINBITRATE_RATIO "rtc.video.minbitrate_ratio"
108 
112 #define KEY_RTC_VIDEO_DEGRADATION_PREFERENCE "rtc.video.degradation_preference"
113 
118 #define KEY_RTC_VIDEO_DEGRADATION_FPS_DOWN_STEP "rtc.video.degradation_fps_down_step"
119 
122 #define KEY_RTC_VIDEO_DEGRADATION_FPS_UP_STEP "rtc.video.degradation_fps_up_step"
123 
127 #define KEY_RTC_CONNECTION_LOST_PERIOD "rtc.connection_lost_period"
128 
132 #define KEY_RTC_LOCAL_IP "rtc.local.ip"
133 
137 #define KEY_RTC_NETWORK_INTERFACE "rtc.network.interface"
138 
142 #define KEY_RTC_VIDEO_CODEC_TYPE "engine.video.codec_type"
143 
147 #define KEY_RTC_VIDEO_QUALITY_SCALE_ONLY_ON_AVERAGE_QP "engine.video.quality_scale_only_on_average_qp"
148 
152 #define KEY_RTC_VIDEO_H264_QP_THRESHOLD_LOW "engine.video.h264_qp_thresholds_low"
153 
157 #define KEY_RTC_VIDEO_H264_QP_THRESHOLD_HIGH "engine.video.h264_qp_thresholds_high"
158 
162 #define KEY_RTC_ENABLE_BUILT_IN_MEDIA_ENCRYPTION "rtc.enable_built_in_media_encryption"
163 
164 namespace agora {
165 
166 namespace util {
167 template <class T>
168 class CopyableAutoPtr;
169 
170 class IString;
171 typedef CopyableAutoPtr<IString> AString;
172 } // namespace util
173 
174 namespace base {
175 
177 public:
181  virtual void release() = 0;
182 
191  virtual int setBool(const char* key, bool value) = 0;
192 
201  virtual int setInt(const char* key, int value) = 0;
202 
211  virtual int setUInt(const char* key, unsigned int value) = 0;
212 
221  virtual int setNumber(const char* key, double value) = 0;
222 
231  virtual int setString(const char* key, const char* value) = 0;
232 
241  virtual int setObject(const char* key, const char* value) = 0;
242 
251  virtual int setArray(const char* key, const char* value) = 0;
260  virtual int getBool(const char* key, bool& value) = 0;
261 
270  virtual int getInt(const char* key, int& value) = 0;
271 
280  virtual int getUInt(const char* key, unsigned int& value) = 0;
281 
290  virtual int getNumber(const char* key, double& value) = 0;
291 
300  virtual int getString(const char* key, agora::util::AString& value) = 0;
301 
310  virtual int getObject(const char* key, agora::util::AString& value) = 0;
311 
320  virtual int getArray(const char* key, const char* args, agora::util::AString& value) = 0;
321 
328  virtual int setParameters(const char* parameters) = 0;
329 
330  virtual int convertPath(const char* filePath, agora::util::AString& value) = 0;
331 
332  virtual ~IAgoraParameter() {}
333 };
334 
335 } // namespace base
336 } // namespace agora
agora::base::IAgoraParameter
Definition: IAgoraParameter.h:176
agora::base::IAgoraParameter::getArray
virtual int getArray(const char *key, const char *args, agora::util::AString &value)=0
agora::base::IAgoraParameter::getNumber
virtual int getNumber(const char *key, double &value)=0
agora::base::IAgoraParameter::getUInt
virtual int getUInt(const char *key, unsigned int &value)=0
agora::base::IAgoraParameter::setBool
virtual int setBool(const char *key, bool value)=0
agora::base::IAgoraParameter::setArray
virtual int setArray(const char *key, const char *value)=0
agora::base::IAgoraParameter::getInt
virtual int getInt(const char *key, int &value)=0
agora::base::IAgoraParameter::getString
virtual int getString(const char *key, agora::util::AString &value)=0
agora::base::IAgoraParameter::setInt
virtual int setInt(const char *key, int value)=0
agora::base::IAgoraParameter::release
virtual void release()=0
agora::base::IAgoraParameter::setObject
virtual int setObject(const char *key, const char *value)=0
agora::base::IAgoraParameter::setUInt
virtual int setUInt(const char *key, unsigned int value)=0
agora::util::CopyableAutoPtr
Definition: AgoraBase.h:155
agora::base::IAgoraParameter::getBool
virtual int getBool(const char *key, bool &value)=0
agora::base::IAgoraParameter::setString
virtual int setString(const char *key, const char *value)=0
agora::base::IAgoraParameter::setParameters
virtual int setParameters(const char *parameters)=0
agora::base::IAgoraParameter::setNumber
virtual int setNumber(const char *key, double value)=0
agora::base::IAgoraParameter::getObject
virtual int getObject(const char *key, agora::util::AString &value)=0