master
radxa 2025-10-23 08:20:36 +00:00
commit 00a615c29e
1 changed files with 26 additions and 0 deletions

26
realtime.py Normal file
View File

@ -0,0 +1,26 @@
import sounddevice as sd
import queue
import sys
import json
from vosk import Model, KaldiRecognizer
model = Model("/home/radxa/vosk-model/vosk-model-small-en-us-0.15")
rec = KaldiRecognizer(model, 16000)
q = queue.Queue()
def callback(indata, frames, time, status):
if status:
print(status, file=sys.stderr)
q.put(bytes(indata))
with sd.RawInputStream(samplerate=16000, blocksize=8000, dtype='int16',
channels=1, callback=callback):
print("Listening... Speak into the mic.")
while True:
data = q.get()
if rec.AcceptWaveform(data):
result = json.loads(rec.Result())
print(".", result)
else:
partial = json.loads(rec.PartialResult())
print("...", partial, end='\r')