1# IEffectControl
2
3
4## 概述
5
6音效控制器接口。
7
8提供音效控制器支持的驱动能力,包括音效数据处理、音效命令发送、获取当前音效描述符等。
9
10**起始版本:** 4.0
11
12**相关模块:**[HdiEffect](_hdi_effect.md)
13
14
15## 汇总
16
17
18### Public 成员函数
19
20| 名称 | 描述 |
21| -------- | -------- |
22| [EffectProcess](#effectprocess) ([in] struct [AudioEffectBuffer](_audio_effect_buffer.md) input, [out] struct [AudioEffectBuffer](_audio_effect_buffer.md) output) | 处理音频原始数据。 |
23| [SendCommand](#sendcommand) ([in] unsigned int cmdId, [in] byte[] cmdData, [out] byte[] replyData) | 发送音效处理命令 |
24| [GetEffectDescriptor](#geteffectdescriptor) ([out] struct [EffectControllerDescriptor](_effect_controller_descriptor.md) desc) | 获取音效的描述符 |
25| [EffectReverse](#effectreverse) ([in] struct [AudioEffectBuffer](_audio_effect_buffer.md) input, [out] struct [AudioEffectBuffer](_audio_effect_buffer.md) output) | 反转音频处理后的数据。 |
26
27
28## 成员函数说明
29
30
31### EffectProcess()
32
33```
34IEffectControl::EffectProcess ([in] struct AudioEffectBuffer input, [out] struct AudioEffectBuffer output )
35```
36
37**描述**
38
39处理音频原始数据。
40
41必须指定输入和输出buffer,如果未指定,则进程必须使用命令提供的数据处理功能。
42
43**起始版本:** 4.0
44
45**参数:**
46
47| 名称 | 描述 |
48| -------- | -------- |
49| control | 指向要调用该接口的音效控件,该指针参数在编译为C接口后产生。 |
50| input | 输入数据的buffer。 |
51| output | 输出数据的buffer。 |
52
53**返回:**
54
55执行成功返回0,执行失败返回其他值。
56
57
58### EffectReverse()
59
60```
61IEffectControl::EffectReverse ([in] struct AudioEffectBuffer input, [out] struct AudioEffectBuffer output )
62```
63
64**描述**
65
66反转音频处理后的数据。
67
68必须指定输入和输出缓冲区,如果未指定,则反转必须使用命令提供的数据反转功能。
69
70**起始版本:** 4.0
71
72**参数:**
73
74| 名称 | 描述 |
75| -------- | -------- |
76| control | 指向要调用该接口的音效控件,该指针参数在编译为C接口后产生。 |
77| input | 输入数据buffer。 |
78| output | 输出数据buffer。 |
79
80**返回:**
81
82执行成功返回0,执行失败返回其他值。
83
84
85### GetEffectDescriptor()
86
87```
88IEffectControl::GetEffectDescriptor ([out] struct EffectControllerDescriptor desc)
89```
90
91**描述**
92
93获取音效的描述符。
94
95**起始版本:** 4.0
96
97**参数:**
98
99| 名称 | 描述 |
100| -------- | -------- |
101| control | 指向要调用该接口的音效控件,该指针参数在编译为C接口后产生。 |
102| desc | 指定的音效描述符。 |
103
104**返回:**
105
106执行成功返回0,执行失败返回其他值。
107
108
109### SendCommand()
110
111```
112IEffectControl::SendCommand ([in] unsigned int cmdId, [in] byte[] cmdData, [out] byte[] replyData )
113```
114
115**描述**
116
117发送音效处理命令。
118
119**起始版本:** 4.0
120
121**参数:**
122
123| 名称 | 描述 |
124| -------- | -------- |
125| control | 指向要调用该接口的音效控件,该指针参数在编译为C接口后产生。 |
126| cmdId | 用于匹配命令表中的命令选项的命令索引。 |
127| cmdData | 系统服务的数据。 |
128| cmdDataLen | 数据长度,该参数在编译为C接口后产生。 |
129| replyData | 返回的数据。 |
130| replyDataLen | 数据长度,该参数在编译为C接口后产生。 |
131
132**返回:**
133
134执行成功返回0,执行失败返回其他值。
135