添加插件。
public void addExtension(String providerName) {
mExtensionList.add(providerName);
}
该方法是 RtcEngineConfig 类的成员函数。
参数
参数名 | 参数描述 |
---|---|
providerName | 插件的 so 或 aar 文件名 |
启用/禁用插件。
public abstract int enableExtension(String provider, String extension, boolean enable);
参数
参数名 | 参数描述 | 你需要传入的值 |
---|---|---|
provider | 提供插件的服务商名称 | ExtensionManager.EXTENSION_VENDOR_NAME |
extension | 插件的名称 | ExtensionManager.EXTENSION_AUDIO_FILTER_NAME |
enable | 是否启用插件 | true : 启用插件。false : 禁用插件。 |
返回值
设置插件的属性。需要在启用插件后调用。
public abstract int setExtensionProperty(String provider, String extension, String key, String value);
参数
参数名 | 参数描述 | 你需要传入的值 |
---|---|---|
provider | 提供插件的服务商名称 | ExtensionManager.EXTENSION_VENDOR_NAME |
extension | 插件的名称 | ExtensionManager.EXTENSION_AUDIO_FILTER_NAME |
key | 插件属性的 Key | 详见 key-value 列表 |
value | 插件属性 Key 对应的值 | 详见 key-value 列表 |
返回值
插件事件回调。
void onEvent(String provider, String extension, String key, String value);
该回调是 IMediaExtensionObserver
类的成员。为监听插件事件,你需要注册该回调。
参数
参数名 | 参数描述 |
---|---|
provider | 提供插件的服务商名称 |
extension | 插件的名称 |
key | 插件事件的 Key,详见 key-value 列表 |
value | 插件事件 Key 对应的值,详见 key-value 列表 |
启用/禁用插件。
- (int)enableExtensionWithVendor:(NSString * __nonnull)provider extension:(NSString * __nonnull)extension enabled:(BOOL)enabled;
参数
参数名 | 参数描述 | 你需要传入的值 |
---|---|---|
provider | 提供插件的服务商名称 | Yitu |
extension | 插件的名称 | YituSpeechRecognition |
enabled | 是否启用插件 | YES : 启用插件。NO : 禁用插件。 |
返回值
设置插件的属性。需要在启用插件后调用。
- (int)setExtensionPropertyWithVendor:(NSString * __nonnull)provider extension:(NSString * __nonnull)extension key:(NSString * __nonnull)key value:(NSString * __nonnull)value;
参数
参数名 | 参数描述 | 你需要传入的值 |
---|---|---|
provider | 提供插件的服务商名称 | Yitu |
extension | 插件的名称 | YituSpeechRecognition |
key | 插件属性的 Key | 详见 key-value 列表 |
value | 插件属性 Key 对应的值 | 详见 key-value 列表 |
返回值
插件事件回调。
- (void)onEvent:(NSString * __nullable)provider
extension:(NSString * __nullable)extension
key:(NSString * __nullable)key
value:(NSString * __nullable)value;
该回调是 AgoraMediaFilterEventDelegate
类的成员。为监听插件事件,你需要注册该回调。
参数
参数名 | 参数描述 |
---|---|
provider | 提供插件的服务商名称 |
extension | 插件的名称 |
key | 插件事件的 Key,详见 key-value 列表 |
value | 插件事件 Key 对应的值,详见 key-value 列表 |
key | value |
---|---|
ip |
依图服务器 IP,如 127.0.0.1 |
port |
发送端口,如 8080 |
devId |
依图开发者 ID,如 2333 |
accessKey |
认证公钥,如 dswqeqfs25sq31 |
command |
支持设为以下值:websocketConnect :连接码流closeAudioTask :关闭任务turnOnAudioStream :开启音频码流turnOffAudioStream :关闭音频码流 |
createTask |
任务配置,包含以下参数:audioConfig :JSON Object,音频设置。详见 audioConfig。speechConfig :JSON Object,转写识别的设置。详见 speechConfig。 |
adaptAudioSample |
插件接收到的码流,如 16000 |
audioSliceSize |
(不建议修改)插件音频切片大小,如 200 |
key | value |
---|---|
websocketConnectResult |
websocket 连接结果,可能为以下值:success :连接成功authenticationFail :连接失败,原因是认证失败。remoteClose :服务器断开连接,原因是建立 websocket 连接后 10 秒内无任何操作。 |
recognizedResult |
识别结果,包含以下字段:globalStreamId :String 型,任务 ID。result :JSON Object,转写结果,详见 result。status :JSON Object,当前频处理的状态,详见 status。 |
devId |
依图开发者 ID,如 2333 |
音频设置,包含以下字段:
aue
:String 型,设为 PCM 即可。sampleRate
:Int 型,当前仅支持设为 16000。转写识别的设置,包含以下字段:
lang
:String 型,语言模型。customWord
:String Array,热词,表示转写优化词,可用于专有名词和场景。最多支持 100 个词。要求如下:recognizeType
:String 型,支持设为以下值:wordsReplace
:JSON Object,用于关键词替换。包含以下字段:keywords
:String Array,待替换的文字,最多支持 100 词。replace
:String Array,替换后的文字。转写结果,包含以下字段:
isFinal
:Bool 型,是否为这一片段的最后解析结果。bestTranscription
:JSON Object,转写结果,包含以下字段:transcribedText
:String 型,整句文字。piece
:JSON Array,每个文字的识别结果:transcribedText
:String 型,每个文字。beginTimestamp
:Int 型,开始的时间戳,单位 ms。返回的第一个字没有此字段,表示从 0ms 开始。endTimestamp
:Int 型,表示文字结束的时间戳,单位ms。transcribedType
:Int 型,转写结果的类型,一个结果可以对应多个状态,为以下状态按位与:包含以下字段:
processedTimestamp
:Int 型,当前已处理到的音频时间点,单位 ms。从 0 开始。