跳转至正文

@capgo/capacitor-audio-recorder

支持在 iOS、Android 和 Web 端录制语音片段,具备暂停、电平表显示及原生文件输出功能。

使用 @capgo/capacitor-audio-recorder 当您的 Capacitor 应用需要麦克风采集功能,又不想为每个平台单独接入原生模块时,可以使用此插件。支持开始和停止录音、录制中途暂停、轮询输入电平以绘制波形,并能在用户切换前后台时(需配置正确的原生权限)监听录音错误。

典型场景:语音备忘录、应用内音频消息、现场笔记、轻量级播客录制,以及必须在移动端 WebView 和移动浏览器中运行的语音优先功能。

平台支持备注
iOS是AVFoundation 采集(可选) resetToPlaybackOnStop 以避免录音后播放音量过小
Android是MediaRecorder,在 API 24+ 上支持暂停或恢复
Web 端是浏览器 MediaRecorder, stopRecording 返回一个 Blob 而非文件 URI
  • startRecording - 使用设备麦克风开始录音。
  • pauseRecording - 暂停正在进行的录音。仅在 Android (API 24+)、iOS 和 Web 上可用。
  • resumeRecording - 恢复之前暂停的录音。
  • stopRecording - 停止当前录音并保存录制的音频。
方法描述
startRecording使用设备麦克风开始录音。
pauseRecording暂停正在进行的录音。仅在 Android (API 24+)、iOS 和 Web 上可用。
resumeRecording恢复之前暂停的录音。
stopRecording停止当前录音并保存录制的音频。
cancelRecording取消当前录音并丢弃已捕获的音频。
getRecordingStatus获取当前录音状态。
getCurrentAmplitude以归一化数值的形式获取当前输入振幅(麦克风电平) [0, 1] 内。
checkPermissions返回麦克风访问权限的当前状态。
requestPermissions请求麦克风访问权限。
addListener监听录音错误。
addListener监听录音暂停时发出的暂停事件。
addListener监听录音完成事件。
removeAllListeners移除所有已注册的监听器。
getPluginVersion获取原生 Capacitor 插件版本。

此参考文档同步自 src/definitions.ts 在 capacitor-audio-recorder.

如果你正在使用 @capgo/capacitor-audio-recorder 来规划原生媒体和界面行为,并将其与 使用 @capgo/capacitor-audio-recorder 针对“使用 @capgo/capacitor-audio-recorder”中的原生能力, 使用 @capgo/capacitor-live-activities 有关“使用 @capgo/capacitor-live-activities”中的原生能力, @capgo/capacitor-live-activities 关于 @capgo/capacitor-live-activities 的实现细节, 使用 @capgo/capacitor-video-player 用于“使用 @capgo/capacitor-video-player”中的原生能力,以及 @capgo/capacitor-video-player 有关 @capgo/capacitor-video-player. 中的实现细节