docs+ux(voice_loop): klarer Hinweis auf ALSA-Direktgeraet bei Aufnahme-Fehler
Auf PipeWire-Systemen kann der pw-record/ALSA-default-Pfad scheitern
("pw_context_connect() failed"). Direkter Zugriff via arecord -D plughw:KARTE,0
funktioniert. voice_loop gibt bei leerer Aufnahme jetzt diesen konkreten Tipp aus;
Bedienungsanleitung entsprechend ergaenzt (Recorder-Hinweis + Troubleshooting).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
d15e51eb0d
commit
98706ef3ec
2 changed files with 14 additions and 5 deletions
|
|
@ -114,9 +114,14 @@ python scripts/voice_loop.py --file frage.wav # ohne Mikrofon: WAV senden
|
|||
```
|
||||
|
||||
> **Aufnahmewerkzeug:** `--recorder auto` (Standard) bevorzugt **PipeWire** (`pw-record`),
|
||||
> sonst `parecord`/`arecord`. Gibt `arecord` den Fehler *„Fehler beim Öffnen des
|
||||
> Gerätes"* aus, nutze `--recorder pw-record` (auf PipeWire-Systemen der Normalfall)
|
||||
> oder gib mit `--device` ein konkretes Gerät an.
|
||||
> sonst `parecord`/`arecord`. **Falls die Aufnahme scheitert** (z. B.
|
||||
> *„pw_context_connect() failed"* oder *„Fehler beim Öffnen des Gerätes"*), ist der
|
||||
> verlässlichste Weg ein **direktes ALSA-Hardware-Gerät**:
|
||||
> ```bash
|
||||
> arecord -l # Kartennummern der Mikrofone
|
||||
> python scripts/voice_loop.py --recorder arecord --device plughw:2,0
|
||||
> ```
|
||||
> (`plughw:KARTE,GERÄT` aus `arecord -l`; z. B. onboard oft Karte 2, USB-Webcam Karte 4.)
|
||||
|
||||
## A2. Nur tippen → Antwort hören
|
||||
|
||||
|
|
@ -377,7 +382,7 @@ curl -s "$URL/api/metrics?format=prometheus" # Prometheus-Text (kein jq)
|
|||
| HTTP **502** bei STT/TTS | Cloud-Fehler/Format | `make smoke` ausführen; Modellnamen in `.env` prüfen |
|
||||
| `VA_PROFILE` wirkt nicht | `DEFAULT_*_PROVIDER` in `.env` überschreibt | diese Zeilen in `.env` auskommentieren |
|
||||
| `Address already in use` | Port belegt | anderen `PORT` setzen |
|
||||
| `arecord: Fehler beim Öffnen des Gerätes` | ALSA-`default` auf PipeWire nicht nutzbar | `--recorder pw-record` (Standard bei `auto`) oder `--device` mit Gerät aus `arecord -L` |
|
||||
| `pw_context_connect() failed` / `arecord: Fehler beim Öffnen des Gerätes` | PipeWire-Client- bzw. ALSA-`default`-Pfad gestört | direktes Gerät nehmen: `arecord -l`, dann `--recorder arecord --device plughw:2,0` |
|
||||
| Keine Aufnahme/Wiedergabe | Werkzeug/Gerät fehlt | `arecord -L` / `aplay -L`; Pakete `pipewire`/`alsa-utils`/`ffmpeg`; Default via `wpctl status` |
|
||||
| Profil greift nicht | `config/voice-assistant.toml` fehlt | aus `*.example.toml` kopieren (Abschnitt 2) |
|
||||
|
||||
|
|
|
|||
|
|
@ -184,7 +184,11 @@ async def run(args) -> None:
|
|||
print("\nEnde.")
|
||||
return
|
||||
if len(wav) < 1000:
|
||||
print(" (zu kurz/leer – nochmal)")
|
||||
print(" ⚠ Keine/zu kurze Aufnahme. Moegliche Ursache: Aufnahmewerkzeug"
|
||||
" oder Geraet nicht nutzbar.")
|
||||
print(" Verfuegbare Mikrofone: arecord -l")
|
||||
print(" Direktes ALSA-Geraet verwenden, z. B.:")
|
||||
print(" python scripts/voice_loop.py --recorder arecord --device plughw:2,0")
|
||||
continue
|
||||
await one_turn(ws, wav, start_frame)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue