Body
Trigger
- - Inbound Audiodateien, die im Verzeichnis /home/sirko/.openclaw/media/inbound/ landen (z. B. .ogg, .mp3, etc.)
Input
- - Eingabe: Pfad zur Audiodatei (z. B. /home/sirko/.openclaw/media/inbound/aufnahme.ogg)
Workflow
1) Normalize Format
- - Wenn Input nicht .wav ist, konvertiere zu WAV:
ffmpeg -i {input
file} -ar 16000 -ac 1 -c:a pcms16le {input_file}.wav
Hinweis: Die Zieldatei heißt input_file.wav (Beispiel: /.../aufnahme.ogg → /.../aufnahme.wav)
2) Transkription
- - Transkribiere die WAV-Datei:
/home/sirko/.openclaw/workspace/whisper.cpp/build/bin/whisper-cli -l DE -np -m /home/sirko/.openclaw/workspace/whisper.cpp/models/ggml-small.bin -f {input
wavfile}
- - Fange die Transkription als Text ab (stdout)
3) Ausführung
- - aus dem transkribierten Text entstandene Fragen oder Anweisungen einfach so in deutsch beantworten, als wäre es ein normaler Text, eingegeben über den Chat
Output
- - Einfach den Text verarbeiten, als wäre er als Text-DM eingegangen
- Bei Fehlern: klare Fehlermeldung mit Ursachen (z. B. Datei nicht gefunden, Transkript leer, Ausführung fehlschlägt)
Beispiel-Ablauf
- - inbound/file.ogg → convert → /tmp/file.wav → whisper → "Was ist die Hauptstadt von Frankreich" → ermittele Antwort und zeige sie
Notes
- - immer auf deutsch antworten
Tests/Testszenarien
- - Test mit file.ogg (4 Sekunden) → Transkription prüfen
- Test mit bereits WAV-Datei → direkte Transkription
- Test mit fehlerhafter Datei → ordentliche Fehlermeldung
技能名称:audio-command-executor
详细描述:
主体
触发器
- - 进入 /home/sirko/.openclaw/media/inbound/ 目录的入站音频文件(例如 .ogg、.mp3 等)
输入
- - 输入:音频文件路径(例如 /home/sirko/.openclaw/media/inbound/aufnahme.ogg)
工作流程
1) 格式标准化
- - 如果输入不是 .wav 格式,则转换为 WAV:
ffmpeg -i {input
file} -ar 16000 -ac 1 -c:a pcms16le {input_file}.wav
注意:目标文件名为 input_file.wav(示例:/.../aufnahme.ogg → /.../aufnahme.wav)
2) 转录
/home/sirko/.openclaw/workspace/whisper.cpp/build/bin/whisper-cli -l DE -np -m /home/sirko/.openclaw/workspace/whisper.cpp/models/ggml-small.bin -f {input
wavfile}
3) 执行
- - 将转录文本中产生的问题或指令,直接以德语回答,如同通过聊天输入的普通文本一样
输出
- - 直接处理文本,如同通过文本私信接收
- 出现错误时:提供清晰的错误信息并说明原因(例如文件未找到、转录为空、执行失败)
示例流程
- - inbound/file.ogg → 转换 → /tmp/file.wav → whisper → 法国的首都是什么 → 确定答案并显示
备注
测试/测试场景
- - 使用 file.ogg(4秒)进行测试 → 检查转录结果
- 使用已有的 WAV 文件进行测试 → 直接转录
- 使用损坏的文件进行测试 → 给出适当的错误信息