Agora Java API Reference for Android

NGIAgoraExtensionAiAec.h
1
2 // Agora SDK
3 //
4 // Created by LLF on 2022-8-15.
5 // Copyright (c) 2022 Agora. All rights reserved.
6 //
7
8 #pragma once // NOLINT(build/header_guard)
9
10 #include "AgoraRefPtr.h"
11
12 #define MAX_VERSION_LEN 64
13
14 namespace agora {
15 namespace rtc {
16
17 class AiEchoCancellationExtension : public RefCountInterface {
18 public:
19 virtual ~AiEchoCancellationExtension() {};
20 virtual int Init(const char* weight_raw_buffer, size_t raw_buffer_bytes) = 0;
21 virtual int ProcessAiNlpFrame(const float* linear, const float* nearin, const float* far_ref, float* out_mask) = 0;
22 virtual int ClearHiddenState(float scale_factor = 0.0,int clear_lpsbuffer_nframe = 0) = 0;
23 virtual const char* GetLibVersion(int mode = 0) = 0;
24 };
25
26 class AiEchoCancellationContollerExtension : public RefCountInterface {
27 public:
28 virtual ~AiEchoCancellationContollerExtension() {};
29 virtual bool LoadWeightResource(std::shared_ptr<void> &weight, int& size) = 0;
30 };
31
32 } // namespace rtc
33 } // namespace agora
agora::rtc::AiEchoCancellationContollerExtension
Definition: NGIAgoraExtensionAiAec.h:26
agora::rtc::AiEchoCancellationExtension
Definition: NGIAgoraExtensionAiAec.h:17
agora::RefCountInterface
Definition: AgoraRefPtr.h:31