as

Settings
Sign out
Notifications
Alexa
亚马逊应用商店
AWS
文档
Support
Contact Us
My Cases
新手入门
设计和开发
应用发布
参考
支持

AudioRecordStream

AudioRecordStream

构造函数

new AudioRecordStream()

new AudioRecordStream(id): AudioRecordStream

创建新的AudioRecordStream实例。不得直接调用此构造函数。使用AudioRecordStreamBuilder.AudioRecordStreamBuilder.buildAsync创建实例。

参数

id

number

内部流标识符

返回值

AudioRecordStream

属性

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()

static getMajorVersion(): number

获取AudioRecordStream实现的主版本号。可用于进行版本检查。

返回值

number

主版本号


getMinorVersion()

static getMinorVersion(): number

获取AudioRecordStream实现的次版本号。可用于进行版本检查。

返回值

number

次版本号


getPatchVersion()

static getPatchVersion(): number

获取AudioRecordStream实现的补丁版本号。可用于进行版本检查。

返回值

number

补丁版本号


Last updated: 2025年10月2日