harmony 鸿蒙AudioAttribute
AudioAttribute
概述
AudioAttribute音频属性接口。
提供音频播放(Render)或录音(Capture)需要的公共属性驱动能力,包括获取帧(frame)信息、设置采样属性等。
Since:
1.0
Version:
1.0
相关模块:
汇总
Public 属性
名称 | 描述 |
---|---|
(GetFrameSize)(AudioHandle handle, uint64_t *size) | 获取音频帧(frame)的大小 |
(GetFrameCount)(AudioHandle handle, uint64_t *count) | 获取音频buffer中的音频帧数 |
(SetSampleAttributes)(AudioHandle handle, const struct AudioSampleAttributes *attrs) | 设置音频采样的属性参数 |
(GetSampleAttributes)(AudioHandle handle, struct AudioSampleAttributes *attrs) | 获取音频采样的属性参数 |
(GetCurrentChannelId)(AudioHandle handle, uint32_t *channelId) | 获取音频的数据通道ID |
(SetExtraParams)(AudioHandle handle, const char *keyValueList) | 设置音频拓展参数 |
(GetExtraParams)(AudioHandle handle, char *keyValueList) | 获取音频拓展参数 |
(ReqMmapBuffer)(AudioHandle handle, int32_t reqSize, struct AudioMmapBufferDescriptor *desc) | 请求Mmap缓冲区 |
(GetMmapPosition)(AudioHandle handle, uint64_t *frames, struct AudioTimeStamp *time) | 获取当前Mmap的读/写位置 |
(AddAudioEffect)(AudioHandle handle, uint64_t effectid) | 添加音频效果算法实例 |
(RemoveAudioEffect)(AudioHandle handle, uint64_t effectid) | 移除音频效果算法实例 |
(GetFrameBufferSize)(AudioHandle handle, uint64_t *bufferSize) | 获取播放或录音的缓冲区大小 |
类成员变量说明
AddAudioEffect
int32_t (*AudioAttribute::AddAudioEffect)(AudioHandle handle, uint64_t effectid)
描述:
添加音频效果算法实例。
参数:
名称 | 描述 |
---|---|
handle | 输入参数,待操作的音频句柄。 |
effectid | 输入参数,待添加的音频效果算法实例ID。 |
返回:
成功返回值0,失败返回负值。
GetCurrentChannelId
int32_t(* AudioAttribute::GetCurrentChannelId) (AudioHandle handle, uint32_t *channelId)
描述:
获取音频的数据通道ID。
参数:
名称 | 描述 |
---|---|
handle | 输入参数,待操作的音频句柄。 |
channelId | 输出参数,获取的通道ID保存到channelId中。 |
返回:
成功返回值0,失败返回负值。
GetExtraParams
int32_t(* AudioAttribute::GetExtraParams) (AudioHandle handle, char *keyValueList)
描述:
获取音频拓展参数。
参数:
名称 | 描述 |
---|---|
handle | 输入参数,待操作的音频句柄。 |
keyValueList | 输出参数,拓展参数键值对字符串列表,格式为key=value,多个键值对通过分号分割。 |
返回:
成功返回值0,失败返回负值。
GetFrameBufferSize
int32_t (*AudioAttribute::GetFrameBufferSize)(AudioHandle handle, uint64_t *bufferSize)
描述:
获取播放或录音的缓冲区大小。
参数:
名称 | 描述 |
---|---|
handle | 输入参数,待操作的音频句柄。 |
bufferSize | 输出参数,获取的缓冲区大小保存到bufferSize中。 |
返回:
成功返回值0,失败返回负值。
GetFrameCount
int32_t(* AudioAttribute::GetFrameCount) (AudioHandle handle, uint64_t *count)
描述:
获取音频buffer中的音频帧数。
参数:
名称 | 描述 |
---|---|
handle | 输入参数,待操作的音频句柄。 |
count | 输出参数,一个音频buffer中包含的音频帧数,获取后保存到count中。 |
返回:
成功返回值0,失败返回负值。
GetFrameSize
int32_t(* AudioAttribute::GetFrameSize) (AudioHandle handle, uint64_t *size)
描述:
获取音频帧(frame)的大小,即一帧音频数据的长度(字节数)。
参数:
名称 | 描述 |
---|---|
handle | 输入参数,待操作的音频句柄。 |
size | 输出参数,获取的音频帧大小(字节数)保存到size中。 |
返回:
成功返回值0,失败返回负值。
GetMmapPosition
int32_t(* AudioAttribute::GetMmapPosition) (AudioHandle handle, uint64_t *frames, struct AudioTimeStamp *time)
描述:
获取当前Mmap的读/写位置。
参数:
名称 | 描述 |
---|---|
handle | 输入参数,待操作的音频句柄。 |
frames | 输出参数,获取的音频帧计数保存到frames中。 |
time | 输出参数,获取的关联时间戳保存到time中。 |
返回:
成功返回值0,失败返回负值。
GetSampleAttributes
int32_t(* AudioAttribute::GetSampleAttributes) (AudioHandle handle, struct AudioSampleAttributes *attrs)
描述:
获取音频采样的属性参数。
参数:
名称 | 描述 |
---|---|
handle | 输入参数,待操作的音频句柄。 |
attrs | 输出参数,获取的音频采样属性(例如采样频率、采样精度、通道)保存到attrs中。 |
返回:
成功返回值0,失败返回负值。
参见:
RemoveAudioEffect
int32_t (*AudioAttribute::RemoveAudioEffect)(AudioHandle handle, uint64_t effectid)
描述:
移除音频效果算法实例。
参数:
名称 | 描述 |
---|---|
handle | 输入参数,待操作的音频句柄。 |
effectid | 输入参数,待移除的音频效果算法实例ID。 |
返回:
成功返回值0,失败返回负值。
ReqMmapBuffer
int32_t(* AudioAttribute::ReqMmapBuffer) (AudioHandle handle, int32_t reqSize, struct AudioMmapBufferDescriptor *desc)
描述:
请求Mmap缓冲区。
参数:
名称 | 描述 |
---|---|
handle | 输入参数,待操作的音频句柄。 |
reqSize | 输入参数,请求缓冲区的大小。 |
desc | 输出参数,缓冲区描述符。 |
返回:
成功返回值0,失败返回负值。
SetExtraParams
int32_t(* AudioAttribute::SetExtraParams) (AudioHandle handle, const char *keyValueList)
描述:
设置音频拓展参数。
参数:
名称 | 描述 |
---|---|
handle | 输入参数,待操作的音频句柄。 |
keyValueList | 输入参数,拓展参数键值对字符串列表,格式为key=value,多个键值对通过分号分割。 |
返回:
成功返回值0,失败返回负值。
SetSampleAttributes
int32_t(* AudioAttribute::SetSampleAttributes) (AudioHandle handle, const struct AudioSampleAttributes *attrs)
描述:
设置音频采样的属性参数。
参数:
名称 | 描述 |
---|---|
handle | 输入参数,待操作的音频句柄。 |
attrs | 输入参数,待设置的音频采样属性,例如采样频率、采样精度、通道。 |
返回:
成功返回值0,失败返回负值。
参见:
你可能感兴趣的鸿蒙文章
0
赞
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