1
1
mirror of https://github.com/OpenVoiceOS/OpenVoiceOS synced 2025-06-05 22:19:21 +02:00

Get buildroot-external tree to reflect 2022.02.1

- Changes to the raspberypi board folder/structure
- Bump python related poackages and fixes to Python3.10
- Bump KF5 framewerk packages to 5.91
- Bump qtwebengine to 5.15.8
- Bump/Add/Fix all OVOS related packages
- Fixes all over the OpenVoiceOS structure for 2022.02.1
This commit is contained in:
j1nx
2022-05-12 10:46:41 +02:00
parent 2ebb462737
commit e84818f62e
382 changed files with 859 additions and 38843 deletions

View File

@ -0,0 +1,103 @@
import os
import sys
from .vosk_cffi import ffi as _ffi
def open_dll():
dlldir = os.path.abspath(os.path.dirname(__file__))
if sys.platform == 'win32':
# We want to load dependencies too
os.environ["PATH"] = dlldir + os.pathsep + os.environ['PATH']
if hasattr(os, 'add_dll_directory'):
os.add_dll_directory(dlldir)
return _ffi.dlopen(os.path.join(dlldir, "libvosk.dll"))
elif sys.platform == 'linux':
return _ffi.dlopen(os.path.join(dlldir, "libvosk.so"))
elif sys.platform == 'darwin':
return _ffi.dlopen(os.path.join(dlldir, "libvosk.dyld"))
else:
raise TypeError("Unsupported platform")
_c = open_dll()
class Model(object):
def __init__(self, model_path):
self._handle = _c.vosk_model_new(model_path.encode('utf-8'))
if self._handle == _ffi.NULL:
raise Exception("Failed to create a model")
def __del__(self):
_c.vosk_model_free(self._handle)
def vosk_model_find_word(self, word):
return _c.vosk_model_find_word(self._handle, word.encode('utf-8'))
class SpkModel(object):
def __init__(self, model_path):
self._handle = _c.vosk_spk_model_new(model_path.encode('utf-8'))
if self._handle == _ffi.NULL:
raise Exception("Failed to create a speaker model")
def __del__(self):
_c.vosk_spk_model_free(self._handle)
class KaldiRecognizer(object):
def __init__(self, *args):
if len(args) == 2:
self._handle = _c.vosk_recognizer_new(args[0]._handle, args[1])
elif len(args) == 3 and type(args[2]) is SpkModel:
self._handle = _c.vosk_recognizer_new_spk(args[0]._handle, args[1], args[2]._handle)
elif len(args) == 3 and type(args[2]) is str:
self._handle = _c.vosk_recognizer_new_grm(args[0]._handle, args[1], args[2].encode('utf-8'))
else:
raise TypeError("Unknown arguments")
if self._handle == _ffi.NULL:
raise Exception("Failed to create a recognizer")
def __del__(self):
_c.vosk_recognizer_free(self._handle)
def SetMaxAlternatives(self, max_alternatives):
_c.vosk_recognizer_set_max_alternatives(self._handle, max_alternatives)
def SetWords(self, enable_words):
_c.vosk_recognizer_set_words(self._handle, 1 if enable_words else 0)
def SetSpkModel(self, spk_model):
_c.vosk_recognizer_set_spk_model(self._handle, spk_model._handle)
def AcceptWaveform(self, data):
res = _c.vosk_recognizer_accept_waveform(self._handle, data, len(data))
if res < 0:
raise Exception("Failed to process waveform")
return res
def Result(self):
return _ffi.string(_c.vosk_recognizer_result(self._handle)).decode('utf-8')
def PartialResult(self):
return _ffi.string(_c.vosk_recognizer_partial_result(self._handle)).decode('utf-8')
def FinalResult(self):
return _ffi.string(_c.vosk_recognizer_final_result(self._handle)).decode('utf-8')
def Reset(self):
return _c.vosk_recognizer_reset(self._handle)
def SetLogLevel(level):
return _c.vosk_set_log_level(level)
def GpuInit():
_c.vosk_gpu_init()
def GpuThreadInit():
_c.vosk_gpu_thread_init()

View File

