@@ -11,6 +11,10 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- 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
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version: 22
|
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
|
plays at 44.1 kHz. Captured utterances use the non-streaming transcription API
|
||||||
because local VAD already supplies utterance boundaries.
|
because local VAD already supplies utterance boundaries.
|
||||||
|
|
||||||
CI pins the native engines, verifies their registration inside the staged
|
CI installs the Vulkan runtime required by the native addons, pins the native
|
||||||
release, and synthesizes a sentence then transcribes it with Whisper. Voice
|
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
|
models download into a temporary CI cache. Both the archive and Debian package
|
||||||
include the validated Bare runtime and native dependencies. The release gate
|
include the validated Bare runtime and native dependencies. The release gate
|
||||||
requires model download access; it fails rather than publishing an untested
|
requires model download access; it fails rather than publishing an untested
|
||||||
|
|||||||
@@ -1,5 +1,10 @@
|
|||||||
import { qvacSdk } from '../daemon/qvac-master.js';
|
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']) {
|
for (const type of ['llamacpp-completion', 'whispercpp-transcription', 'tts-ggml']) {
|
||||||
if (!sdk.hasPlugin(type)) throw new Error(`Release is missing registered plugin: ${type}`);
|
if (!sdk.hasPlugin(type)) throw new Error(`Release is missing registered plugin: ${type}`);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user