跳到主要内容

EdgeVoice API 参考

EdgeVoice 包含音频录制 API 和 Whisper 预览桥接。

当前预览版 边界

edge-kit@1.0.0-rc97 中,WhisperEngine 是为未来 whisper.cpp xcframework integration 保留的 skeleton。它不执行真实转写。当前预览版 的可运行原生 ASR 示例请使用 EdgeInference 中的 STTEngine

AudioRecorder

@MainActor
public final class AudioRecorder: NSObject, ObservableObject

将麦克风输入录制到本地 WAV 文件。

属性或方法描述
isRecording当前是否正在录音。
currentLevel当前输入电平。
startRecording()开始录音并返回输出 URL。
stopRecording()停止录音,并在可用时返回最终 URL。

示例:

let recorder = AudioRecorder()
let url = try await recorder.startRecording()
let finalURL = recorder.stopRecording() ?? url

WhisperEngine

@MainActor
public final class WhisperEngine: ObservableObject

面向 Whisper 家族模型的 预览桥接。

属性或方法描述
isLoaded是否已加载模型。
isTranscribing是否正在转写。
load(_:)为 skeleton bridge 记录所选模型尺寸。
transcribe(audioURL:language:)在接入 whisper.cpp 前返回 placeholder 字符串。
startRealtime(language:)在接入 realtime Whisper 前会立即结束。
unload()释放已加载模型。

WhisperEngine.ModelSize

public enum ModelSize: String, CaseIterable, Sendable
Case文件名
.tinyggml-tiny.bin
.baseggml-base.bin
.smallggml-small.bin
.mediumggml-medium.bin

TranscriptionResult

public struct TranscriptionResult: Sendable
属性类型
textString
languageString
durationTimeInterval