@ -0,0 +1,10 @@
# auto-generated file
import _cffi_backend
ffi = _cffi_backend.FFI('vosk.vosk_cffi',
_version = 0x2601,
_types = b'\x00\x00\x04\x0D\x00\x00\x43\x03\x00\x00\x00\x0F\x00\x00\x15\x0D\x00\x00\x40\x03\x00\x00\x0D\x01\x00\x00\x00\x0F\x00\x00\x15\x0D\x00\x00\x04\x11\x00\x00\x0D\x01\x00\x00\x42\x03\x00\x00\x00\x0F\x00\x00\x15\x0D\x00\x00\x04\x11\x00\x00\x0D\x01\x00\x00\x01\x11\x00\x00\x00\x0F\x00\x00\x0A\x0D\x00\x00\x01\x11\x00\x00\x00\x0F\x00\x00\x01\x0D\x00\x00\x41\x03\x00\x00\x00\x0F\x00\x00\x1E\x0D\x00\x00\x04\x11\x00\x00\x01\x11\x00\x00\x00\x0F\x00\x00\x1E\x0D\x00\x00\x15\x11\x00\x00\x01\x11\x00\x00\x07\x01\x00\x00\x00\x0F\x00\x00\x1E\x0D\x00\x00\x15\x11\x00\x00\x05\x03\x00\x00\x07\x01\x00\x00\x00\x0F\x00\x00\x1E\x0D\x00\x00\x15\x11\x00\x00\x44\x03\x00\x00\x07\x01\x00\x00\x00\x0F\x00\x00\x45\x0D\x00\x00\x04\x11\x00\x00\x00\x0F\x00\x00\x45\x0D\x00\x00\x15\x11\x00\x00\x00\x0F\x00\x00\x45\x0D\x00\x00\x15\x11\x00\x00\x0A\x11\x00\x00\x00\x0F\x00\x00\x45\x0D\x00\x00\x15\x11\x00\x00\x07\x01\x00\x00\x00\x0F\x00\x00\x45\x0D\x00\x00\x0A\x11\x00\x00\x00\x0F\x00\x00\x45\x0D\x00\x00\x07\x01\x00\x00\x00\x0F\x00\x00\x45\x0D\x00\x00\x00\x0F\x00\x00\x00\x09\x00\x00\x01\x09\x00\x00\x02\x09\x00\x00\x02\x01\x00\x00\x05\x01\x00\x00\x00\x01',
_globals = (b'\x00\x00\x3E\x23vosk_gpu_init',0,b'\x00\x00\x3E\x23vosk_gpu_thread_init',0,b'\x00\x00\x17\x23vosk_model_find_word',0,b'\x00\x00\x2A\x23vosk_model_free',0,b'\x00\x00\x00\x23vosk_model_new',0,b'\x00\x00\x1B\x23vosk_recognizer_accept_waveform',0,b'\x00\x00\x20\x23vosk_recognizer_accept_waveform_f',0,b'\x00\x00\x25\x23vosk_recognizer_accept_waveform_s',0,b'\x00\x00\x14\x23vosk_recognizer_final_result',0,b'\x00\x00\x2D\x23vosk_recognizer_free',0,b'\x00\x00\x03\x23vosk_recognizer_new',0,b'\x00\x00\x0C\x23vosk_recognizer_new_grm',0,b'\x00\x00\x07\x23vosk_recognizer_new_spk',0,b'\x00\x00\x14\x23vosk_recognizer_partial_result',0,b'\x00\x00\x2D\x23vosk_recognizer_reset',0,b'\x00\x00\x14\x23vosk_recognizer_result',0,b'\x00\x00\x34\x23vosk_recognizer_set_max_alternatives',0,b'\x00\x00\x30\x23vosk_recognizer_set_spk_model',0,b'\x00\x00\x34\x23vosk_recognizer_set_words',0,b'\x00\x00\x3B\x23vosk_set_log_level',0,b'\x00\x00\x38\x23vosk_spk_model_free',0,b'\x00\x00\x11\x23vosk_spk_model_new',0),
_struct_unions = ((b'\x00\x00\x00\x40\x00\x00\x00\x10VoskModel',),(b'\x00\x00\x00\x41\x00\x00\x00\x10VoskRecognizer',),(b'\x00\x00\x00\x42\x00\x00\x00\x10VoskSpkModel',)),
_typenames = (b'\x00\x00\x00\x40VoskModel',b'\x00\x00\x00\x41VoskRecognizer',b'\x00\x00\x00\x42VoskSpkModel'),
)