-
Notifications
You must be signed in to change notification settings - Fork 229
Expand file tree
/
Copy pathExtensionProvider.hpp
More file actions
34 lines (28 loc) · 1.2 KB
/
ExtensionProvider.hpp
File metadata and controls
34 lines (28 loc) · 1.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
//
// Created by 张涛 on 2020/4/26.
//
#ifndef AGORA_EXTENSION_PROVIDER_H
#define AGORA_EXTENSION_PROVIDER_H
#include "AgoraRtcKit/NGIAgoraExtensionProvider.h"
#include "ExtensionAudioFilter.hpp"
#include "ExtensionVideoFilter.hpp"
namespace agora {
namespace extension {
static const char* AUDIO_FILTER_NAME = "VolumeChange";
static const char* VIDEO_FILTER_NAME = "Grey";
class ExtensionProvider : public agora::rtc::IExtensionProvider {
private:
agora_refptr<AdjustVolumeAudioProcessor> audioProcessor_;
agora_refptr<YUVImageProcessor> YUVProcessor_;
public:
ExtensionProvider();
~ExtensionProvider();
void setExtensionControl(rtc::IExtensionControl* control) override;
void enumerateExtensions(ExtensionMetaInfo* extension_list, int& extension_count) override;
agora_refptr<rtc::IAudioFilter> createAudioFilter(const char* name) override;
agora_refptr<rtc::IExtensionVideoFilter> createVideoFilter(const char* name) override;
agora_refptr<rtc::IExtensionVideoSink> createVideoSink(const char* name) override;
};
}
}
#endif //AGORA_EXTENSION_PROVIDER_H