AudioRecordStream
构造函数
new AudioRecordStream()
new AudioRecordStream(
id):AudioRecordStream
创建新的AudioRecordStream实例。不得直接调用此构造函数。使用AudioRecordStreamBuilder.AudioRecordStreamBuilder.buildAsync创建实例。
参数
id
number
内部流标识符
返回值
属性
streamId
streamId:
number
方法
flushAsync()
flushAsync():
Promise<AudioStatus>
清空录制缓冲区,丢弃所有未读取数据。
返回值
Promise<AudioStatus>
解析为以下项的Promise:
STATUS_NO_ERROR (0): 成功清空STATUS_NO_INIT (-3): 流未初始化STATUS_DEAD_OBJECT (-5): 服务器通信错误
getAudioConfigAsync()
getAudioConfigAsync():
Promise<AudioConfig>
检索录制流的当前音频配置。
返回值
Promise<AudioConfig>
解析为包含以下内容的AudioConfig对象的Promise:
sampleRate: 当前采样率(单位:Hz)channelMask: 当前频道配置format: 当前样本格式,或者通过以下项拒绝:STATUS_NO_INIT (-3): 流未初始化STATUS_DEAD_OBJECT (-5): 服务器通信错误
getAudioEffectSessionIdAsync()
getAudioEffectSessionIdAsync():
Promise<number>
获取与流相关的自定义音效会话ID。
返回值
Promise<number>
解析为以下项的Promise:
- 正值: 效果会话ID
STATUS_NO_INIT (-3): 流未初始化STATUS_BAD_VALUE (-2): 未分配效果会话
getAudioFlagsAsync()
getAudioFlagsAsync():
Promise<number>
获取为流配置的音频标记。
返回值
Promise<number>
解析为以下项的Promise:
- AudioFlags值的按位组合
STATUS_NO_INIT (-3): 流未初始化STATUS_DEAD_OBJECT (-5): 服务器通信错误
getAudioSourceAsync()
getAudioSourceAsync():
Promise<AudioSource>
获取为此流配置的音频源类型。
返回值
Promise<AudioSource>
解析为以下项的Promise:
- AudioSource枚举值表示当前来源,或者通过以下项拒绝:
STATUS_NO_INIT (-3): 流未初始化STATUS_DEAD_OBJECT (-5): 服务器通信错误
getChannelCountAsync()
getChannelCountAsync():
Promise<number>
获取录制流的频道数。
返回值
Promise<number>
解析为以下项的Promise:
- 正值: 频道数量
STATUS_NO_INIT (-3): 流未初始化STATUS_DEAD_OBJECT (-5): 服务器通信错误
getLatencyInMsAsync()
getLatencyInMsAsync():
Promise<number>
以毫秒为单位获取录制流的当前延迟。
返回值
Promise<number>
解析为以下项的Promise:
- 正值: 延迟(单位:毫秒)
STATUS_NO_INIT (-3): 流未初始化STATUS_DEAD_OBJECT (-5): 服务器通信错误
getMinBufferSizeInBytesAsync()
getMinBufferSizeInBytesAsync():
Promise<number>
获取录制所需的最小缓冲区大小。readAsync调用必须至少使用这个大小才能进行可靠的录制。
返回值
Promise<number>
解析为以下项的Promise:
- 正值: 最小缓冲区大小(单位:字节)
STATUS_NO_INIT (-3): 流未初始化STATUS_DEAD_OBJECT (-5): 服务器通信错误
getNumBytesInPipelineAsync()
getNumBytesInPipelineAsync():
Promise<number>
获取当前录制管道中的字节数。
返回值
Promise<number>
解析为以下项的Promise:
- 正值: 管道中的字节数
STATUS_NO_INIT (-3): 流未初始化STATUS_DEAD_OBJECT (-5): 服务器通信错误
getNumBytesOfNativeBufferAsync()
getNumBytesOfNativeBufferAsync():
Promise<number>
获取用于录制的原生缓冲区的大小。这表示可以缓冲的最大数据量。
返回值
Promise<number>
解析为以下项的Promise:
- 正值: 缓冲区大小(单位:字节)
STATUS_NO_INIT (-3): 流未初始化STATUS_DEAD_OBJECT (-5): 服务器通信错误
getSampleRateAsync()
getSampleRateAsync():
Promise<number>
获取录制流的采样率。
返回值
Promise<number>
解析为以下项的Promise:
- 正值: 采样率(单位:Hz)
STATUS_NO_INIT (-3): 流未初始化STATUS_DEAD_OBJECT (-5): 服务器通信错误
getSampleSizeAsync()
getSampleSizeAsync():
Promise<number>
获取录制流的样本大小(单位:位)。
返回值
Promise<number>
解析为以下项的Promise:
- 正值: 以位为单位的样本大小(例如16、24、32)
STATUS_NO_INIT (-3): 流未初始化STATUS_DEAD_OBJECT (-5): 服务器通信错误
initCheckAsync()
initCheckAsync():
Promise<AudioStatus>
验证录制流是否已正确初始化。必须在使用其他方法之前调用,以确保流准备就绪。
返回值
Promise<AudioStatus>
解析为以下项的Promise:
STATUS_NO_ERROR (0): 流已正确初始化STATUS_NO_INIT (-3): 流未初始化STATUS_DEAD_OBJECT (-5): 服务器通信错误
readAsync()
readAsync(
bytes):Promise<ArrayBuffer>
读取录制流中的音频数据。需要权限:com.amazon.audio.privilege.microphone.access
参数
bytes
number
要读取的字节数。必须至少是getMinBufferSizeInBytesAsync返回的值
返回值
Promise<ArrayBuffer>
解析为以下项的Promise:
- 包含已录制音频数据的ArrayBuffer,或者通过以下项拒绝:
STATUS_NO_INIT (-3): 流未初始化STATUS_BAD_VALUE (-2): 字节参数无效STATUS_PERMISSION_DENIED (-9): 缺少麦克风权限STATUS_INVALID_OPERATION (-8): 读取操作失败STATUS_DEAD_OBJECT (-5): 服务器通信错误
registerEventObserverAsync()
registerEventObserverAsync(
callback):Promise<AudioStatus>
注册回调以接收录制流事件。一次只能注册一个回调。
参数
callback
(value) => void
接收事件的函数。事件包括:
DIED (0): 流失败RECOVERED (1): 流已从故障中恢复MUTE_STATE_CHANGED (2): 流静音状态已更改
返回值
Promise<AudioStatus>
解析为以下项的Promise:
STATUS_NO_ERROR (0): 回调注册成功STATUS_NO_INIT (-3): 流未初始化STATUS_BAD_VALUE (-2): 回调无效STATUS_ALREADY_EXISTS (-4): 回调已注册
unregisterEventObserverAsync()
unregisterEventObserverAsync():
Promise<AudioStatus>
取消注册之前注册的事件回调。
返回值
Promise<AudioStatus>
解析为以下项的Promise:
STATUS_NO_ERROR (0): 回调注销成功STATUS_NO_INIT (-3): 流未初始化STATUS_BAD_VALUE (-2): 未注册任何回调
getMajorVersion()
staticgetMajorVersion():number
获取AudioRecordStream实现的主版本号。可用于进行版本检查。
返回值
number
主版本号
getMinorVersion()
staticgetMinorVersion():number
获取AudioRecordStream实现的次版本号。可用于进行版本检查。
返回值
number
次版本号
getPatchVersion()
staticgetPatchVersion():number
获取AudioRecordStream实现的补丁版本号。可用于进行版本检查。
返回值
number
补丁版本号
Last updated: 2025年10月2日

