Начало работы — Linux
speech-core включает C API для встраиваемых Linux-платформ (автомобильные, Yocto, edge-устройства) в examples/linux/. Тот же C++-движок пайплайна, что питает Android, с поддержкой ARM64 и x86_64. ONNX Runtime автоматически подтягивается скриптом настройки.
Требования
- Linux ARM64 или x86_64
- cmake 3.16+, build-essential
- libasound2-dev (для ALSA-демо — опционально)
Настройка
git clone https://github.com/soniqo/speech-core.git
cd speech-core
./examples/linux/setup_linux.sh
cmake -B build \
-DCMAKE_BUILD_TYPE=Release \
-DSPEECH_CORE_WITH_ONNX=ON \
-DSPEECH_CORE_BUILD_EXAMPLES=ON \
-DORT_DIR=ort-linux
cmake --build build
# Опционально — запустить интеграционные тесты на реальных моделях
scripts/download_models.sh
SPEECH_MODEL_DIR=scripts/models ctest --test-dir build --output-on-failure
Пример C API
#include <speech.h>
void on_event(const speech_event_t* event, void* ctx) {
if (event->type == SPEECH_EVENT_TRANSCRIPTION)
printf("%s\n", event->text);
}
speech_config_t cfg = speech_config_default();
cfg.model_dir = "/opt/speech/models";
speech_pipeline_t p = speech_create(cfg, on_event, NULL);
speech_start(p);
speech_push_audio(p, samples, 512);
Важно
Для кросс-компиляции под Yocto установите ORT_DIR на вашу установку ONNX Runtime в sysroot и используйте соответствующий CMake toolchain-файл.
Исходный код: github.com/soniqo/speech-core/tree/main/examples/linux
Следующие шаги
- Начало работы с Android — настройка Android SDK
- Бенчмарки — производительность инференса Android/Linux