减小 App 体积
本文介绍如何减少集成声网 RTC Native v4.x SDK 的 App 体积。
使用音频 SDK
视频 SDK 支持音频和视频功能,包体积大。如果你只需使用音频功能,建议你集成音频 SDK,详见音频 SDK 下载。
目前,4.x SDK 在 Windows 和 macOS 平台仅提供视频 SDK 下载。
删除不需要的插件
SDK 提供了可选的插件动态库,插件的命名以 extension
为后缀,插件功能和大小等信息详见插件列表。你可以参考如下方式不集成这些插件,以减小 App 体积。
手动集成时删除插件
通过官网 SDK 下载链接集成时,你可以将不需要使用的插件文件直接删除。
CocoaPods 集成时删除插件
通过 CocoaPods 集成 iOS/macOS SDK 时,你可以在 Podfile 中使用 subspecs
字段指定集成你需要的动态库,以排除你不需要使用的插件。动态库与 subspecs
字段的对应关系详见 subspecs 字段。
示例代码
- 使用所有插件
- 不使用任何插件
- 使用部分插件
示例 1:集成 4.0.1 版 iOS 视频 SDK,且使用所有插件时,Podfile 如下:
# platform :ios, '9.0'
target 'Your App' do
pod 'AgoraRtcEngine_iOS', '4.0.1'
end
示例 2:集成 4.0.1 版 iOS 视频 SDK,且不使用所有插件时,Podfile 如下:
# platform :ios, '9.0'
target 'Your App' do
pod 'AgoraRtcEngine_iOS', '4.0.1', :subspecs => ['RtcBasic']
end
示例 3:集成 4.0.1 版 iOS 视频 SDK 且只需要使用插件列表中的 AI 降噪插件和美声插件时,Podfile 如下:
# platform :ios, '9.0'
target 'Your App' do
pod 'AgoraRtcEngine_iOS', '4.0.1', :subspecs => ['RtcBasic', 'AINS', 'AudioBeauty']
end
填写上述 pod 命令时,请确保你指定版本的 SDK 具有你指定的插件,且插件的 subspecs
字段正确,否则 pod install
时会报错。例如,填写 pod 'AgoraRtcEngine_iOS', '4.0.0', :subspecs => ['RtcBasic', 'AgoraRtcAINS']
时,pod install
时会报错。
Maven Central 集成时删除插件
通过 Maven Central 集成 Android SDK 时,你可以修改 /Gradle Scripts/build.gradle(Module: <projectname>.app)
文件中的 dependencies
,以指定集成你需要的动态库,排除你不需要使用的插件。Android SDK 中各文件与 dependencies
中 implementation
字段的对应关系详见 implementation 字段。
示例代码
- 使用所有插件
- 不使用任何插件
- 使用部分插件
示例一:集成 4.0.1 版 Android 视频 SDK,且使用所有插件时,dependencies
如下:
dependencies {
implementation 'io.agora.rtc:full-sdk:4.0.1'
implementation 'io.agora.rtc:full-screen-sharing:4.0.1'
...
}
示例二:集成 4.0.1 版 Android 视频 SDK,且不使用所有插件时,dependencies
如下:
dependencies {
implementation 'io.agora.rtc:full-rtc-basic:4.0.1'
...
}
示例三:集成 4.0.1 版 Android 视频 SDK 且只需要使用插件列表中的 AI 降噪插件和美声插件时,dependencies
如下:
dependencies {
def agora_sdk_version = "4.0.1"
// 下述代码中包含 $,因此你必须使用 "",不能使用 ''
implementation "io.agora.rtc:full-rtc-basic:${agora_sdk_version}"
implementation "io.agora.rtc:full-ains:${agora_sdk_version}"
implementation "io.agora.rtc:audio-beauty:${agora_sdk_version}"
...
}
动态加载 .so 文件
该方式仅适用于手动集成 Android SDK,不适用于通过 Maven Central 集成 SDK 的情况。
一般情况下,你需要在编译 App 时打包所需的 .so
文件,且 SDK 从 App 的 nativeLibraryPath
中加载 .so
文件。
SDK 在 RtcEngineConfig
类中提供 mNativeLibPath
属性,支持在 App 运行时从指定的 App 私有目录动态加载所需的 .so
文件,从而减小 App 的安装包体积。你可以参考如下步骤实现该功能:
- 在 资源获取下载最新版本的 SDK,并解压。
- 将
agora-rtc-sdk.jar
集成到你的项目中。 - 将所有架构的
.so
文件上传到你的服务器,并确保 App 可以通过网络下载目标架构的.so
文件。 - 当 App 运行时,检查是否存在目标架构的
.so
文件。如果没有,通过网络下载相应架构的.so
文件,并保存至 App 的私有目录。 - 在调用
create
创建并初始化RtcEngine
实例时,在config
参数中设置mNativeLibPath
, 即保存.so
文件的 App 私有目录。 - 调用
create
成功后,SDK 会根据指定路径自动加载.so
文件。
参考信息
本节提供减少 App 体积的参考信息。
插件列表
本节提供 RTC Native v4.x 各插件简介和集成后的参考体积。
4.x SDK 支持新版 AI 降噪功能,新版 AI 降噪具有更好的人声保真度、更干净的噪声抑制,并新增了去混响(Dereverberation)能力。
各平台插件名及集成后 App 增加的体积见下表:
平台 | 架构 | 库名 | 集成后 App 增加的体积(KB) |
---|---|---|---|
Android | arm64-v8a | libagora_ai_noise_suppression_extension.so | 2448 |
Android | armeabi-v7a | libagora_ai_noise_suppression_extension.so | 2315 |
Android | x86_64 | libagora_ai_noise_suppression_extension.so | 58 |
Android | x86 | libagora_ai_noise_suppression_extension.so | 57 |
iOS | arm64 | AgoraAiNoiseSuppressionExtension.xcframework | 2477 |
iOS | armv7 | AgoraAiNoiseSuppressionExtension.xcframework | 10 |
macOS | arm64 | AgoraAiNoiseSuppressionExtension.xcframework | 2976 |
macOS | x86_64 | AgoraAiNoiseSuppressionExtension.xcframework | 2992 |
Windows | x86 | libagora_ai_noise_suppression_extension.dll | 2954 |
Windows | x86_64 | libagora_ai_noise_suppression_extension.dll | 3091 |
美声插件提供一系列预设的人声效果,也支持通过音调、声音均衡和混响等设置自定义人声效果,广泛应用于语音连麦、PK 直播、K 歌房、音乐电台等场景中。你可以在集成美声插件后,调用如下方法开启你想要的美声效果:
setVoiceBeautifierPreset
: 语聊美声、歌唱美声、音色变换。setAudioEffectPreset
: 变声音效、曲风音效、空间塑造、电音音效。setVoiceConversionPreset
: 基础变声。setLocalVoicePitch
,setLocalVoiceEqualization
,setLocalVoiceReverb
: 自行调整音调、均衡和混响效果,获取想要的人声效果。
各平台插件名及集成后 App 增加的体积见下表:
平台 | 架构 | 库名 | 集成后 App 增加的体积(KB) |
---|---|---|---|
Android | arm64-v8a | libagora_audio_beauty_extension.so | 948 |
Android | armeabi-v7a | libagora_audio_beauty_extension.so | 764 |
Android | x86 | libagora_audio_beauty_extension.so | 721 |
Android | x86_64 | libagora_audio_beauty_extension.so | 721 |
iOS | arm64 | AgoraAudioBeautyExtension.xcframework | 616 |
iOS | armv7 | AgoraAudioBeautyExtension.xcframework | 618 |
macOS | arm64 | AgoraAudioBeautyExtension.xcframework | 1296 |
macOS | x86_64 | AgoraAudioBeautyExtension.xcframework | 1328 |
Windows | x86 | libagora_audio_beauty_extension.dll | 1498 |
Windows | x86_64 | libagora_audio_beauty_extension.dll | 1583 |
视频增强插件提供基础美颜、视频降噪、暗光增强、色彩增强等能力。你可以在集成视频增强插件后,调用如下方法开启你想要的视频增强功能:
setBeautyEffectOptions
: 设置基础美颜功能。setVideoDenoiserOptions
: 设置视频降噪功能。setLowlightEnhanceOptions
: 设置暗光增强功能。setColorEnhanceOptions
: 设置色彩增强功能。
各平台插件名及集成后 App 增加的体积见下表:
平台 | 架构 | 库名 | 集成后 App 增加的体积(KB) |
---|---|---|---|
Android | arm64-v8a | libagora_clear_vision_extension.so | 776 |
Android | armeabi-v7a | libagora_clear_vision_extension.so | 695 |
Android | x86 | libagora_clear_vision_extension.so | 798 |
Android | x86_64 | libagora_clear_vision_extension.so | 817 |
iOS | arm64 | AgoraClearVisionExtension.xcframework | 741 |
iOS | armv7 | AgoraClearVisionExtension.xcframework | 747 |
macOS | arm64 | AgoraClearVisionExtension.xcframework | 976 |
macOS | x86_64 | AgoraClearVisionExtension.xcframework | 1008 |
Windows | x86 | libagora_clear_vision_extension.dll | 1065 |
Windows | x86_64 | libagora_clear_vision_extension.dll | 1174 |
视频截图上传插件提供对本地用户发送的视频进行截图、上传的能力,以满足对视频内容监管的需求。集成视频截图上传插件后,你可以调用 enableContentInspect
开启视频截图上传。
各平台插件名及集成后 App 增加的体积见下表:
平台 | 架构 | 库名 | 集成后 App 增加的体积(KB) |
---|---|---|---|
Android | arm64-v8a | libagora_content_inspect_extensio.so | 1071 |
Android | armeabi-v7a | libagora_content_inspect_extensio.so | 943 |
Android | x86 | libagora_content_inspect_extensio.so | 57 |
Android | x86_64 | libagora_content_inspect_extensio.so | 56 |
iOS | arm64 | AgoraContentInspectExtension.xcframework | 1004 |
iOS | armv7 | AgoraContentInspectExtension.xcframework | 937 |
macOS | arm64 | AgoraContentInspectExtension.xcframework | 1328 |
macOS | x86_64 | AgoraContentInspectExtension.xcframework | 1312 |
Windows | x86 | libagora_content_inspect_extension.dll | 1367 |
Windows | x86_64 | libagora_content_inspect_extension.dll | 1520 |
自 v4.1.0 起,SDK 默认静态编译 PVC 库,不再提供插件的方式。如果你已集成 PVC 插件,需要在升级后从项目依赖中删除 PVC 插件并重新编译项目。
PVC(Perceptual Video Coding)视频感知编码,是一种在保障同等画质的前提下降低带宽消耗的视频编码方式。例如,在带宽受限场景下提升视频流畅性,在移动网络场景下降低流量消耗。如需使用该功能,请联系技术支持。
各平台插件名及集成后 App 增加的体积见下表:
平台 | 架构 | 库名 | 集成后 App 增加的体积(KB) |
---|---|---|---|
Android | arm64-v8a | libagora_pvc_extension.so | 170 |
Android | armeabi-v7a | libagora_pvc_extension.so | 120 |
iOS | arm64 | AgoraPvcExtension.xcframework | 60 |
iOS | armv7 | AgoraPvcExtension.xcframework | 60 |
macOS | arm64 | AgoraPvcExtension.xcframework | 643 |
macOS | x86_64 | AgoraPvcExtension.xcframework | 530 |
Windows | x86 | libagora_pvc_extension.dll | 814 |
Windows | x86_64 | libagora_pvc_extension.dll | 974 |
空间音效插件可以塑造远端用户声音的方位感和模拟声音在真实世界中的传播过程,实现本地用户听远端用户时的空间音效。
各平台插件名及集成后 App 增加的体积见下表:
平台 | 架构 | 库名 | 集成后 App 增加的体积(KB) |
---|---|---|---|
Android | arm64-v8a | libagora_spatial_audio_extension.so | 3258 |
Android | armeabi-v7a | libagora_spatial_audio_extension.so | 3080 |
Android | x86 | libagora_spatial_audio_extension.so | 3029 |
Android | x86_64 | libagora_spatial_audio_extension.so | 3024 |
iOS | arm64 | AgoraSpatialAudioExtension.xcframework | 2952 |
iOS | armv7 | AgoraSpatialAudioExtension.xcframework | 2955 |
macOS | arm64 | AgoraSpatialAudioExtension.xcframework | 4944 |
macOS | x86_64 | AgoraSpatialAudioExtension.xcframework | 4960 |
Windows | x86 | libagora_spatial_audio_extension.dll | 4153 |
Windows | x86_64 | libagora_spatial_audio_extension.dll | 4209 |
集成虚拟背景插件后,你可以调用 enableVirtualBackground
开启虚拟背景,使用自定义的背景图或绿幕替代本地用户原来的背景图,或者将背景虚化处理。
各平台插件名及集成后 App 增加的体积见下表:
平台 | 架构 | 库名 | 集成后 App 增加的体积(KB) |
---|---|---|---|
Android | arm64-v8a | libagora_segmentation_extension.so | 2756 |
Android | armeabi-v7a | libagora_segmentation_extension.so | 2462 |
iOS | arm64 | AgoraVideoSegmentationExtension.xcframework | 2808 |
iOS | armv7 | AgoraVideoSegmentationExtension.xcframework | 2716 |
macOS | arm64 | AgoraVideoSegmentationExtension.xcframework | 3840 |
macOS | x86_64 | AgoraVideoSegmentationExtension.xcframework | 4528 |
Windows | x86 | libagora_segmentation_extension.dll | 3242 |
Windows | x86_64 | libagora_segmentation_extension.dll | 3570 |
自 v4.1.0 起,SDK 提供版权音乐插件(DRM, Data Rights Management),实现实时互动场景中播放版权音乐相关功能,例如检索音乐资源、获取音乐榜单及榜单详情、预加载及播放音乐资源、下载歌词及海报等。详见 v4.1.0 发版说明。
在 Android 平台使用版权音乐插件必须同时集成 libagora_drm_loader_extension.so
和 libagora_udrm3_extension.so
。
各平台插件名及集成后 App 增加的体积见下表:
平台 | 架构 | 库名 | 集成后 App 增加的体积(KB) |
---|---|---|---|
Android | arm64-v8a | libagora_drm_loader_extension libagora_udrm3_extension.so | 1413 |
Android | armeabi-v7a | libagora_drm_loader_extension libagora_udrm3_extension.so | 1014 |
Android | x86_64 | libagora_drm_loader_extension libagora_udrm3_extension.so | 1444 |
Android | x86 | libagora_drm_loader_extension libagora_udrm3_extension.so | 1403 |
iOS | arm64 & armv7 | AgoraDrmLoaderExtension.xcframework | 1772 |
Agora 自 v4.1.1 起提供人脸识别插件,通过人脸或者虚拟背景分割算法识别人脸或人像,在编码过程中对 ROI(Region of Interest)区域使用更高的质量编码,达到人脸或人像更清晰的效果。如需使用该功能,请联系技术支持。
各平台插件名及集成后 App 增加的体积见下表:
平台 | 架构 | 库名 | 集成后 App 增加的体积 (KB) |
---|---|---|---|
Android | arm64-v8a | libagora_face_detection_extension.so | 488 |
Android | armeabi-v7a | libagora_face_detection_extension.so | 329 |
Android | x86_64 | libagora_face_detection_extension.so | 138 |
Android | x86 | libagora_face_detection_extension.so | 135 |
iOS | armv7 | AgoraFaceDetectionExtension.xcframework | 16 |
iOS | arm64 | AgoraFaceDetectionExtension.xcframework | 407 |
macOS | x86_64 | AgoraFaceDetectionExtension.xcframework | 832 |
macOS | arm64 | AgoraFaceDetectionExtension.xcframework | 848 |
Windows | x86_64 | libagora_face_detection_extension.dll | 1038 |
Windows | x86 | libagora_face_detection_extension.dll | 847 |
自 v4.1.1 起,SDK 默认静态编译超分辨率库,不再提供插件的方式,且 SDK 删除了 enableRemoteSuperResolution
,超分辨率不再需要调用 API 开启。如果你已集成超分辨率插件,需要在升级后从项目依赖中删除超分辨率插件并重新编译项目。
集成超分辨率插件后,你可以调用 enableRemoteSuperResolution
开启超分辨率,以提升远端视频的画面分辨率。
各平台插件名及集成后 App 增加的体积见下表:
平台 | 架构 | 库名 | 集成后 App 增加的体积(KB) |
---|---|---|---|
Android | arm64-v8a | libagora_super_resolution_extension.so | 214 |
Android | armeabi-v7a | libagora_super_resolution_extension.so | 161 |
iOS | arm64 | AgoraSuperResolutionExtension.xcframework | 161 |
iOS | armv7 | AgoraSuperResolutionExtension.xcframework | 165 |
屏幕共享插件提供屏幕共享功能,支持将自己的屏幕内容分享给观众或其他用户观看,以提高沟通效率。用法详见屏幕共享。
在 Android 平台使用屏幕插件必须同时集成 libagora_screen_capture_extension.so
和 AgoraScreenShareExtension.aar
。
库名以及集成后 App 增加的体积见下表:
平台 | 架构 | 库名 | 集成后 App 增加的体积(KB) |
---|---|---|---|
Android | arm64 | libagora_screen_capture_extension.so | 675 |
Android | armv7 | libagora_screen_capture_extension.so | 675 |
Android | arm64 & armv7 | AgoraScreenShareExtension.aar | 69 |
iOS | arm64 | AgoraReplayKitExtension.xcframework | 750 |
iOS | armv7 | AgoraReplayKitExtension.xcframework | 980 |
macOS | x86_64 | AgoraScreenCaptureExtension.xcframework | 960 |
macOS | arm64 | AgoraScreenCaptureExtension.xcframework | 720 |
Windows | x86 | libagora_screen_capture_extension.dll | 420 |
Windows | x86_64 | libagora_screen_capture_extension.dll | 482 |
自 v4.1.0 起,SDK 提供视频质量评估(VQA, Video Quality Assessment)插件,该插件可以模拟真人主观感受对视频质量打分,是一种高效的视频画质评估工具。如需使用该功能,请联系技术支持。
各平台插件名及集成后 App 增加的体积见下表:
平台 | 架构 | 库名 | 集成后 App 增加的体积(KB) |
---|---|---|---|
Android | arm64-v8a | libagora_video_quality_analyzer_extension.so | 570 |
Android | armeabi-v7a | libagora_video_quality_analyzer_extension.so | 462 |
Android | x86_64 | libagora_video_quality_analyzer_extension.so | 59 |
Android | x86 | libagora_video_quality_analyzer_extension.so | 58 |
iOS | arm64 | AgoraVideoQualityAnalyzerExtension.xcframework | 547 |
iOS | armv7 | AgoraVideoQualityAnalyzerExtension.xcframework | 471 |
macOS | arm64 | AgoraVideoQualityAnalyzerExtension.xcframework | 868 |
macOS | x86_64 | AgoraVideoQualityAnalyzerExtension.xcframework | 1277 |
Windows | x86 | libagora_video_quality_analyzer_extension.dll | 869 |
Windows | x86_64 | libagora_video_quality_analyzer_extension.dll | 1037 |
声网自 v4.1.0 起提供 AI 回声消除插件,该插件可以在较恶劣的回信比 (echo-to-signal) 条件下保存完整、清晰、流畅的近端人声,显著提高系统的回声消除和双讲性能,带给用户更舒适的通话和直播体验,广泛应用于适用于会议、语聊、K 歌等场景。如需使用该功能,请联系技术支持。
各平台插件名及集成后 App 增加的体积见下表:
平台 | 架构 | 库名 | 集成后 App 增加的体积(KB) |
---|---|---|---|
Android | arm64-v8a | libagora_ai_echo_cancellation_extension.so | 3403 |
Android | armeabi-v7a | libagora_ai_echo_cancellation_extension.so | 3238 |
Android | x86_64 | libagora_ai_echo_cancellation_extension.so | 58 |
Android | x86 | libagora_ai_echo_cancellation_extension.so | 56 |
iOS | arm64 | AgoraAiEchoCancellationExtension.xcframework | 3446 |
iOS | armv7 | AgoraAiEchoCancellationExtension.xcframework | 10 |
macOS | arm64 | AgoraAiEchoCancellationExtension.xcframework | 3872 |
macOS | x86_64 | AgoraAiEchoCancellationExtension.xcframework | 3840 |
Windows | x86 | libagora_ai_echo_cancellation_extension.dll | 3784 |
Windows | x86_64 | libagora_ai_echo_cancellation_extension.dll | 3956 |
声网自 v4.2.0 提供视频编码插件,相比 SDK 原生编码方案,该插件提供更多编码选择,可以实现更快速、更高压缩率的视频编码。如需使用该功能,请联系技术支持。
使用视频编码插件必须根据目标平台同时集成下表中对应列出的两个库。
平台 | 架构 | 库名 | 集成后 App 增加的体积(KB) |
---|---|---|---|
Android | arm64-v8a | libagora_video_encoder_extension.so video_enc.so | 1466 |
Android | armeabi-v7a | libagora_video_encoder_extension.so video_enc.so | 1363 |
Android | x86_64 | libagora_video_encoder_extension.so video_enc.so | 1675 |
Android | x86 | libagora_video_encoder_extension.so video_enc.so | 1656 |
iOS | arm64 | AgoraVideoEncoderExtension.xcframework video_enc.xcframework | 1323 |
iOS | armv7 | AgoraVideoEncoderExtension.xcframework video_enc.xcframework | 1333 |
macOS | arm64 | AgoraVideoEncoderExtension.xcframework video_enc.xcframework | 2064 |
macOS | x86_64 | AgoraVideoEncoderExtension.xcframework video_enc.xcframework | 3308 |
Windows | x86 | libagora_video_encoder_extension.dll video_enc.dll | 3121 |
Windows | x86_64 | libagora_video_encoder_extension.dll video_enc.dll | 3649 |
声网自 v4.2.0 提供视频解码插件,相比 SDK 原生编码方案,该插件提供更多解码选择,可以实现更快速、更高压缩率的视频解码。如需使用该功能,请联系技术支持。
使用视频解码插件必须根据目标平台同时集成下表中对应列出的两个库。
平台 | 架构 | 库名 | 集成后 App 增加的体积(KB) |
---|---|---|---|
Android | arm64-v8a | libagora_video_decoder_extension.so video_dec.so | 957 |
Android | armeabi-v7a | libagora_video_decoder_extension.so video_dec.so | 857 |
Android | x86_64 | libagora_video_decoder_extension.so video_dec.so | 987 |
Android | x86 | libagora_video_decoder_extension.so video_dec.so | 973 |
iOS | arm64 | AgoraVideoDecoderExtension.xcframework video_dec.xcframework | 1323 |
iOS | armv7 | AgoraVideoDecoderExtension.xcframework video_dec.xcframework | 1333 |
macOS | arm64 | AgoraVideoDecoderExtension.xcframework video_dec.xcframework | 1472 |
macOS | x86_64 | AgoraVideoDecoderExtension.xcframework video_dec.xcframework | 1936 |
Windows | x86 | libagora_video_decoder_extension.dll video_dec.dll | 2069 |
Windows | x86_64 | libagora_video_decoder_extension.dll video_dec.dll | 2427 |
subspecs 字段
通过 CocoaPods 集成 iOS/macOS SDK 时,你可以在 Podfile 中使用 subspecs
字段指定集成你需要的动态库,以排除你不需要使用的插件。动态库与 subspecs
字段的对应关系详见下表:
- iOS 视频 SDK
- iOS 音频 SDK
- macOS 音视频 SDK
动态库 | 类别 | subspecs 字段 |
---|---|---|
AgoraRtcKit.xcframework Agorafdkaac.xcframework AgoraSoundTouch.xcframework Agoraffmpeg.xcframework AgoraCore.xcframework | 必需 | RtcBasic |
AgoraAIDenoiseExtension.xcframework | 可选 | AINS |
AgoraAudioBeautyExtension.xcframework | 可选 | AudioBeauty |
AgoraClearVisionExtension.xcframework | 可选 | ClearVision |
AgoraContentInspectExtension.xcframework | 可选 | ContentInspect |
AgoraPvcExtension.xcframework | 可选 | PVC (< v4.1.0) |
AgoraSpatialAudioExtension.xcframework | 可选 | SpatialAudio |
AgoraVideoSegmentationExtension.xcframework | 可选 | VirtualBackground |
AgoraAiEchoCancellationExtension.xcframework | 可选 | AIAEC (≥ v4.1.0) |
AgoraDrmLoaderExtension.xcframework | 可选 | DRM (≥ v4.1.0) |
AgoraFDExtension.xcframework | 可选 | ROIEnc (≥ v4.1.1) |
AgoraVideoQualityAnalyzerExtension.xcframework | 可选 | VQA (≥ v4.1.0) |
AgoraReplayKitExtension.xcframework | 可选 | ReplayKit |
AgoraSuperResolutionExtension.xcframework | 可选 | SuperResolution (< v4.1.1) |
AgoraVideoEncoderExtension.xcframework video_enc.xcframework | 可选 | VideoCodecEnc (≥ v4.2.0) |
AgoraVideoDecoderExtension.xcframework video_dec.xcframework | 可选 | VideoCodecDec (≥ v4.2.0) |
动态库 | 类别 | subspecs 字段 |
---|---|---|
AgoraRtcKit.xcframework Agorafdkaac.xcframework AgoraSoundTouch.xcframework AgoraCore.xcframework | 必需 | RtcBasic |
AgoraAIDenoiseExtension.xcframework | 可选 | AINS |
AgoraAudioBeautyExtension.xcframework | 可选 | AudioBeauty |
AgoraSpatialAudioExtension.xcframework | 可选 | SpatialAudio |
AgoraAiEchoCancellationExtension.xcframework | 可选 | AIAEC (≥ v4.1.0) |
AgoraDrmLoaderExtension.xcframework | 可选 | DRM (≥ v4.1.0) |
动态库 | 类别 | subspecs 字段 |
---|---|---|
AgoraRtcKit.xcframework Agorafdkaac.xcframework AgoraSoundTouch.xcframework Agoraffmpeg.xcframework AgoraCore.xcframework | 必需 | RtcBasic |
AgoraAIDenoiseExtension.xcframework | 可选 | AINS |
AgoraAudioBeautyExtension.xcframework | 可选 | AudioBeauty |
AgoraClearVisionExtension.xcframework | 可选 | ClearVision |
AgoraContentInspectExtension.xcframework | 可选 | ContentInspect |
AgoraPvcExtension.xcframework | 可选 | PVC (< v4.1.0) |
AgoraSpatialAudioExtension.xcframework | 可选 | SpatialAudio |
AgoraVideoSegmentationExtension.xcframework | 可选 | VirtualBackground |
AgoraAiEchoCancellationExtension.xcframework | 可选 | AIAEC (≥ v4.1.0) |
AgoraDrmLoaderExtension.xcframework | 可选 | DRM (≥ v4.1.0) |
AgoraFDExtension.xcframework | 可选 | FaceDetection (≥ v4.1.1) |
AgoraVideoQualityAnalyzerExtension.xcframework | 可选 | VQA (≥ v4.1.0) |
AgoraScreenCaptureExtension.xcframework | 可选 | ScreenCapture (≥ v4.2.0) |
AgoraVideoEncoderExtension.xcframework video_enc.xcframework | 可选 | VideoCodecEnc (≥ v4.2.0) |
AgoraVideoDecoderExtension.xcframework video_dec.xcframework | 可选 | VideoCodecDec (≥ v4.2.0) |
implementation 字段
通过 Maven Central 集成 Android SDK 时,你可以修改 /Gradle Scripts/build.gradle(Module: <projectname>.app)
文件中的 dependencies
中的 implementation
字段,以指定需要集成的动态库。SDK 中各文件与 implementation
字段的对应关系详见下表:
- Android 视频 SDK
- Android 音频 SDK
文件 | 类别 | implementation 字段 |
---|---|---|
agora-rtc-sdk.jar libagora-rtc-sdk.so libagora-fdkaac.so libagora-ffmpeg.so libagora-soundtouch.so libagora-core.so | 必需 | io.agora.rtc:full-rtc-basic |
libagora_ai_noise_suppression_extension.so | 可选 | io.agora.rtc:ains |
libagora_audio_beauty_extension.so | 可选 | io.agora.rtc:audio-beauty |
libagora_clear_vision_extension.so | 可选 | io.agora.rtc:clear-vision |
libagora_content_inspect_extension.so | 可选 | io.agora.rtc:full-content-inspect |
libagora_screen_capture_extension.so | 可选 | io.agora.rtc:screen-capture |
AgoraScreenShareExtension.aar | 可选 | io.agora.rtc:full-screen-sharing |
libagora_segmentation_extension.so | 可选 | io.agora.rtc:full-virtual-background |
libagora_spatial_audio_extension.so | 可选 | io.agora.rtc:spatial-audio |
libagora_pvc_extension.so.so | 可选 | io.agora.rtc:pvc (< v4.1.0) |
libagora_super_resolution_extension.so | 可选 | io.agora.rtc:full-super-resolution (< v4.1.1) |
libagora_drm_loader_extension.so | 可选 | io.agora.rtc:drm-loader (≥ v4.1.0) |
libagora_udrm3_extension.so | 可选 | io.agora.rtc:drm (≥ v4.1.0) |
libagora_ai_echo_cancellation_extension.so | 可选 | io.agora.rtc:aiaec (≥ v4.1.0) |
libagora_face_detection_extension.so | 可选 | io.agora.rtc:full-roi-enc (≥ v4.1.1) |
libagora_video_quality_analyzer_extension.so | 可选 | io.agora.rtc:full-vqa (≥ v4.1.0) |
libagora_face_detection_extension.so | 可选 | io.agora.rtc:full-face-detection (≥ v4.1.1) |
libagora_video_encoder_extension.so video_enc.so | 可选 | io.agora.rtc:full-video-codec-enc (≥ v4.2.0) |
libagora_video_decoder_extension.so video_dec.so | 可选 | io.agora.rtc:full-video-codec-dec (≥ v4.2.0) |
文件 | 类别 | implementation 字段 |
---|---|---|
agora-rtc-sdk.jar libagora-rtc-sdk.so libagora-fdkaac.so libagora-soundtouch.so libagora-core.so | 必需 | io.agora.rtc:voice-rtc-basic |
libagora_ai_noise_suppression_extension.so | 可选 | io.agora.rtc:ains |
libagora_audio_beauty_extension.so | 可选 | io.agora.rtc:audio-beauty |
libagora_spatial_audio_extension.so | 可选 | io.agora.rtc:spatial-audio |
libagora_drm_loader_extension.so | 可选 | io.agora.rtc:drm-loader (≥ v4.1.0) |
libagora_udrm3_extension.so | 可选 | io.agora.rtc:drm (≥ v4.1.0) |
libagora_ai_echo_cancellation_extension.so | 可选 | io.agora.rtc:aiaec (≥ v4.1.0) |