Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 8 additions & 4 deletions ports/ggml-speech/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO tetherto/qvac-ext-ggml
REF 4cec2d3a64382eb09eff51fb114eba0f96abf4eb
SHA512 54ee88636d8157cab54455c9a9de7b5c0cd327db62e3832016abddb83956743e99b7706d0567058e0484f2705d3fd0588468443e32431b2044e369906918b48f
REF de7a55e3eea087bed6484607b518d60a3366acbe
SHA512 160588159ca6cbd99ba2ebe0269ed8ae4a0672f6e296bec37cd94d75ea11090bc525211dcbb055239c65d49c5f844f204d68790cbadf5b8b4dae8d564fc52a74
HEAD_REF speech
)

Expand Down Expand Up @@ -74,8 +74,9 @@ if(VCPKG_TARGET_IS_IOS)
list(APPEND PLATFORM_OPTIONS -DGGML_BLAS=OFF -DGGML_ACCELERATE=OFF)
endif()

# Hybrid Android backend mode: GPU backends as MODULE .so loaded via dlopen,
# CPU statically linked.
# Hybrid Android backend mode: GPU backends as MODULE .so loaded at runtime
# via dlopen, CPU statically linked into the consumer's binary. Relies on the
# `cmake: support qvac hybrid backend packaging` patch on the speech branch.
if(VCPKG_TARGET_IS_ANDROID)
list(APPEND PLATFORM_OPTIONS
-DGGML_BACKEND_DL=ON
Expand Down Expand Up @@ -107,6 +108,9 @@ vcpkg_cmake_configure(

vcpkg_cmake_install()

# Pick up the MODULE backend .so files ggml builds into the buildtree's
# bin/ directory (Android dynamic-backend mode). cmake install() doesn't
# move them by default.
if(VCPKG_TARGET_IS_ANDROID)
file(GLOB _backend_sos
"${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/bin/libqvac-speech-ggml-*.so"
Expand Down
1 change: 1 addition & 0 deletions ports/ggml-speech/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"name": "ggml-speech",
"version-date": "2026-04-09",
"port-version": 1,
"description": "Speech-stack flavour of ggml from tetherto/qvac-ext-ggml@speech. Library filenames are prefixed libqvac-speech-ggml-* so they coexist with libqvac-ggml-* (fabric/llm) and libqvac-diffusion-ggml-* on the same Android device. Mutually exclusive with the regular ggml port in the same triplet -- pick one per build.",
"homepage": "https://github.com/tetherto/qvac-ext-ggml/tree/speech",
"license": "MIT",
Expand Down
4 changes: 2 additions & 2 deletions ports/parakeet-cpp/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ set(VCPKG_BUILD_TYPE release)
vcpkg_from_github(
OUT_SOURCE_PATH WHISPER_CPP_SRC
REPO tetherto/qvac-ext-lib-whisper.cpp
REF a6785de37dd63c43d1ea6b4c044ce7100e3c4cf7
SHA512 5de94633bfa31c709fcb115a4d9386fd136c27ac9a4bf1f45aad565e64030720bd8525495678d68008ea4020d983d6391a70b292ffd7a4975aa4ce75f42bfb16
REF 0b446740a9f8cbc217153ee960ab2c255e8c220f
SHA512 9eb64d8d4450f0902b7825a23574a5e8a5f3d190b70cd3730e60a2f2c763b2fca598a652ec07c8bdecb27bd3bbbaf6968e11dd345ecee68245f1b708405964ff
HEAD_REF master
)

Expand Down
3 changes: 2 additions & 1 deletion ports/parakeet-cpp/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
{
"name": "parakeet-cpp",
"version-date": "2026-05-05",
"port-version": 1,
"description": "Parakeet (NVIDIA FastConformer ASR + Sortformer diarization) inference in pure C++/ggml. Ships CTC, TDT, EOU and Sortformer engines under one Engine umbrella, plus the cross-engine StreamEvent API (VadStateChanged / EndOfTurn). Sourced from tetherto/qvac-ext-lib-whisper.cpp's parakeet-cpp/ subfolder; consumes the ggml-speech port.",
"homepage": "https://github.com/tetherto/qvac-ext-lib-whisper.cpp/tree/master/parakeet-cpp",
"license": "MIT",
"dependencies": [
{
"name": "ggml-speech",
"version>=": "2026-04-09"
"version>=": "2026-04-09#1"
},
{
"name": "vcpkg-cmake",
Expand Down
74 changes: 74 additions & 0 deletions ports/tts-cpp/portfile.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
# tts-cpp: Resemble Chatterbox + Supertonic TTS in pure C++/ggml.
# Sourced from the tts-cpp/ subfolder of tetherto/qvac-ext-lib-whisper.cpp;
# consumes the ggml-speech port.

set(VCPKG_POLICY_MISMATCHED_NUMBER_OF_BINARIES enabled)
set(VCPKG_BUILD_TYPE release)

vcpkg_from_github(
OUT_SOURCE_PATH WHISPER_CPP_SRC
REPO tetherto/qvac-ext-lib-whisper.cpp
REF 0b446740a9f8cbc217153ee960ab2c255e8c220f
SHA512 9eb64d8d4450f0902b7825a23574a5e8a5f3d190b70cd3730e60a2f2c763b2fca598a652ec07c8bdecb27bd3bbbaf6968e11dd345ecee68245f1b708405964ff
HEAD_REF master
)

set(SOURCE_PATH "${WHISPER_CPP_SRC}/tts-cpp")
if (NOT EXISTS "${SOURCE_PATH}/CMakeLists.txt")
message(FATAL_ERROR
"tts-cpp: ${SOURCE_PATH}/CMakeLists.txt missing; the tts-cpp/ "
"subfolder layout in qvac-ext-lib-whisper.cpp may have changed.")
endif()

set(GGML_METAL OFF)
set(GGML_VULKAN OFF)
set(GGML_CUDA OFF)
set(GGML_OPENCL OFF)
if("metal" IN_LIST FEATURES)
set(GGML_METAL ON)
endif()
if("vulkan" IN_LIST FEATURES)
set(GGML_VULKAN ON)
endif()
if("cuda" IN_LIST FEATURES)
set(GGML_CUDA ON)
endif()
if("opencl" IN_LIST FEATURES)
set(GGML_OPENCL ON)
endif()

vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
DISABLE_PARALLEL_CONFIGURE
OPTIONS
-DTTS_CPP_BUILD_LIBRARY=ON
-DTTS_CPP_BUILD_SHARED=OFF
-DTTS_CPP_BUILD_EXECUTABLES=OFF
-DTTS_CPP_BUILD_TESTS=OFF
-DTTS_CPP_INSTALL=ON
-DTTS_CPP_USE_SYSTEM_GGML=ON
-DBUILD_SHARED_LIBS=OFF
-DGGML_NATIVE=OFF
-DGGML_OPENMP=OFF
-DTTS_CPP_OPENMP=OFF
-DGGML_CCACHE=OFF
-DTTS_CPP_CCACHE=OFF
-DGGML_METAL=${GGML_METAL}
-DGGML_VULKAN=${GGML_VULKAN}
-DGGML_CUDA=${GGML_CUDA}
-DGGML_OPENCL=${GGML_OPENCL}
)

vcpkg_cmake_install()

vcpkg_cmake_config_fixup(PACKAGE_NAME tts-cpp CONFIG_PATH share/tts-cpp)

file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")

if (VCPKG_LIBRARY_LINKAGE MATCHES "static")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/bin")
endif()

vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
81 changes: 81 additions & 0 deletions ports/tts-cpp/vcpkg.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
{
"name": "tts-cpp",
"version-date": "2026-05-07",
"description": "Text-to-speech inference in pure C++/ggml. Ships Resemble Chatterbox (Turbo + Multilingual variants) and Supertonic engines under a unified Engine API. Sourced from tetherto/qvac-ext-lib-whisper.cpp's tts-cpp/ subfolder; consumes the ggml-speech port.",
"homepage": "https://github.com/tetherto/qvac-ext-lib-whisper.cpp/tree/master/tts-cpp",
"license": "MIT",
"dependencies": [
{
"name": "ggml-speech",
"version>=": "2026-04-09#1"
},
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
],
"default-features": [
{
"name": "metal",
"platform": "osx | ios"
},
{
"name": "opencl",
"platform": "android"
},
{
"name": "vulkan",
"platform": "windows | linux | android"
}
],
"features": {
"cuda": {
"description": "Enable CUDA GPU acceleration",
"dependencies": [
{
"name": "ggml-speech",
"features": [
"cuda"
]
}
]
},
"metal": {
"description": "Enable Metal GPU acceleration (macOS / iOS)",
"dependencies": [
{
"name": "ggml-speech",
"features": [
"metal"
]
}
]
},
"opencl": {
"description": "Enable OpenCL GPU acceleration (Android / Adreno)",
"dependencies": [
{
"name": "ggml-speech",
"features": [
"opencl"
]
}
]
},
"vulkan": {
"description": "Enable Vulkan GPU acceleration",
"dependencies": [
{
"name": "ggml-speech",
"features": [
"vulkan"
]
}
]
}
}
}
8 changes: 6 additions & 2 deletions versions/baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
},
"ggml-speech": {
"baseline": "2026-04-09",
"port-version": 0
"port-version": 1
},
"intgemm": {
"baseline": "1.0.0",
Expand Down Expand Up @@ -54,7 +54,7 @@
},
"parakeet-cpp": {
"baseline": "2026-05-05",
"port-version": 0
"port-version": 1
},
"protobuf": {
"baseline": "onnxruntime",
Expand Down Expand Up @@ -104,6 +104,10 @@
"baseline": "0.1.1",
"port-version": 2
},
"tts-cpp": {
"baseline": "2026-05-07",
"port-version": 0
},
"vcpkg-cmake": {
"baseline": "2024-04-23",
"port-version": 0
Expand Down
5 changes: 5 additions & 0 deletions versions/g-/ggml-speech.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "ee31a48f4420f6cca6f6962f3c5f690f82d6eb2d",
"version-date": "2026-04-09",
"port-version": 1
},
{
"git-tree": "4b88387aa1180ed87d096bc155eede139af06c5c",
"version-date": "2026-04-09",
Expand Down
5 changes: 5 additions & 0 deletions versions/p-/parakeet-cpp.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "59736cc4154da6f1a5ece583d470fb08f7265386",
"version-date": "2026-05-05",
"port-version": 1
},
{
"git-tree": "c4a462d244370ff2501ac6c48fb33f869a5f7c0b",
"version-date": "2026-05-05",
Expand Down
9 changes: 9 additions & 0 deletions versions/t-/tts-cpp.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"versions": [
{
"git-tree": "0e910c4d21965556cb40d4fdd991ab104bcdaff0",
"version-date": "2026-05-07",
"port-version": 0
}
]
}