@@ -11,6 +11,10 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Install native QVAC runtime libraries
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y --no-install-recommends libvulkan1 mesa-vulkan-drivers
|
||||
- uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 22
|
||||
|
||||
@@ -60,8 +60,8 @@ QVAC TTS numeric arrays contain signed 16-bit samples, not bytes. Supertonic
|
||||
plays at 44.1 kHz. Captured utterances use the non-streaming transcription API
|
||||
because local VAD already supplies utterance boundaries.
|
||||
|
||||
CI pins the native engines, verifies their registration inside the staged
|
||||
release, and synthesizes a sentence then transcribes it with Whisper. Voice
|
||||
CI installs the Vulkan runtime required by the native addons, pins the native
|
||||
engines, verifies their registration inside the staged release, and synthesizes a sentence then transcribes it with Whisper. Voice
|
||||
models download into a temporary CI cache. Both the archive and Debian package
|
||||
include the validated Bare runtime and native dependencies. The release gate
|
||||
requires model download access; it fails rather than publishing an untested
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
import { qvacSdk } from '../daemon/qvac-master.js';
|
||||
const sdk = await qvacSdk();
|
||||
let sdk;
|
||||
try {
|
||||
sdk = await qvacSdk();
|
||||
} catch (error) {
|
||||
throw new Error(`Voice runtime could not initialize native QVAC plugins. Install libvulkan1 and a Vulkan driver on the build host. ${error.message}`, { cause: error });
|
||||
}
|
||||
for (const type of ['llamacpp-completion', 'whispercpp-transcription', 'tts-ggml']) {
|
||||
if (!sdk.hasPlugin(type)) throw new Error(`Release is missing registered plugin: ${type}`);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user