mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-02 11:41:34 +00:00
* feat: add Fish Audio speech support * chore: remove unused speech exports * chore: keep Fish API constant private * test: remove stale code mode import * style: use bracket access for Fish voice ids * test: restore QA evidence validator import
52 lines
1.9 KiB
Swift
52 lines
1.9 KiB
Swift
// swift-tools-version: 6.2
|
|
// Isolated MLX TTS helper package. Keep this out of apps/macos/Package.swift so
|
|
// normal macOS app tests do not compile the full MLX audio stack.
|
|
|
|
import PackageDescription
|
|
|
|
let package = Package(
|
|
name: "OpenClawMLXTTS",
|
|
platforms: [
|
|
.macOS(.v15),
|
|
],
|
|
products: [
|
|
.executable(name: "openclaw-mlx-tts", targets: ["OpenClawMLXTTSHelper"]),
|
|
],
|
|
dependencies: [
|
|
// Progressive Fish chunks and cancellation from upstream PR #237.
|
|
.package(
|
|
url: "https://github.com/Blaizzy/mlx-audio-swift",
|
|
revision: "2de211cf80ada19a75f291e491430e2af8e4befe"),
|
|
.package(path: "../shared/OpenClawMLXTTSProtocol"),
|
|
],
|
|
targets: [
|
|
.target(
|
|
name: "OpenClawMLXTTSRuntime",
|
|
dependencies: [
|
|
.product(name: "MLXAudioCore", package: "mlx-audio-swift"),
|
|
.product(name: "MLXAudioTTS", package: "mlx-audio-swift"),
|
|
.product(name: "OpenClawMLXTTSProtocol", package: "OpenClawMLXTTSProtocol"),
|
|
],
|
|
swiftSettings: [
|
|
.enableUpcomingFeature("StrictConcurrency"),
|
|
]),
|
|
.executableTarget(
|
|
name: "OpenClawMLXTTSHelper",
|
|
dependencies: [
|
|
"OpenClawMLXTTSRuntime",
|
|
.product(name: "OpenClawMLXTTSProtocol", package: "OpenClawMLXTTSProtocol"),
|
|
],
|
|
swiftSettings: [
|
|
.enableUpcomingFeature("StrictConcurrency"),
|
|
]),
|
|
.testTarget(
|
|
name: "OpenClawMLXTTSRuntimeTests",
|
|
dependencies: [
|
|
"OpenClawMLXTTSRuntime",
|
|
.product(name: "OpenClawMLXTTSProtocol", package: "OpenClawMLXTTSProtocol"),
|
|
],
|
|
swiftSettings: [
|
|
.enableUpcomingFeature("StrictConcurrency"),
|
|
]),
|
|
])
|