未验证 提交 17614848 编写于 作者: O openharmony_ci 提交者: Gitee

!8024 feat: add AudioEffect and GetFrameBufferSize interface to 3.2Beta

Merge pull request !8024 from vb6174/cherry-pick-1660217907
......@@ -13,17 +13,20 @@
### Public 属性
| Public 属性 | 描述 |
| Public 属性 | 描述 |
| -------- | -------- |
| ( [GetFrameSize](#getframesize) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, uint64_t \*size) | 获取音频帧(frame)的大小 [更多...](#getframesize) |
| ( [GetFrameCount](#getframecount) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, uint64_t \*count) | 获取音频buffer中的音频帧数 [更多...](#getframecount) |
| ( [SetSampleAttributes](#setsampleattributes) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, const struct [AudioSampleAttributes](_audio_sample_attributes.md) \*attrs) | 设置音频采样的属性参数 [更多...](#setsampleattributes) |
| ( [GetSampleAttributes](#getsampleattributes) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, struct [AudioSampleAttributes](_audio_sample_attributes.md) \*attrs) | 获取音频采样的属性参数 [更多...](#getsampleattributes) |
| ( [GetCurrentChannelId](#getcurrentchannelid) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, uint32_t \*channelId) | 获取音频的数据通道ID [更多...](#getcurrentchannelid) |
| ( [SetExtraParams](#setextraparams) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, const char \*keyValueList) | 设置音频拓展参数 [更多...](#setextraparams) |
| ( [GetExtraParams](#getextraparams) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, char \*keyValueList) | 获取音频拓展参数 [更多...](#getextraparams) |
| ( [ReqMmapBuffer](#reqmmapbuffer) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, int32_t reqSize, struct [AudioMmapBufferDescripter](_audio_mmap_buffer_descripter.md) \*desc) | 请求mmap缓冲区 [更多...](#reqmmapbuffer) |
| ( [GetMmapPosition](#getmmapposition) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, uint64_t \*frames, struct [AudioTimeStamp](_audio_time_stamp.md) \*time) | 获取当前mmap的读/写位置 [更多...](#getmmapposition) |
| ( [GetFrameSize](#getframesize) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, uint64_t \*size) | 获取音频帧(frame)的大小 [更多...](#getframesize) |
| ( [GetFrameCount](#getframecount) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, uint64_t \*count) | 获取音频buffer中的音频帧数 [更多...](#getframecount) |
| ( [SetSampleAttributes](#setsampleattributes) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, const struct [AudioSampleAttributes](_audio_sample_attributes.md) \*attrs) | 设置音频采样的属性参数 [更多...](#setsampleattributes) |
| ( [GetSampleAttributes](#getsampleattributes) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, struct [AudioSampleAttributes](_audio_sample_attributes.md) \*attrs) | 获取音频采样的属性参数 [更多...](#getsampleattributes) |
| ( [GetCurrentChannelId](#getcurrentchannelid) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, uint32_t \*channelId) | 获取音频的数据通道ID [更多...](#getcurrentchannelid) |
| ( [SetExtraParams](#setextraparams) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, const char \*keyValueList) | 设置音频拓展参数 [更多...](#setextraparams) |
| ( [GetExtraParams](#getextraparams) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, char \*keyValueList) | 获取音频拓展参数 [更多...](#getextraparams) |
| ( [ReqMmapBuffer](#reqmmapbuffer) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, int32_t reqSize, struct [AudioMmapBufferDescripter](_audio_mmap_buffer_descripter.md) \*desc) | 请求mmap缓冲区 [更多...](#reqmmapbuffer) |
| ( [GetMmapPosition](#getmmapposition) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, uint64_t \*frames, struct [AudioTimeStamp](_audio_time_stamp.md) \*time) | 获取当前mmap的读/写位置 [更多...](#getmmapposition) |
| ( [AddAudioEffect](#addaudioeffect) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, uint64_t \*effectid) |添加音频效果算法实例 [更多...](#addaudioeffect) |
| ( [RemoveAudioEffect](#removeaudioeffect) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, uint64_t effectid) |移除音频效果算法实例 [更多...](#removeaudioeffect) |
| ( [GetFrameBufferSize](#getframebuffersize) )([AudioHandle](_audio.md#ga18675ddb073465fdeac33a897f675d79) handle, uint64_t \*effectid) |获取播放或录音的缓冲区大小 [更多...](#getframebuffersize) |
## **详细描述**
......@@ -46,7 +49,7 @@ AudioAttribute音频属性接口
### GetCurrentChannelId
```
int32_t(* AudioAttribute::GetCurrentChannelId) (AudioHandle handle, uint32_t *channelId)
```
......@@ -57,19 +60,19 @@ int32_t(* AudioAttribute::GetCurrentChannelId) (AudioHandle handle, uint32_t *ch
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| handle | 待操作的音频句柄 |
| channelId | 获取的通道ID保存到channelId中 |
| handle | 待操作的音频句柄 |
| channelId | 获取的通道ID保存到channelId中 |
**返回:**
成功返回值0,失败返回负值
成功返回值0,失败返回负值
### GetExtraParams
```
int32_t(* AudioAttribute::GetExtraParams) (AudioHandle handle, char *keyValueList)
```
......@@ -80,10 +83,10 @@ int32_t(* AudioAttribute::GetExtraParams) (AudioHandle handle, char *keyValueLis
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| handle | 待操作的音频句柄 |
| keyValueList | 拓展参数键值对字符串列表,格式为key=value,多个键值对通过分号分割 |
| handle | 待操作的音频句柄 |
| keyValueList | 拓展参数键值对字符串列表,格式为key=value,多个键值对通过分号分割 |
**返回:**
......@@ -92,7 +95,7 @@ int32_t(* AudioAttribute::GetExtraParams) (AudioHandle handle, char *keyValueLis
### GetFrameCount
```
int32_t(* AudioAttribute::GetFrameCount) (AudioHandle handle, uint64_t *count)
```
......@@ -103,19 +106,19 @@ int32_t(* AudioAttribute::GetFrameCount) (AudioHandle handle, uint64_t *count)
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| handle | 待操作的音频句柄 |
| count | 一个音频buffer中包含的音频帧数,获取后保存到count中 |
| handle | 待操作的音频句柄 |
| count | 一个音频buffer中包含的音频帧数,获取后保存到count中 |
**返回:**
成功返回值0,失败返回负值
成功返回值0,失败返回负值
### GetFrameSize
```
int32_t(* AudioAttribute::GetFrameSize) (AudioHandle handle, uint64_t *size)
```
......@@ -128,19 +131,19 @@ int32_t(* AudioAttribute::GetFrameSize) (AudioHandle handle, uint64_t *size)
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| handle | 待操作的音频句柄 |
| size | 获取的音频帧大小(字节数)保存到size中 |
| handle | 待操作的音频句柄 |
| size | 获取的音频帧大小(字节数)保存到size中 |
**返回:**
成功返回值0,失败返回负值
成功返回值0,失败返回负值
### GetMmapPosition
```
int32_t(* AudioAttribute::GetMmapPosition) (AudioHandle handle, uint64_t *frames, struct AudioTimeStamp *time)
```
......@@ -151,20 +154,20 @@ int32_t(* AudioAttribute::GetMmapPosition) (AudioHandle handle, uint64_t *frames
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| handle | 待操作的音频句柄 |
| frames | 获取的音频帧计数保存到frames中 |
| time | 获取的关联时间戳保存到time中 |
| handle | 待操作的音频句柄 |
| frames | 获取的音频帧计数保存到frames中 |
| time | 获取的关联时间戳保存到time中 |
**返回:**
成功返回值0,失败返回负值
成功返回值0,失败返回负值
### GetSampleAttributes
```
int32_t(* AudioAttribute::GetSampleAttributes) (AudioHandle handle, struct AudioSampleAttributes *attrs)
```
......@@ -175,14 +178,14 @@ int32_t(* AudioAttribute::GetSampleAttributes) (AudioHandle handle, struct Audio
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| handle | 待操作的音频句柄 |
| attrs | 获取的音频采样属性(例如采样频率、采样精度、通道)保存到attrs中 |
| handle | 待操作的音频句柄 |
| attrs | 获取的音频采样属性(例如采样频率、采样精度、通道)保存到attrs中 |
**返回:**
成功返回值0,失败返回负值
成功返回值0,失败返回负值
**参见:**
......@@ -191,7 +194,7 @@ int32_t(* AudioAttribute::GetSampleAttributes) (AudioHandle handle, struct Audio
### ReqMmapBuffer
```
int32_t(* AudioAttribute::ReqMmapBuffer) (AudioHandle handle, int32_t reqSize, struct AudioMmapBufferDescripter *desc)
```
......@@ -202,20 +205,20 @@ int32_t(* AudioAttribute::ReqMmapBuffer) (AudioHandle handle, int32_t reqSize, s
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| handle | 待操作的音频句柄 |
| reqSize | 请求缓冲区的大小 |
| desc | 缓冲区描述符 |
| handle | 待操作的音频句柄 |
| reqSize | 请求缓冲区的大小 |
| desc | 缓冲区描述符 |
**返回:**
成功返回值0,失败返回负值
成功返回值0,失败返回负值
### SetExtraParams
```
int32_t(* AudioAttribute::SetExtraParams) (AudioHandle handle, const char *keyValueList)
```
......@@ -226,19 +229,19 @@ int32_t(* AudioAttribute::SetExtraParams) (AudioHandle handle, const char *keyVa
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| handle | 待操作的音频句柄 |
| keyValueList | 拓展参数键值对字符串列表,格式为key=value,多个键值对通过分号分割 |
| handle | 待操作的音频句柄 |
| keyValueList | 拓展参数键值对字符串列表,格式为key=value,多个键值对通过分号分割 |
**返回:**
成功返回值0,失败返回负值
成功返回值0,失败返回负值
### SetSampleAttributes
```
int32_t(* AudioAttribute::SetSampleAttributes) (AudioHandle handle, const struct AudioSampleAttributes *attrs)
```
......@@ -249,15 +252,84 @@ int32_t(* AudioAttribute::SetSampleAttributes) (AudioHandle handle, const struct
**参数:**
| 名称 | 描述 |
| 名称 | 描述 |
| -------- | -------- |
| handle | 待操作的音频句柄 |
| attrs | 待设置的音频采样属性,例如采样频率、采样精度、通道 |
| handle | 待操作的音频句柄 |
| attrs | 待设置的音频采样属性,例如采样频率、采样精度、通道 |
**返回:**
成功返回值0,失败返回负值
成功返回值0,失败返回负值
**参见:**
[GetSampleAttributes](#getsampleattributes)
### AddAudioEffect
```
int32_t (* AudioAttribute::AddAudioEffect)(AudioHandle handle, uint64_t effectid)
```
**描述:**
添加音频效果算法实例。
**参数:**
| 名称 | 描述 |
| -------- | -------- |
| handle | 待操作的音频句柄 |
| effectid | 待添加的音频效果算法实例ID |
**返回:**
成功返回值0,失败返回负值。
### RemoveAudioEffect
```
int32_t (* AudioAttribute::RemoveAudioEffect)(AudioHandle handle, uint64_t effectid)
```
**描述:**
移除音频效果算法实例。
**参数:**
| 名称 | 描述 |
| -------- | -------- |
| handle | 待操作的音频句柄 |
| effectid | 待移除的音频效果算法实例ID |
**返回:**
成功返回值0,失败返回负值。
### GetFrameBufferSize
```
int32_t (* AudioAttribute::GetFrameBufferSize)(AudioHandle handle, uint64_t *bufferSize)
```
**描述:**
获取播放或录音的缓冲区大小。
**参数:**
| 名称 | 描述 |
| -------- | -------- |
| handle | 待操作的音频句柄 |
| bufferSize | 获取的缓冲区大小保存到bufferSize中 |
**返回:**
成功返回值0,失败返回负值。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册