The Swift Package Index logo.Swift Package Index

Build Information

Successful build of MLXAudio, reference main (d302a5), with Swift 6.4 for macOS (SPM) on 25 Sep 2026 01:28:54 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/gaelic-ghost/mlx-audio-swift.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/gaelic-ghost/mlx-audio-swift
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at d302a5c Improve Voices STT controls and MOSS streaming (#223)
Cloned https://github.com/gaelic-ghost/mlx-audio-swift.git
Revision (git rev-parse @):
d302a5c6080d2bb97bae38c7418f82abb76013b6
SUCCESS checkout https://github.com/gaelic-ghost/mlx-audio-swift.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.4
Building package at path:  $PWD
https://github.com/gaelic-ghost/mlx-audio-swift.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Computing dependencies]
[Constructing description]
[Pre-planning 1 / 1591]
[Planning 947 / 1591]
[Planning deferred tasks]
[Constructing 1537 / 3577]
[52 / 784] _NumericsShims
[271 / 784]
[287 / 784]
[295 / 789] _NumericsShims
[305 / 829]
[316 / 829] RealModule
[317 / 829]
[319 / 829] RealModule
[334 / 844]
[338 / 880]
[347 / 880] InternalCollectionsUtilities
[357 / 880] InternalCollectionsUtilities
[365 / 881] OrderedCollections
[371 / 881] RealModule
[381 / 904] ComplexModule
[383 / 904]
[389 / 904] ComplexModule
[396 / 904] InternalCollectionsUtilities
[400 / 904] InternalCollectionsUtilities
[404 / 904] ComplexModule
[413 / 904]
[419 / 908] Numerics
[439 / 909]
[442 / 909]
[446 / 920]
[448 / 936]
[449 / 936]
[451 / 936]
[452 / 936]
[453 / 936]
[454 / 936]
[464 / 936] ArgumentParser
[470 / 936] EventSource
[483 / 936] Jinja
[498 / 936] Jinja-product
[499 / 936] Jinja-product
[501 / 936] Jinja
[502 / 936] Jinja
[502 / 936] EventSource
[510 / 936] Crypto
[514 / 936] ArgumentParser-product
[520 / 936]
[522 / 937] EventSource
[525 / 938] Crypto
[525 / 938] encuda-product
[530 / 944] encuda-product
[534 / 944] Jinja
[534 / 944] encuda-product
[535 / 944] HuggingFace
[545 / 982]
[556 / 982]
[559 / 982]
[574 / 983] Cmlx
[578 / 983]
[580 / 983]
[581 / 996]
[583 / 996] Cmlx
[585 / 996] Cmlx
[586 / 996]
[589 / 996] Cmlx
[590 / 996] HuggingFace
[593 / 996] Cmlx
[595 / 996] Cmlx
[596 / 996] MLX
[605 / 996] Cmlx
[609 / 996] Cmlx
[613 / 996] Cmlx
[618 / 996] Cmlx
[620 / 996] Cmlx
[621 / 996] Cmlx
[623 / 996] Cmlx
[625 / 996] HuggingFace
[633 / 996] Cmlx
[635 / 996] Cmlx
[639 / 996] Cmlx
[640 / 996] Cmlx
[641 / 996] Cmlx
[642 / 996] Cmlx
[644 / 996] Cmlx
[645 / 996] Cmlx
[648 / 996] Cmlx
[649 / 996] Cmlx
[652 / 996] Cmlx
[655 / 996] Cmlx
[657 / 996] Cmlx
[659 / 996] Cmlx
[660 / 996] Cmlx
[661 / 996] Cmlx
[662 / 996] Cmlx
[663 / 996] Cmlx
[664 / 996] Cmlx
[666 / 996] Cmlx
[667 / 996] Cmlx
[668 / 996] Cmlx
[669 / 996] Cmlx
[671 / 996] Cmlx
[674 / 996] Cmlx
[675 / 996] Cmlx
[677 / 996] Cmlx
[678 / 996] Cmlx
[680 / 996] Cmlx
[683 / 996] Cmlx
[684 / 996] Cmlx
[685 / 996] Cmlx
[686 / 996] Cmlx
[689 / 996] Cmlx
[692 / 996] Cmlx
[694 / 996] Cmlx
[697 / 996] Cmlx
[701 / 996] Cmlx
[705 / 996] Cmlx
[707 / 996] Cmlx
[708 / 996] Cmlx
[710 / 996] Cmlx
[713 / 996] Cmlx
[715 / 996] Cmlx
[716 / 996] Cmlx
[717 / 996] Cmlx
[718 / 996] Cmlx
[719 / 996] Cmlx
[720 / 996] Cmlx
[721 / 996] Cmlx
[724 / 996] Cmlx
[726 / 996] Cmlx
[729 / 996] Cmlx
[730 / 996] Cmlx
[732 / 996] Cmlx
[734 / 996] Cmlx
[735 / 996] Cmlx
[736 / 996] Cmlx
[737 / 996] Cmlx
[741 / 996] Cmlx
[745 / 996] Cmlx
[746 / 996] Cmlx
[747 / 996] Cmlx
[749 / 996] Cmlx
[750 / 996] Cmlx
[752 / 996] Cmlx
[754 / 996] Cmlx
[755 / 996] Cmlx
[760 / 996] Cmlx
[762 / 996] Cmlx
[765 / 996] MLX
[766 / 996] MLX
[767 / 996] MLX
[768 / 996] MLX
[770 / 996] MLX-product
[773 / 996] MLX
[774 / 996] MLX
[776 / 996] HuggingFace
[778 / 996] HuggingFace
[780 / 996] HuggingFace-product
[784 / 996] MLX
[785 / 996] Hub
[786 / 996] Hub
[798 / 1027]
[799 / 1027] HuggingFace
[805 / 1027]
[806 / 1027] HuggingFace
[809 / 1027]
[810 / 1027] HuggingFace
[811 / 1027]
[813 / 1027]
[818 / 1028] MLXNN
[822 / 1030]
[824 / 1030]
[826 / 1030]
[829 / 1030]
[837 / 1044] MLXFast
[838 / 1044]
[848 / 1116]
[852 / 1116]
[865 / 1116] MLXNN
[872 / 1116] MLXAudioG2P
[880 / 1119] MLXAudioCore
[883 / 1119]
[886 / 1119]
[887 / 1119]
[893 / 1133] MLXAudioG2P
[900 / 1133] MLXOptimizers
[912 / 1133]
[918 / 1152]
[926 / 1152] MLXAudioG2P
[929 / 1152]
[933 / 1153] MLXAudioG2P
[939 / 1153]
[944 / 1153]
[945 / 1153]
[948 / 1154] MLXLMCommon
[957 / 1164] MLXLMCommon
[959 / 1164] MLXLMCommon
[961 / 1164] MLXAudioCore
[976 / 1164]
[982 / 1164]
[987 / 1164] MLXLMCommon-product
[991 / 1164] MLXAudioCore
[992 / 1164]
[994 / 1164]
[995 / 1164] MLXAudioCore
[999 / 1164] MLXAudioCore-product
[1002 / 1164]
[1004 / 1166] MLXAudioCore
[1009 / 1166] Cmlx
[1020 / 1166] MLXAudioVAD
[1030 / 1188] MLXLLM
[1031 / 1188] Hub
[1035 / 1188] MLXLLM
[1039 / 1188] MLXAudioVAD
[1046 / 1188] Hub
[1053 / 1188] MLXLLM
[1055 / 1188] MLXLLM
[1063 / 1188] Hub
[1066 / 1188] Hub
[1069 / 1189]
[1071 / 1189] MLXAudioG2P-product
[1071 / 1189] Hub
[1071 / 1189] Tokenizers
[1078 / 1200] Tokenizers
[1079 / 1200] Tokenizers
[1082 / 1200] Tokenizers
[1086 / 1200] Tokenizers
[1089 / 1201] Tokenizers
[1094 / 1201] Hub
[1095 / 1201] Generation
[1106 / 1212] Generation
[1113 / 1213] Generation
[1115 / 1213] Models
[1119 / 1217] Models
[1126 / 1218] Models
[1128 / 1218] MLXAudioCodecs
[1131 / 1232]
[1142 / 1232] MLXAudioCodecs
[1154 / 1236]
[1154 / 1236] MLXAudioCodecs
[1154 / 1236] mlx-audio-swift-codec-product
[1156 / 1238] MLXAudioLID
[1164 / 1259] MLXAudioTTS
[1166 / 1270] MLXAudioSTT
[1178 / 1270] mlx-audio-swift-codec-product
[1181 / 1270] MLXAudioTTS
[1182 / 1270] MLXAudioTTS
[1185 / 1270] MLXAudioSTT
[1191 / 1270] MLXAudioTTS
[1193 / 1270] MLXAudioTTS
[1195 / 1270] MLXAudioTTS
[1196 / 1270] MLXAudioTTS
[1202 / 1270] mlx-audio-swift-stt-product
[1203 / 1270] mlx-audio-swift-tts-product
[1204 / 1270] mlx-audio-swift-tts-product
[1205 / 1270] MLXAudioSTS
[1206 / 1270] mlx-audio-swift-lid-product
[1209 / 1270] MLXAudioCodecs
[1217 / 1271]
[1220 / 1273]
[1221 / 1274]
[1222 / 1274] mlx-audio-swift-tts-product
[1228 / 1280] mlx-audio-swift-stt-product
[1231 / 1292] mlx-audio-swift-lid-product
[1237 / 1292] mlx-audio-swift-lid-product
[1239 / 1292] mlx-audio-swift-stt-product
[1247 / 1292] MLXAudioSTS
[1249 / 1292] MLXAudioSTS
[1251 / 1292] MLXAudioSTS
[1254 / 1292] MLXAudioSTS
[1263 / 1293]
[1264 / 1293]
[1266 / 1294]
[1269 / 1294]
[1271 / 1296] MLXAudioTTS-product
[1276 / 1298] mlx-audio-swift-sts-product
[1283 / 1298] MLXAudioUI
[1284 / 1298] MLXAudioSTS
[1284 / 1298] mlx-audio-swift-stt-product
[1286 / 1298] mlx-audio-swift-stt-product
[1288 / 1298] mlx-audio-swift-sts-product
[1294 / 1298]
[1296 / 1298] MLXAudioUI-product
[1296 / 1298] mlx-audio-swift-sts-product
[1297 / 1298] mlx-audio-swift-sts-product
Build complete! (62.86 sec)
Fetching https://github.com/ml-explore/mlx-swift-lm.git
Fetching https://github.com/huggingface/swift-huggingface.git
Fetching https://github.com/ml-explore/mlx-swift.git
Fetching https://github.com/huggingface/swift-transformers.git
[1/2753] Fetching swift-huggingface
[2/9779] Fetching swift-huggingface, swift-transformers
[3598/26720] Fetching swift-huggingface, swift-transformers, mlx-swift
[18420/47898] Fetching swift-huggingface, swift-transformers, mlx-swift, mlx-swift-lm
Fetched https://github.com/ml-explore/mlx-swift.git (5.33s)
Fetched https://github.com/ml-explore/mlx-swift-lm.git (5.33s)
Fetched https://github.com/huggingface/swift-huggingface.git (5.33s)
Fetched https://github.com/huggingface/swift-transformers.git (5.33s)
Computing version for https://github.com/ml-explore/mlx-swift-lm.git
Computed https://github.com/ml-explore/mlx-swift-lm.git at 3.31.4 (6.01s)
Fetching https://github.com/swiftlang/swift-syntax.git
[1/80067] Fetching swift-syntax
Fetched https://github.com/swiftlang/swift-syntax.git (5.98s)
Computing version for https://github.com/ml-explore/mlx-swift.git
Computed https://github.com/ml-explore/mlx-swift.git at 0.31.6 (6.66s)
Fetching https://github.com/apple/swift-argument-parser
Fetching https://github.com/apple/swift-numerics
[1/6640] Fetching swift-numerics
[466/25581] Fetching swift-numerics, swift-argument-parser
Fetched https://github.com/apple/swift-numerics (1.33s)
[1137/18941] Fetching swift-argument-parser
Fetched https://github.com/apple/swift-argument-parser (1.83s)
Computing version for https://github.com/swiftlang/swift-syntax.git
Computed https://github.com/swiftlang/swift-syntax.git at 603.0.2 (4.77s)
Computing version for https://github.com/huggingface/swift-huggingface.git
Computed https://github.com/huggingface/swift-huggingface.git at 0.11.0 (0.59s)
Fetching https://github.com/apple/swift-crypto.git
Fetching https://github.com/mattt/EventSource.git
[1/303] Fetching eventsource
[120/18852] Fetching eventsource, swift-crypto
Fetched https://github.com/mattt/EventSource.git (3.29s)
Fetched https://github.com/apple/swift-crypto.git (3.29s)
Computing version for https://github.com/apple/swift-numerics
Computed https://github.com/apple/swift-numerics at 1.1.1 (3.90s)
Computing version for https://github.com/huggingface/swift-transformers.git
Computed https://github.com/huggingface/swift-transformers.git at 1.3.4 (0.61s)
Fetching https://github.com/huggingface/swift-jinja.git
Fetching https://github.com/apple/swift-collections.git
Fetching https://github.com/ibireme/yyjson.git
[1/1376] Fetching swift-jinja
[992/6275] Fetching swift-jinja, yyjson
[1378/33977] Fetching swift-jinja, yyjson, swift-collections
Fetched https://github.com/huggingface/swift-jinja.git (1.86s)
[7393/32601] Fetching yyjson, swift-collections
Fetched https://github.com/apple/swift-collections.git (3.49s)
Fetched https://github.com/ibireme/yyjson.git (3.49s)
Computing version for https://github.com/ibireme/yyjson.git
Computed https://github.com/ibireme/yyjson.git at 0.12.0 (4.23s)
Computing version for https://github.com/huggingface/swift-jinja.git
Computed https://github.com/huggingface/swift-jinja.git at 2.5.1 (0.63s)
Computing version for https://github.com/mattt/EventSource.git
Computed https://github.com/mattt/EventSource.git at 1.5.1 (0.62s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.7.0 (0.70s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.8.2 (0.60s)
Computing version for https://github.com/apple/swift-crypto.git
Computed https://github.com/apple/swift-crypto.git at 4.5.2 (2.26s)
Fetching https://github.com/apple/swift-asn1.git
[1/1983] Fetching swift-asn1
Fetched https://github.com/apple/swift-asn1.git (1.50s)
Computing version for https://github.com/apple/swift-asn1.git
Computed https://github.com/apple/swift-asn1.git at 1.7.3 (2.20s)
Creating working copy for https://github.com/swiftlang/swift-syntax.git
Working copy of https://github.com/swiftlang/swift-syntax.git resolved at 603.0.2
Creating working copy for https://github.com/apple/swift-asn1.git
Working copy of https://github.com/apple/swift-asn1.git resolved at 1.7.3
Creating working copy for https://github.com/ml-explore/mlx-swift.git
Working copy of https://github.com/ml-explore/mlx-swift.git resolved at 0.31.6
Creating working copy for https://github.com/huggingface/swift-huggingface.git
Working copy of https://github.com/huggingface/swift-huggingface.git resolved at 0.11.0
Creating working copy for https://github.com/apple/swift-crypto.git
Working copy of https://github.com/apple/swift-crypto.git resolved at 4.5.2
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.7.0
Creating working copy for https://github.com/huggingface/swift-transformers.git
Working copy of https://github.com/huggingface/swift-transformers.git resolved at 1.3.4
Creating working copy for https://github.com/mattt/EventSource.git
Working copy of https://github.com/mattt/EventSource.git resolved at 1.5.1
Creating working copy for https://github.com/ibireme/yyjson.git
Working copy of https://github.com/ibireme/yyjson.git resolved at 0.12.0
Creating working copy for https://github.com/apple/swift-numerics
Working copy of https://github.com/apple/swift-numerics resolved at 1.1.1
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.8.2
Creating working copy for https://github.com/ml-explore/mlx-swift-lm.git
Working copy of https://github.com/ml-explore/mlx-swift-lm.git resolved at 3.31.4
Creating working copy for https://github.com/huggingface/swift-jinja.git
Working copy of https://github.com/huggingface/swift-jinja.git resolved at 2.5.1
Downloading package prebuilt https://download.swift.org/prebuilts/swift-syntax/603.0.2/swiftlang-6.4.0.34.1-macosx27.0-MacroSupport.zip
Downloaded https://download.swift.org/prebuilts/swift-syntax/603.0.2/swiftlang-6.4.0.34.1-macosx27.0-MacroSupport.zip (1.44s)
warning: 'spi-builder-workspace': found 3 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/IrodoriTTS/README.md
    /Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/MossTTS/README.md
    /Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/OmniVoice/README.md
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/Models/SileroVAD/README.md
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/Sources/MLXAudioSTS/Models/DeepFilterNet/README.md
warning: missing creator for mutated node: ('/Users/admin/builder/spi-builder-workspace/.build/out/Products/Debug/mlx-swift_Cmlx.bundle/Contents/MacOS')
In file included from /Users/admin/builder/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx-generated/metal/steel/attn/kernels/steel_attention.metal:6:
In file included from /Users/admin/builder/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx-generated/metal/steel/attn/kernels/../../../steel/attn/kernels/steel_attention.h:3:
In file included from /Users/admin/builder/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx-generated/metal/steel/attn/kernels/../../../steel/attn/attn.h:6:
In file included from /Users/admin/builder/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx-generated/metal/steel/attn/kernels/../../../steel/attn/../../steel/attn/mma.h:11:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx-generated/metal/steel/attn/kernels/../../../steel/attn/../../steel/utils/integral_constant.h:108:6: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
  if constexpr (start < stop) {
     ^
In file included from /Users/admin/builder/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx-generated/metal/steel/attn/kernels/steel_attention.metal:6:
/Users/admin/builder/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx-generated/metal/steel/attn/kernels/../../../steel/attn/kernels/steel_attention.h:356:16: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
            if constexpr (is_bool) {
               ^
/Users/admin/builder/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx-generated/metal/steel/attn/kernels/../../../steel/attn/kernels/steel_attention.h:426:14: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
          if constexpr (BD == 128) {
             ^
/Users/admin/builder/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx-generated/metal/steel/attn/kernels/../../../steel/attn/kernels/steel_attention.h:436:14: warning: constexpr if is a C++17 extension [-Wc++17-extensions]
          if constexpr (BD == 128) {
             ^
4 warnings generated.
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioCore/Generation/GenerationTypes.swift:56:10: warning: associated value 'audio' of 'Sendable'-conforming enum 'AudioGeneration' has non-Sendable type 'MLXArray'
 54 |     case info(AudioGenerationInfo)
 55 |     /// Final generated audio
 56 |     case audio(MLXArray)
    |          `- warning: associated value 'audio' of 'Sendable'-conforming enum 'AudioGeneration' has non-Sendable type 'MLXArray'
 57 | }
 58 |
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioCore/Generation/GenerationTypes.swift:56:10: warning: associated value 'audio' of 'Sendable'-conforming enum 'AudioGeneration' has non-Sendable type 'MLXArray'
 54 |     case info(AudioGenerationInfo)
 55 |     /// Final generated audio
 56 |     case audio(MLXArray)
    |          `- warning: associated value 'audio' of 'Sendable'-conforming enum 'AudioGeneration' has non-Sendable type 'MLXArray'
 57 | }
 58 |
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/VADOutput.swift:22:16: warning: stored property 'speakerProbs' of 'Sendable'-conforming struct 'DiarizationOutput' contains non-Sendable type 'MLXArray'
20 | public struct DiarizationOutput: Sendable {
21 |     public let segments: [DiarizationSegment]
22 |     public let speakerProbs: MLXArray?
   |                `- warning: stored property 'speakerProbs' of 'Sendable'-conforming struct 'DiarizationOutput' contains non-Sendable type 'MLXArray'
23 |     public let numSpeakers: Int
24 |     public let totalTime: Double
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/VADOutput.swift:57:16: warning: stored property 'spkcache' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
55 |
56 | public struct StreamingState: Sendable {
57 |     public var spkcache: MLXArray        // (1, cache_frames, emb_dim)
   |                `- warning: stored property 'spkcache' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
58 |     public var spkcachePreds: MLXArray   // (1, cache_frames, n_spk)
59 |     public var fifo: MLXArray            // (1, fifo_frames, emb_dim)
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/VADOutput.swift:58:16: warning: stored property 'spkcachePreds' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
56 | public struct StreamingState: Sendable {
57 |     public var spkcache: MLXArray        // (1, cache_frames, emb_dim)
58 |     public var spkcachePreds: MLXArray   // (1, cache_frames, n_spk)
   |                `- warning: stored property 'spkcachePreds' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
59 |     public var fifo: MLXArray            // (1, fifo_frames, emb_dim)
60 |     public var fifoPreds: MLXArray       // (1, fifo_frames, n_spk)
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/VADOutput.swift:59:16: warning: stored property 'fifo' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
57 |     public var spkcache: MLXArray        // (1, cache_frames, emb_dim)
58 |     public var spkcachePreds: MLXArray   // (1, cache_frames, n_spk)
59 |     public var fifo: MLXArray            // (1, fifo_frames, emb_dim)
   |                `- warning: stored property 'fifo' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
60 |     public var fifoPreds: MLXArray       // (1, fifo_frames, n_spk)
61 |     public var framesProcessed: Int      // total diarization frames emitted
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/VADOutput.swift:60:16: warning: stored property 'fifoPreds' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
58 |     public var spkcachePreds: MLXArray   // (1, cache_frames, n_spk)
59 |     public var fifo: MLXArray            // (1, fifo_frames, emb_dim)
60 |     public var fifoPreds: MLXArray       // (1, fifo_frames, n_spk)
   |                `- warning: stored property 'fifoPreds' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
61 |     public var framesProcessed: Int      // total diarization frames emitted
62 |     public var meanSilEmb: MLXArray      // (1, emb_dim) running mean silence embedding
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/VADOutput.swift:62:16: warning: stored property 'meanSilEmb' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
60 |     public var fifoPreds: MLXArray       // (1, fifo_frames, n_spk)
61 |     public var framesProcessed: Int      // total diarization frames emitted
62 |     public var meanSilEmb: MLXArray      // (1, emb_dim) running mean silence embedding
   |                `- warning: stored property 'meanSilEmb' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
63 |     public var nSilFrames: MLXArray      // (1,) count of silence frames seen
64 |
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/VADOutput.swift:63:16: warning: stored property 'nSilFrames' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
61 |     public var framesProcessed: Int      // total diarization frames emitted
62 |     public var meanSilEmb: MLXArray      // (1, emb_dim) running mean silence embedding
63 |     public var nSilFrames: MLXArray      // (1,) count of silence frames seen
   |                `- warning: stored property 'nSilFrames' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
64 |
65 |     public var spkcacheLen: Int { spkcache.dim(1) }
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/Models/SileroVAD/SileroVAD.swift:18:16: warning: stored property 'lstmState' of 'Sendable'-conforming struct 'SileroVADStreamingState' contains non-Sendable type 'MLXArray'
 16 |
 17 | public struct SileroVADStreamingState: Sendable {
 18 |     public var lstmState: MLXArray?
    |                `- warning: stored property 'lstmState' of 'Sendable'-conforming struct 'SileroVADStreamingState' contains non-Sendable type 'MLXArray'
 19 |     public var context: MLXArray
 20 |     public var sampleRate: Int
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/Models/SileroVAD/SileroVAD.swift:19:16: warning: stored property 'context' of 'Sendable'-conforming struct 'SileroVADStreamingState' has non-Sendable type 'MLXArray'
 17 | public struct SileroVADStreamingState: Sendable {
 18 |     public var lstmState: MLXArray?
 19 |     public var context: MLXArray
    |                `- warning: stored property 'context' of 'Sendable'-conforming struct 'SileroVADStreamingState' has non-Sendable type 'MLXArray'
 20 |     public var sampleRate: Int
 21 |
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/VADOutput.swift:22:16: warning: stored property 'speakerProbs' of 'Sendable'-conforming struct 'DiarizationOutput' contains non-Sendable type 'MLXArray'
20 | public struct DiarizationOutput: Sendable {
21 |     public let segments: [DiarizationSegment]
22 |     public let speakerProbs: MLXArray?
   |                `- warning: stored property 'speakerProbs' of 'Sendable'-conforming struct 'DiarizationOutput' contains non-Sendable type 'MLXArray'
23 |     public let numSpeakers: Int
24 |     public let totalTime: Double
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/VADOutput.swift:57:16: warning: stored property 'spkcache' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
55 |
56 | public struct StreamingState: Sendable {
57 |     public var spkcache: MLXArray        // (1, cache_frames, emb_dim)
   |                `- warning: stored property 'spkcache' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
58 |     public var spkcachePreds: MLXArray   // (1, cache_frames, n_spk)
59 |     public var fifo: MLXArray            // (1, fifo_frames, emb_dim)
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/VADOutput.swift:58:16: warning: stored property 'spkcachePreds' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
56 | public struct StreamingState: Sendable {
57 |     public var spkcache: MLXArray        // (1, cache_frames, emb_dim)
58 |     public var spkcachePreds: MLXArray   // (1, cache_frames, n_spk)
   |                `- warning: stored property 'spkcachePreds' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
59 |     public var fifo: MLXArray            // (1, fifo_frames, emb_dim)
60 |     public var fifoPreds: MLXArray       // (1, fifo_frames, n_spk)
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/VADOutput.swift:59:16: warning: stored property 'fifo' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
57 |     public var spkcache: MLXArray        // (1, cache_frames, emb_dim)
58 |     public var spkcachePreds: MLXArray   // (1, cache_frames, n_spk)
59 |     public var fifo: MLXArray            // (1, fifo_frames, emb_dim)
   |                `- warning: stored property 'fifo' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
60 |     public var fifoPreds: MLXArray       // (1, fifo_frames, n_spk)
61 |     public var framesProcessed: Int      // total diarization frames emitted
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/VADOutput.swift:60:16: warning: stored property 'fifoPreds' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
58 |     public var spkcachePreds: MLXArray   // (1, cache_frames, n_spk)
59 |     public var fifo: MLXArray            // (1, fifo_frames, emb_dim)
60 |     public var fifoPreds: MLXArray       // (1, fifo_frames, n_spk)
   |                `- warning: stored property 'fifoPreds' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
61 |     public var framesProcessed: Int      // total diarization frames emitted
62 |     public var meanSilEmb: MLXArray      // (1, emb_dim) running mean silence embedding
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/VADOutput.swift:62:16: warning: stored property 'meanSilEmb' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
60 |     public var fifoPreds: MLXArray       // (1, fifo_frames, n_spk)
61 |     public var framesProcessed: Int      // total diarization frames emitted
62 |     public var meanSilEmb: MLXArray      // (1, emb_dim) running mean silence embedding
   |                `- warning: stored property 'meanSilEmb' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
63 |     public var nSilFrames: MLXArray      // (1,) count of silence frames seen
64 |
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/VADOutput.swift:63:16: warning: stored property 'nSilFrames' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
61 |     public var framesProcessed: Int      // total diarization frames emitted
62 |     public var meanSilEmb: MLXArray      // (1, emb_dim) running mean silence embedding
63 |     public var nSilFrames: MLXArray      // (1,) count of silence frames seen
   |                `- warning: stored property 'nSilFrames' of 'Sendable'-conforming struct 'StreamingState' has non-Sendable type 'MLXArray'
64 |
65 |     public var spkcacheLen: Int { spkcache.dim(1) }
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/Models/SileroVAD/SileroVAD.swift:18:16: warning: stored property 'lstmState' of 'Sendable'-conforming struct 'SileroVADStreamingState' contains non-Sendable type 'MLXArray'
 16 |
 17 | public struct SileroVADStreamingState: Sendable {
 18 |     public var lstmState: MLXArray?
    |                `- warning: stored property 'lstmState' of 'Sendable'-conforming struct 'SileroVADStreamingState' contains non-Sendable type 'MLXArray'
 19 |     public var context: MLXArray
 20 |     public var sampleRate: Int
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/Models/SileroVAD/SileroVAD.swift:19:16: warning: stored property 'context' of 'Sendable'-conforming struct 'SileroVADStreamingState' has non-Sendable type 'MLXArray'
 17 | public struct SileroVADStreamingState: Sendable {
 18 |     public var lstmState: MLXArray?
 19 |     public var context: MLXArray
    |                `- warning: stored property 'context' of 'Sendable'-conforming struct 'SileroVADStreamingState' has non-Sendable type 'MLXArray'
 20 |     public var sampleRate: Int
 21 |
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioVAD/Models/Sortformer/Sortformer.swift:848:18: warning: unstructured throwing task created by 'detached(name:priority:operation:)' is not used, which may accidentally ignore errors thrown inside the task [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-use-throwing-unstructured-task\NoUseUnstructuredThrowingTask]8;;\]
 846 |         let sendableAudio = UncheckedSendableBox(audio)
 847 |         return AsyncThrowingStream { continuation in
 848 |             Task.detached {
     |                  |- warning: unstructured throwing task created by 'detached(name:priority:operation:)' is not used, which may accidentally ignore errors thrown inside the task [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-use-throwing-unstructured-task\NoUseUnstructuredThrowingTask]8;;\]
     |                  `- note: to silence this warning, handle the error inside the task, or store/discard the task value explicitly
 849 |                 let model = sendableModel.value
 850 |                 let audio = sendableAudio.value
[#NoUseUnstructuredThrowingTask]: <https://docs.swift.org/compiler/documentation/diagnostics/no-use-throwing-unstructured-task>
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/FishSpeech/FishSpeechPrompt.swift:21:9: warning: stored property 'codes' of 'Sendable'-conforming struct 'FishSpeechVQPart' has non-Sendable type 'MLXArray'
 19 |
 20 | struct FishSpeechVQPart: Sendable {
 21 |     let codes: MLXArray
    |         `- warning: stored property 'codes' of 'Sendable'-conforming struct 'FishSpeechVQPart' has non-Sendable type 'MLXArray'
 22 |
 23 |     init(_ codes: MLXArray) {
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/IndexTTS/IndexTTSModules.swift:8:16: warning: stored property 'embeddings' of 'Sendable'-conforming struct 'IndexTTSPreparedEmbedding' has non-Sendable type 'MLXArray'
  6 |
  7 | public struct IndexTTSPreparedEmbedding: Sendable {
  8 |     public let embeddings: MLXArray
    |                `- warning: stored property 'embeddings' of 'Sendable'-conforming struct 'IndexTTSPreparedEmbedding' has non-Sendable type 'MLXArray'
  9 |     public let textTokenCount: Int
 10 |     public let conditioningTokenCount: Int
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/IndexTTS/IndexTTSModules.swift:15:16: warning: stored property 'latentStates' of 'Sendable'-conforming struct 'IndexTTSMelGeneration' has non-Sendable type 'MLXArray'
 13 | public struct IndexTTSMelGeneration: Sendable {
 14 |     public let tokenIDs: [Int]
 15 |     public let latentStates: MLXArray
    |                `- warning: stored property 'latentStates' of 'Sendable'-conforming struct 'IndexTTSMelGeneration' has non-Sendable type 'MLXArray'
 16 | }
 17 |
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/StyleTTS2/KittenTTS/KittenTTSModel.swift:78:13: warning: variable 'predAlnTrg' was never mutated; consider changing to 'let' constant [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
 76 |         let allIndices = MLX.concatenated(indices, axis: 0)
 77 |
 78 |         var predAlnTrg = MLXArray.zeros([inputIds.shape[1], allIndices.shape[0]])
    |             `- warning: variable 'predAlnTrg' was never mutated; consider changing to 'let' constant [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
 79 |         predAlnTrg[allIndices, MLXArray(Array(0..<Int32(allIndices.shape[0])))] = MLXArray(Float(1))
 80 |         let predAln = predAlnTrg.expandedDimensions(axis: 0)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/StyleTTS2/KittenTTS/KittenTTSModel.swift:129:31: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
127 |                     text: text,
128 |                     voice: voice,
129 |                     refAudio: refAudio,
    |                               `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
130 |                     refText: refText,
131 |                     language: language,
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[#VariableNeverMutated]: <https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated>
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/StyleTTS2/KittenTTS/KittenTTSModules.swift:87:17: warning: variable 'result' was never mutated; consider changing to 'let' constant [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
 85 |             let padded = MLXArray.zeros([h.shape[0], h.shape[1], mask.shape[mask.ndim - 1]])
 86 |             let validLen = min(h.shape[2], padded.shape[2])
 87 |             var result = padded
    |                 `- warning: variable 'result' was never mutated; consider changing to 'let' constant [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
 88 |             result[0..., 0..., ..<validLen] = h[0..., 0..., ..<validLen]
 89 |             h = result
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/StyleTTS2/Kokoro/KokoroModel.swift:198:57: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
196 |             do {
197 |                 let audio = try await self.generate(
198 |                     text: text, voice: voice, refAudio: refAudio,
    |                                                         `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
199 |                     refText: refText, language: language,
200 |                     generationParameters: generationParameters
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[#VariableNeverMutated]: <https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated>
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/StyleTTS2/Blocks/BiLSTM.swift:36:25: warning: 'addmm(_:_:_:alpha:beta:stream:)' is deprecated: renamed to 'addMM(_:_:_:alpha:beta:stream:)' [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 34 |
 35 |     private func forwardDirection(_ x: MLXArray) -> MLXArray {
 36 |         let xProj = MLX.addmm(bias_ih_forward + bias_hh_forward, x, Wx_forward.transposed())
    |                         |- warning: 'addmm(_:_:_:alpha:beta:stream:)' is deprecated: renamed to 'addMM(_:_:_:alpha:beta:stream:)' [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
    |                         `- note: use 'addMM(_:_:_:alpha:beta:stream:)' instead
 37 |
 38 |         let seqLen = x.shape[x.ndim - 2]
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/StyleTTS2/Blocks/BiLSTM.swift:64:25: warning: 'addmm(_:_:_:alpha:beta:stream:)' is deprecated: renamed to 'addMM(_:_:_:alpha:beta:stream:)' [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 62 |
 63 |     private func backwardDirection(_ x: MLXArray) -> MLXArray {
 64 |         let xProj = MLX.addmm(bias_ih_backward + bias_hh_backward, x, Wx_backward.transposed())
    |                         |- warning: 'addmm(_:_:_:alpha:beta:stream:)' is deprecated: renamed to 'addMM(_:_:_:alpha:beta:stream:)' [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
    |                         `- note: use 'addMM(_:_:_:alpha:beta:stream:)' instead
 65 |
 66 |         let seqLen = x.shape[x.ndim - 2]
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/Soprano/Soprano.swift:810:24: warning: passing closure as a 'sending' parameter risks causing data races between code in the current isolation context and concurrent execution of the closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/region-isolation\RegionIsolation]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/sending-closure-risks-data-race\SendingClosureRisksDataRace]8;;\]
 808 |     ) -> AsyncStream<(Int?, MLXArray)> {
 809 |         AsyncStream { continuation in
 810 |             let task = Task {
     |                        `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current isolation context and concurrent execution of the closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/region-isolation\RegionIsolation]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/sending-closure-risks-data-race\SendingClosureRisksDataRace]8;;\]
 811 |                 var ids = inputIds
     |                           `- note: closure captures 'inputIds' which is accessible to code in the current isolation context
 812 |                 if ids.ndim == 1 {
 813 |                     ids = ids.expandedDimensions(axis: 0)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/Soprano/Soprano.swift:825:30: warning: sending value of non-Sendable type '(Int?, MLXArray)' risks causing data races [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/region-isolation\RegionIsolation]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race\SendingRisksDataRace]8;;\]
 823 |                 // Yield last hidden state from prefill (last position along sequence dim)
 824 |                 let lastHiddenState = hiddenStates[0..., (hiddenStates.shape[1] - 1)..<hiddenStates.shape[1], 0...]
 825 |                 continuation.yield((nil, lastHiddenState))
     |                              |- warning: sending value of non-Sendable type '(Int?, MLXArray)' risks causing data races [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/region-isolation\RegionIsolation]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race\SendingRisksDataRace]8;;\]
     |                              `- note: Passing task-isolated value of non-Sendable type '(Int?, MLXArray)' as a 'sending' parameter to instance method 'yield' risks causing races inbetween task-isolated uses and uses reachable from 'yield'
 826 |
 827 |                 // Create sampler
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/Soprano/Soprano.swift:876:34: warning: sending value of non-Sendable type '(Int?, MLXArray)' risks causing data races [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/region-isolation\RegionIsolation]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race\SendingRisksDataRace]8;;\]
 874 |                     let newLastHiddenState = newHiddenStates[0..., (newHiddenStates.shape[1] - 1)..<newHiddenStates.shape[1], 0...]
 875 |                     eval(newLastHiddenState)
 876 |                     continuation.yield((tokenId, newLastHiddenState))
     |                                  |- warning: sending value of non-Sendable type '(Int?, MLXArray)' risks causing data races [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/region-isolation\RegionIsolation]8;;\::]8;;https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race\SendingRisksDataRace]8;;\]
     |                                  `- note: Passing task-isolated value of non-Sendable type '(Int?, MLXArray)' as a 'sending' parameter to instance method 'yield' risks causing races inbetween task-isolated uses and uses reachable from 'yield'
 877 |
 878 |                     currentLogits = newLogits
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[#RegionIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/region-isolation>
[#SendingClosureRisksDataRace]: <https://docs.swift.org/compiler/documentation/diagnostics/sending-closure-risks-data-race>
[#SendingRisksDataRace]: <https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race>
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/Marvis/MarvisTTSModel.swift:372:39: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
370 |             guard let self else { return }
371 |             do {
372 |                 guard voice != nil || refAudio != nil else {
    |                                       `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
373 |                     throw MarvisTTSModelError.invalidArgument("`voice` or `refAudio`/`refText` must be specified.")
374 |                 }
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/Marvis/MarvisTTSModel.swift:372:39: warning: implicit capture of 'refAudio' requires that 'MLXArray?' conforms to 'Sendable'
370 |             guard let self else { return }
371 |             do {
372 |                 guard voice != nil || refAudio != nil else {
    |                                       `- warning: implicit capture of 'refAudio' requires that 'MLXArray?' conforms to 'Sendable'
373 |                     throw MarvisTTSModelError.invalidArgument("`voice` or `refAudio`/`refText` must be specified.")
374 |                 }
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/Marvis/MarvisTTSModel.swift:619:31: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
617 |                     voice: resolvedVoice,
618 |                     qualityLevel: .maximum,
619 |                     refAudio: refAudio,
    |                               `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
620 |                     refText: refText,
621 |                     streamingInterval: streamingInterval
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/MossTTS/MossTTSModel.swift:784:35: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
782 |                         text: text,
783 |                         voice: voice,
784 |                         refAudio: refAudio,
    |                                   `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
785 |                         refText: refText,
786 |                         language: language,
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/MossTTSNano/MossTTSNanoModel.swift:528:35: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
526 |                         text: text,
527 |                         voice: voice,
528 |                         refAudio: refAudio,
    |                                   `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
529 |                         refText: refText,
530 |                         language: language,
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/OmniVoice/OmniVoice.swift:257:31: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
 255 |                     text: text,
 256 |                     voice: voice,
 257 |                     refAudio: refAudio,
     |                               `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
 258 |                     refText: refText,
 259 |                     language: language,
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/EchoTTS/EchoTTSModel.swift:426:31: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
424 |                 let result = try self.generateDetailed(
425 |                     text: text,
426 |                     refAudio: refAudio,
    |                               `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
427 |                     rngSeed: 0,
428 |                     sequenceLength: generationParameters.maxTokens
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/FishSpeech/FishSpeechModel.swift:601:31: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
 599 |                 let segments = try self.generateSegments(
 600 |                     text: text,
 601 |                     refAudio: refAudio,
     |                               `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
 602 |                     refText: refText,
 603 |                     maxTokens: generationParameters.maxTokens ?? 1_024,
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/FishSpeech/FishSpeechPrompt.swift:21:9: warning: stored property 'codes' of 'Sendable'-conforming struct 'FishSpeechVQPart' has non-Sendable type 'MLXArray'
 19 |
 20 | struct FishSpeechVQPart: Sendable {
 21 |     let codes: MLXArray
    |         `- warning: stored property 'codes' of 'Sendable'-conforming struct 'FishSpeechVQPart' has non-Sendable type 'MLXArray'
 22 |
 23 |     init(_ codes: MLXArray) {
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/Chatterbox/ChatterboxModel.swift:877:31: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
 875 |                     text: text,
 876 |                     voice: voice,
 877 |                     refAudio: refAudio,
     |                               `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
 878 |                     refText: refText,
 879 |                     language: language,
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/IndexTTS/IndexTTSModel.swift:521:31: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
519 |                     text: text,
520 |                     voice: voice,
521 |                     refAudio: refAudio,
    |                               `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
522 |                     refText: refText,
523 |                     language: language,
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/IndexTTS/IndexTTSModules.swift:8:16: warning: stored property 'embeddings' of 'Sendable'-conforming struct 'IndexTTSPreparedEmbedding' has non-Sendable type 'MLXArray'
  6 |
  7 | public struct IndexTTSPreparedEmbedding: Sendable {
  8 |     public let embeddings: MLXArray
    |                `- warning: stored property 'embeddings' of 'Sendable'-conforming struct 'IndexTTSPreparedEmbedding' has non-Sendable type 'MLXArray'
  9 |     public let textTokenCount: Int
 10 |     public let conditioningTokenCount: Int
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/IndexTTS/IndexTTSModules.swift:15:16: warning: stored property 'latentStates' of 'Sendable'-conforming struct 'IndexTTSMelGeneration' has non-Sendable type 'MLXArray'
 13 | public struct IndexTTSMelGeneration: Sendable {
 14 |     public let tokenIDs: [Int]
 15 |     public let latentStates: MLXArray
    |                `- warning: stored property 'latentStates' of 'Sendable'-conforming struct 'IndexTTSMelGeneration' has non-Sendable type 'MLXArray'
 16 | }
 17 |
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/IrodoriTTS/IrodoriTTSModel.swift:317:13: warning: 'quantize(model:filter:apply:)' is deprecated: use quantize that takes a 4 argument apply [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
315 |         // Quantize matching Linear layers before loading packed weights (8-bit checkpoints).
316 |         if let q = decodeQuantization(configURL: configURL) {
317 |             quantize(model: model) { path, _ in
    |             `- warning: 'quantize(model:filter:apply:)' is deprecated: use quantize that takes a 4 argument apply [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
318 |                 sanitized["\(path).scales"] != nil ? (q.groupSize, q.bits) : nil
319 |             }
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/IrodoriTTS/IrodoriTTSModel.swift:397:59: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
395 |                 let started = CFAbsoluteTimeGetCurrent()
396 |                 let waveform = try self.generateWaveform(
397 |                     text: text, caption: voice, refAudio: refAudio, rngSeed: 0, secondsOverride: nil)
    |                                                           `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
398 |                 let elapsed = max(CFAbsoluteTimeGetCurrent() - started, 1e-6)
399 |                 let info = AudioGenerationInfo(
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/IrodoriTTS/IrodoriTTSModel.swift:469:13: warning: variable 'url' was never mutated; consider changing to 'let' constant [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
467 |     }
468 |
469 |     if var (url, tok) = loadJSON("tokenizer.json").map({ ($0.url, $0.obj) }) {
    |             `- warning: variable 'url' was never mutated; consider changing to 'let' constant [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
470 |         tok["post_processor"] = NSNull()
471 |         tok["decoder"] = NSNull()
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/IrodoriTTS/IrodoriTTSModel.swift:474:13: warning: variable 'url' was never mutated; consider changing to 'let' constant [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
472 |         write(url, tok)
473 |     }
474 |     if var (url, cfg) = loadJSON("tokenizer_config.json").map({ ($0.url, $0.obj) }) {
    |             `- warning: variable 'url' was never mutated; consider changing to 'let' constant [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
475 |         // Force swift-transformers to instantiate UnigramTokenizer (not BPE).
476 |         cfg["tokenizer_class"] = "XLMRobertaTokenizer"
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/Llama/LlamaTTS.swift:809:31: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
807 |                     prompts: [prompt],
808 |                     voice: voice,
809 |                     refAudio: refAudio,
    |                               `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
810 |                     refText: refText
811 |                 )
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/Llama/LlamaTTS.swift:819:29: warning: capture of 'cache' with non-Sendable type '[any KVCache]?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
817 |                 processor?.prompt(promptTokens)
818 |
819 |                 var cache = cache
    |                             `- warning: capture of 'cache' with non-Sendable type '[any KVCache]?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
820 |                 if cache == nil {
821 |                     cache = self.makeCache()
MLXLMCommon.KVCache:1:17: note: protocol 'KVCache' does not conform to the 'Sendable' protocol
 1 | public protocol KVCache : MLX.Evaluatable {
   |                 `- note: protocol 'KVCache' does not conform to the 'Sendable' protocol
 2 |     var offset: Int { get }
 3 |     var ropeOffset: MLXLMCommon.RoPEOffset { get }
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[#VariableNeverMutated]: <https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated>
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/PocketTTS/PocketTTSModel.swift:324:31: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
322 |                     text: text,
323 |                     voice: voice,
324 |                     refAudio: refAudio,
    |                               `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
325 |                     refText: refText,
326 |                     language: language,
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/Qwen3/Qwen3.swift:753:31: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
751 |                     prompts: [prompt],
752 |                     voice: voice,
753 |                     refAudio: refAudio,
    |                               `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
754 |                     refText: refText
755 |                 )
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/Qwen3/Qwen3.swift:762:29: warning: capture of 'cache' with non-Sendable type '[any KVCache]?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
760 |                 let promptTokens = inputIds.squeezed(axis: 0)
761 |                 processor?.prompt(promptTokens)
762 |                 var cache = cache
    |                             `- warning: capture of 'cache' with non-Sendable type '[any KVCache]?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
763 |                 if cache == nil {
764 |                     cache = self.makeCache()
MLXLMCommon.KVCache:1:17: note: protocol 'KVCache' does not conform to the 'Sendable' protocol
 1 | public protocol KVCache : MLX.Evaluatable {
   |                 `- note: protocol 'KVCache' does not conform to the 'Sendable' protocol
 2 |     var offset: Int { get }
 3 |     var ropeOffset: MLXLMCommon.RoPEOffset { get }
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioTTS/Models/Qwen3TTS/Qwen3TTS.swift:119:27: warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
 117 |                 instruct: voice,
 118 |                 language: settings.language,
 119 |                 refAudio: refAudio,
     |                           `- warning: capture of 'refAudio' with non-Sendable type 'MLXArray?' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
 120 |                 refText: refText,
 121 |                 temperature: settings.temperature,
MLX.MLXArray:1:20: note: class 'MLXArray' does not conform to the 'Sendable' protocol
 1 | final public class MLXArray {
   |                    `- note: class 'MLXArray' does not conform to the 'Sendable' protocol
 2 |     public internal(set) var ctx: mlx_array { get }
 3 |     public init(_ ctx: consuming mlx_array)
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioSTS/Models/LFMAudio/Conformer.swift:171:13: warning: variable 'q' was never mutated; consider changing to 'let' constant [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
169 |         let (B, T, _) = (x.dim(0), x.dim(1), x.dim(2))
170 |
171 |         var q = qProj(x).reshaped(B, T, numHeads, headDim)
    |             `- warning: variable 'q' was never mutated; consider changing to 'let' constant [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
172 |         let k = kProj(x).reshaped(B, T, numHeads, headDim)
173 |         let v = vProj(x).reshaped(B, T, numHeads, headDim)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioSTS/Models/LFMAudio/Conformer.swift:270:14: warning: immutable value 'B' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
268 |
269 |     func callAsFunction(_ x: MLXArray) -> MLXArray {
270 |         let (B, T, D) = (x.dim(0), x.dim(1), x.dim(2))
    |              `- warning: immutable value 'B' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
271 |
272 |         var h = x.expandedDimensions(axis: 3)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioSTS/Models/LFMAudio/Conformer.swift:270:17: warning: immutable value 'T' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
268 |
269 |     func callAsFunction(_ x: MLXArray) -> MLXArray {
270 |         let (B, T, D) = (x.dim(0), x.dim(1), x.dim(2))
    |                 `- warning: immutable value 'T' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
271 |
272 |         var h = x.expandedDimensions(axis: 3)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioSTS/Models/LFMAudio/Conformer.swift:270:20: warning: immutable value 'D' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
268 |
269 |     func callAsFunction(_ x: MLXArray) -> MLXArray {
270 |         let (B, T, D) = (x.dim(0), x.dim(1), x.dim(2))
    |                    `- warning: immutable value 'D' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
271 |
272 |         var h = x.expandedDimensions(axis: 3)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioSTS/Models/LFMAudio/Conformer.swift:280:24: warning: immutable value 'DOut' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
278 |         h = relu(conv[6]!(h))
279 |
280 |         let (B2, TOut, DOut, C) = (h.dim(0), h.dim(1), h.dim(2), h.dim(3))
    |                        `- warning: immutable value 'DOut' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
281 |         h = h.transposed(0, 1, 3, 2).reshaped(B2, TOut, -1)
282 |         return out(h)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioSTS/Models/LFMAudio/Conformer.swift:280:30: warning: immutable value 'C' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
278 |         h = relu(conv[6]!(h))
279 |
280 |         let (B2, TOut, DOut, C) = (h.dim(0), h.dim(1), h.dim(2), h.dim(3))
    |                              `- warning: immutable value 'C' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
281 |         h = h.transposed(0, 1, 3, 2).reshaped(B2, TOut, -1)
282 |         return out(h)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioSTS/Models/LFMAudio/Detokenizer.swift:110:14: warning: immutable value 'B' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
108 |
109 |     private func applyRoPE(_ x: MLXArray, offset: Int = 0) -> MLXArray {
110 |         let (B, H, T, D) = (x.dim(0), x.dim(1), x.dim(2), x.dim(3))
    |              `- warning: immutable value 'B' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
111 |         let invFreq = 1.0 / MLX.pow(
112 |             MLXArray(ropeTheta),
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioSTS/Models/LFMAudio/Detokenizer.swift:110:17: warning: immutable value 'H' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
108 |
109 |     private func applyRoPE(_ x: MLXArray, offset: Int = 0) -> MLXArray {
110 |         let (B, H, T, D) = (x.dim(0), x.dim(1), x.dim(2), x.dim(3))
    |                 `- warning: immutable value 'H' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
111 |         let invFreq = 1.0 / MLX.pow(
112 |             MLXArray(ropeTheta),
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioSTS/Models/LFMAudio/Detokenizer.swift:307:14: warning: immutable value 'B' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
305 |
306 |     public func callAsFunction(_ codes: MLXArray) -> MLXArray {
307 |         let (B, K, T) = (codes.dim(0), codes.dim(1), codes.dim(2))
    |              `- warning: immutable value 'B' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
308 |
309 |         let clampedCodes = MLX.clip(codes, min: 0, max: config.vocabSize - 1)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioSTS/Models/LFMAudio/Detokenizer.swift:307:17: warning: immutable value 'K' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
305 |
306 |     public func callAsFunction(_ codes: MLXArray) -> MLXArray {
307 |         let (B, K, T) = (codes.dim(0), codes.dim(1), codes.dim(2))
    |                 `- warning: immutable value 'K' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
308 |
309 |         let clampedCodes = MLX.clip(codes, min: 0, max: config.vocabSize - 1)
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioSTS/Models/LFMAudio/Detokenizer.swift:307:20: warning: immutable value 'T' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
305 |
306 |     public func callAsFunction(_ codes: MLXArray) -> MLXArray {
307 |         let (B, K, T) = (codes.dim(0), codes.dim(1), codes.dim(2))
    |                    `- warning: immutable value 'T' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
308 |
309 |         let clampedCodes = MLX.clip(codes, min: 0, max: config.vocabSize - 1)
[#NoUsage]: <https://docs.swift.org/compiler/documentation/diagnostics/no-usage>
[#VariableNeverMutated]: <https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated>
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioSTS/Models/LFMAudio/Transformer.swift:26:9: warning: initialization of immutable value 'halfDim' was never used; consider replacing with assignment to '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
 24 |     let shape = xq.shape
 25 |     let lastDim = shape[shape.count - 1]
 26 |     let halfDim = lastDim / 2
    |         `- warning: initialization of immutable value 'halfDim' was never used; consider replacing with assignment to '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
 27 |
 28 |     let xqR = xq[0..., 0..., 0..., .stride(by: 2)]
/Users/admin/builder/spi-builder-workspace/Sources/MLXAudioSTS/Models/LFMAudio/Transformer.swift:136:13: warning: variable 'qT' was never mutated; consider changing to 'let' constant [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
134 |         let newCache = (k, v)
135 |
136 |         var qT = q.transposed(0, 2, 1, 3)
    |             `- warning: variable 'qT' was never mutated; consider changing to 'let' constant [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
137 |         var kT = k.transposed(0, 2, 1, 3)
138 |         var vT = v.transposed(0, 2, 1, 3)
[#NoUsage]: <https://docs.swift.org/compiler/documentation/diagnostics/no-usage>
[#VariableNeverMutated]: <https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated>
Build complete.
{
  "dependencies" : [
    {
      "identity" : "mlx-swift",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.30.6",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/ml-explore/mlx-swift.git"
    },
    {
      "identity" : "mlx-swift-lm",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "3.31.3",
            "upper_bound" : "4.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/ml-explore/mlx-swift-lm.git"
    },
    {
      "identity" : "swift-transformers",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.6",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/huggingface/swift-transformers.git"
    },
    {
      "identity" : "swift-huggingface",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.8.1",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/huggingface/swift-huggingface.git"
    }
  ],
  "manifest_display_name" : "MLXAudio",
  "name" : "MLXAudio",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "14.0"
    },
    {
      "name" : "ios",
      "version" : "17.0"
    }
  ],
  "products" : [
    {
      "name" : "MLXAudioCore",
      "targets" : [
        "MLXAudioCore"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXAudioCodecs",
      "targets" : [
        "MLXAudioCodecs"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXAudioTTS",
      "targets" : [
        "MLXAudioTTS"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXAudioSTT",
      "targets" : [
        "MLXAudioSTT"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXAudioVAD",
      "targets" : [
        "MLXAudioVAD"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXAudioLID",
      "targets" : [
        "MLXAudioLID"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXAudioSTS",
      "targets" : [
        "MLXAudioSTS"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXAudioUI",
      "targets" : [
        "MLXAudioUI"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXAudioG2P",
      "targets" : [
        "MLXAudioG2P"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MLXAudio",
      "targets" : [
        "MLXAudioCore",
        "MLXAudioCodecs",
        "MLXAudioTTS",
        "MLXAudioSTT",
        "MLXAudioVAD",
        "MLXAudioLID",
        "MLXAudioSTS",
        "MLXAudioUI",
        "MLXAudioG2P"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "mlx-audio-swift-tts",
      "targets" : [
        "mlx-audio-swift-tts"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "mlx-audio-swift-codec",
      "targets" : [
        "mlx-audio-swift-codec"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "mlx-audio-swift-sts",
      "targets" : [
        "mlx-audio-swift-sts"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "mlx-audio-swift-stt",
      "targets" : [
        "mlx-audio-swift-stt"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "mlx-audio-swift-lid",
      "targets" : [
        "mlx-audio-swift-lid"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "mlx_audio_swift_tts",
      "module_type" : "SwiftTarget",
      "name" : "mlx-audio-swift-tts",
      "path" : "Sources/Tools/mlx-audio-swift-tts",
      "product_memberships" : [
        "mlx-audio-swift-tts"
      ],
      "sources" : [
        "App.swift"
      ],
      "target_dependencies" : [
        "MLXAudioCore",
        "MLXAudioTTS",
        "MLXAudioSTT"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "mlx_audio_swift_stt",
      "module_type" : "SwiftTarget",
      "name" : "mlx-audio-swift-stt",
      "path" : "Sources/Tools/mlx-audio-swift-stt",
      "product_memberships" : [
        "mlx-audio-swift-stt"
      ],
      "sources" : [
        "App.swift"
      ],
      "target_dependencies" : [
        "MLXAudioCore",
        "MLXAudioSTT"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "mlx_audio_swift_sts",
      "module_type" : "SwiftTarget",
      "name" : "mlx-audio-swift-sts",
      "path" : "Sources/Tools/mlx-audio-swift-sts",
      "product_memberships" : [
        "mlx-audio-swift-sts"
      ],
      "sources" : [
        "App.swift"
      ],
      "target_dependencies" : [
        "MLXAudioCore",
        "MLXAudioSTS"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "mlx_audio_swift_lid",
      "module_type" : "SwiftTarget",
      "name" : "mlx-audio-swift-lid",
      "path" : "Sources/Tools/mlx-audio-swift-lid",
      "product_memberships" : [
        "mlx-audio-swift-lid"
      ],
      "sources" : [
        "App.swift"
      ],
      "target_dependencies" : [
        "MLXAudioCore",
        "MLXAudioLID"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "mlx_audio_swift_codec",
      "module_type" : "SwiftTarget",
      "name" : "mlx-audio-swift-codec",
      "path" : "Sources/Tools/mlx-audio-swift-codec",
      "product_memberships" : [
        "mlx-audio-swift-codec"
      ],
      "sources" : [
        "App.swift"
      ],
      "target_dependencies" : [
        "MLXAudioCore",
        "MLXAudioCodecs"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "MLXAudioVAD",
      "module_type" : "SwiftTarget",
      "name" : "MLXAudioVAD",
      "path" : "Sources/MLXAudioVAD",
      "product_dependencies" : [
        "MLX",
        "MLXNN",
        "MLXLMCommon",
        "HuggingFace"
      ],
      "product_memberships" : [
        "MLXAudioSTT",
        "MLXAudioVAD",
        "MLXAudioSTS",
        "MLXAudioUI",
        "MLXAudio",
        "mlx-audio-swift-tts",
        "mlx-audio-swift-sts",
        "mlx-audio-swift-stt"
      ],
      "sources" : [
        "Models/FSMNVAD/FSMNVAD.swift",
        "Models/SileroVAD/SileroVAD.swift",
        "Models/SileroVAD/SileroVADConfig.swift",
        "Models/SmartTurn/SmartTurn.swift",
        "Models/SmartTurn/SmartTurnConfig.swift",
        "Models/SmartTurn/SmartTurnFeatures.swift",
        "Models/Sortformer/Sortformer.swift",
        "Models/Sortformer/SortformerConfig.swift",
        "Models/Sortformer/SortformerFeatures.swift",
        "SpeechSegmenter.swift",
        "VADOutput.swift"
      ],
      "target_dependencies" : [
        "MLXAudioCore"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MLXAudioUI",
      "module_type" : "SwiftTarget",
      "name" : "MLXAudioUI",
      "path" : "Sources/MLXAudioUI",
      "product_memberships" : [
        "MLXAudioUI",
        "MLXAudio"
      ],
      "sources" : [
        "Placeholder.swift"
      ],
      "target_dependencies" : [
        "MLXAudioCore",
        "MLXAudioTTS",
        "MLXAudioSTS"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MLXAudioTests",
      "module_type" : "SwiftTarget",
      "name" : "MLXAudioTests",
      "path" : "Tests",
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/media",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "IncrementalMelSpectrogramTests.swift",
        "MLXAudioCodecsTests.swift",
        "MLXAudioG2PCMUDictTests.swift",
        "MLXAudioG2PTests.swift",
        "MLXAudioLIDTests.swift",
        "MLXAudioSTSTests.swift",
        "MLXAudioSTTTests.swift",
        "MLXAudioSmokeTests.swift",
        "MLXAudioTTSTests.swift",
        "MLXAudioVADTests.swift",
        "ModuloFloatFixtureValues.swift",
        "OmniVoiceTests.swift",
        "ParakeetBatchParityTests.swift"
      ],
      "target_dependencies" : [
        "MLXAudioCore",
        "MLXAudioCodecs",
        "MLXAudioTTS",
        "MLXAudioSTT",
        "MLXAudioVAD",
        "MLXAudioSTS",
        "MLXAudioLID",
        "mlx-audio-swift-lid",
        "MLXAudioG2P"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MLXAudioTTS",
      "module_type" : "SwiftTarget",
      "name" : "MLXAudioTTS",
      "path" : "Sources/MLXAudioTTS",
      "product_dependencies" : [
        "MLX",
        "MLXFast",
        "MLXNN",
        "MLXLMCommon",
        "MLXLLM",
        "HuggingFace",
        "Transformers"
      ],
      "product_memberships" : [
        "MLXAudioTTS",
        "MLXAudioSTS",
        "MLXAudioUI",
        "MLXAudio",
        "mlx-audio-swift-tts",
        "mlx-audio-swift-sts"
      ],
      "sources" : [
        "Generation.swift",
        "Models/Chatterbox/ChatterboxConfig.swift",
        "Models/Chatterbox/ChatterboxModel.swift",
        "Models/Chatterbox/T3/LearnedPositionEmbeddings.swift",
        "Models/Chatterbox/T3/Perceiver.swift",
        "Models/Chatterbox/T3/T3CondEnc.swift",
        "Models/Chatterbox/T3/T3GPT2Model.swift",
        "Models/Chatterbox/T3/T3Model.swift",
        "Models/Chatterbox/VoiceEncoder/VoiceEncoder.swift",
        "Models/Chatterbox/VoiceEncoder/VoiceEncoderMelSpec.swift",
        "Models/EchoTTS/EchoDiT.swift",
        "Models/EchoTTS/EchoTTSAudio.swift",
        "Models/EchoTTS/EchoTTSConfig.swift",
        "Models/EchoTTS/EchoTTSModel.swift",
        "Models/EchoTTS/EchoTTSSampling.swift",
        "Models/EchoTTS/EchoTTSText.swift",
        "Models/FishSpeech/FishSpeechConfig.swift",
        "Models/FishSpeech/FishSpeechModel.swift",
        "Models/FishSpeech/FishSpeechPrompt.swift",
        "Models/FishSpeech/FishSpeechTokenizer.swift",
        "Models/IndexTTS/IndexTTSBigVGAN.swift",
        "Models/IndexTTS/IndexTTSConfig.swift",
        "Models/IndexTTS/IndexTTSModel.swift",
        "Models/IndexTTS/IndexTTSModules.swift",
        "Models/IrodoriTTS/IrodoriDiT.swift",
        "Models/IrodoriTTS/IrodoriDuration.swift",
        "Models/IrodoriTTS/IrodoriTTSConfig.swift",
        "Models/IrodoriTTS/IrodoriTTSModel.swift",
        "Models/IrodoriTTS/IrodoriTTSSampling.swift",
        "Models/IrodoriTTS/IrodoriTTSText.swift",
        "Models/Llama/LlamaTTS.swift",
        "Models/Llama/LlamaTTSConfig.swift",
        "Models/Marvis/CSMLlamaModel.swift",
        "Models/Marvis/CSMModel.swift",
        "Models/Marvis/MarvisTTSModel.swift",
        "Models/MossTTS/MossTTSConfig.swift",
        "Models/MossTTS/MossTTSFullSampling.swift",
        "Models/MossTTS/MossTTSModel.swift",
        "Models/MossTTS/MossTTSProcessor.swift",
        "Models/MossTTS/MossTTSQwen3.swift",
        "Models/MossTTSNano/MossGPT2.swift",
        "Models/MossTTSNano/MossTTSNanoConfig.swift",
        "Models/MossTTSNano/MossTTSNanoError.swift",
        "Models/MossTTSNano/MossTTSNanoModel.swift",
        "Models/MossTTSNano/MossTTSNanoText.swift",
        "Models/MossTTSNano/MossTTSSampling.swift",
        "Models/OmniVoice/OmniVoice.swift",
        "Models/OmniVoice/OmniVoiceConfig.swift",
        "Models/OmniVoice/OmniVoiceGenerateParameters.swift",
        "Models/OmniVoice/OmniVoiceSemantic.swift",
        "Models/PocketTTS/PocketTTSConditioners.swift",
        "Models/PocketTTS/PocketTTSConfig.swift",
        "Models/PocketTTS/PocketTTSFlowLM.swift",
        "Models/PocketTTS/PocketTTSMLP.swift",
        "Models/PocketTTS/PocketTTSMimiAdapter.swift",
        "Models/PocketTTS/PocketTTSModel.swift",
        "Models/PocketTTS/PocketTTSTextUtils.swift",
        "Models/PocketTTS/PocketTTSTransformer.swift",
        "Models/Qwen3/Config.swift",
        "Models/Qwen3/Qwen3.swift",
        "Models/Qwen3TTS/Qwen3TTS.swift",
        "Models/Qwen3TTS/Qwen3TTSCodePredictor.swift",
        "Models/Qwen3TTS/Qwen3TTSConfig.swift",
        "Models/Qwen3TTS/Qwen3TTSSpeakerEncoder.swift",
        "Models/Qwen3TTS/Qwen3TTSSpeechTokenizer.swift",
        "Models/Qwen3TTS/Qwen3TTSTalker.swift",
        "Models/Soprano/Soprano.swift",
        "Models/Soprano/SopranoConfig.swift",
        "Models/Soprano/SopranoDecoder.swift",
        "Models/Soprano/TextUtils.swift",
        "Models/StyleTTS2/Albert.swift",
        "Models/StyleTTS2/Blocks/BiLSTM.swift",
        "Models/StyleTTS2/Blocks/LinearNorm.swift",
        "Models/StyleTTS2/Blocks/Normalization.swift",
        "Models/StyleTTS2/Blocks/ResidualBlocks.swift",
        "Models/StyleTTS2/Blocks/SineGenerator.swift",
        "Models/StyleTTS2/Blocks/UpSample1d.swift",
        "Models/StyleTTS2/Blocks/Utilities.swift",
        "Models/StyleTTS2/Blocks/WeightNormedConv.swift",
        "Models/StyleTTS2/G2P/EnglishG2P.swift",
        "Models/StyleTTS2/G2P/EnglishNum2Word.swift",
        "Models/StyleTTS2/G2P/FallbackNetwork/BARTConfig.swift",
        "Models/StyleTTS2/G2P/FallbackNetwork/BARTDecoderLayer.swift",
        "Models/StyleTTS2/G2P/FallbackNetwork/BARTEncoderLayer.swift",
        "Models/StyleTTS2/G2P/FallbackNetwork/BARTLayerNorm.swift",
        "Models/StyleTTS2/G2P/FallbackNetwork/BARTModel.swift",
        "Models/StyleTTS2/G2P/FallbackNetwork/EnglishFallbackNetwork.swift",
        "Models/StyleTTS2/G2P/FallbackNetwork/FeedForward.swift",
        "Models/StyleTTS2/G2P/FallbackNetwork/MultiHeadAttention.swift",
        "Models/StyleTTS2/G2P/G2PExtensions.swift",
        "Models/StyleTTS2/G2P/Lexicon/DataResourcesUtil.swift",
        "Models/StyleTTS2/G2P/Lexicon/Lexicon.swift",
        "Models/StyleTTS2/G2P/Lexicon/PennTagUtil.swift",
        "Models/StyleTTS2/G2P/MToken.swift",
        "Models/StyleTTS2/G2P/MisakiTextProcessor.swift",
        "Models/StyleTTS2/G2P/TokenContext.swift",
        "Models/StyleTTS2/KittenTTS/KittenTTSConfig.swift",
        "Models/StyleTTS2/KittenTTS/KittenTTSISTFTNet.swift",
        "Models/StyleTTS2/KittenTTS/KittenTTSModel.swift",
        "Models/StyleTTS2/KittenTTS/KittenTTSModules.swift",
        "Models/StyleTTS2/KittenTTS/KittenTTSTextCleaner.swift",
        "Models/StyleTTS2/Kokoro/KokoroConfig.swift",
        "Models/StyleTTS2/Kokoro/KokoroDecoder.swift",
        "Models/StyleTTS2/Kokoro/KokoroModel.swift",
        "Models/StyleTTS2/Kokoro/KokoroModules.swift",
        "Models/StyleTTS2/Kokoro/KokoroMultilingualProcessor.swift",
        "Models/StyleTTS2/SharedConfigs.swift",
        "TTSModel.swift",
        "TextProcessor.swift"
      ],
      "target_dependencies" : [
        "MLXAudioCore",
        "MLXAudioCodecs",
        "MLXAudioG2P"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MLXAudioSTT",
      "module_type" : "SwiftTarget",
      "name" : "MLXAudioSTT",
      "path" : "Sources/MLXAudioSTT",
      "product_dependencies" : [
        "MLX",
        "MLXFast",
        "MLXNN",
        "MLXLMCommon",
        "MLXLLM",
        "HuggingFace",
        "Transformers"
      ],
      "product_memberships" : [
        "MLXAudioSTT",
        "MLXAudioSTS",
        "MLXAudioUI",
        "MLXAudio",
        "mlx-audio-swift-tts",
        "mlx-audio-swift-sts",
        "mlx-audio-swift-stt"
      ],
      "sources" : [
        "Generation.swift",
        "MLXAudioSTT.swift",
        "Models/Canary/CanaryConfig.swift",
        "Models/Canary/CanaryModel.swift",
        "Models/CohereTranscribe/CohereTranscribe.swift",
        "Models/CohereTranscribe/CohereTranscribeAudio.swift",
        "Models/CohereTranscribe/CohereTranscribeConfig.swift",
        "Models/CohereTranscribe/CohereTranscribeDecoder.swift",
        "Models/CohereTranscribe/CohereTranscribeEncoder.swift",
        "Models/CohereTranscribe/CohereTranscribeTokenizer.swift",
        "Models/FireRedASR2/FireRedASR2Audio.swift",
        "Models/FireRedASR2/FireRedASR2Config.swift",
        "Models/FireRedASR2/FireRedASR2Model.swift",
        "Models/FireRedASR2/FireRedASR2Tokenizer.swift",
        "Models/GLMASR/GLMASR.swift",
        "Models/GLMASR/GLMASRConfig.swift",
        "Models/GLMASR/GLMASRLayers.swift",
        "Models/GLMASR/STTOutput.swift",
        "Models/GraniteSpeech/GraniteSpeech.swift",
        "Models/GraniteSpeech/GraniteSpeechConfig.swift",
        "Models/LasrCTC/LasrCTCConfig.swift",
        "Models/LasrCTC/LasrCTCModel.swift",
        "Models/Moonshine/MoonshineConfig.swift",
        "Models/Moonshine/MoonshineModel.swift",
        "Models/MossTranscribeDiarize/MossTranscribeDiarize.swift",
        "Models/MossTranscribeDiarize/MossTranscribeDiarizeConfig.swift",
        "Models/Nemo/NemoAlignment.swift",
        "Models/Nemo/NemoAttention.swift",
        "Models/Nemo/NemoDecodingLogic.swift",
        "Models/Nemo/NemoRNNTConfig.swift",
        "Models/Nemo/NemoRNNTLayers.swift",
        "Models/NemotronASR/NemotronASRAudio.swift",
        "Models/NemotronASR/NemotronASRConfig.swift",
        "Models/NemotronASR/NemotronASRConformer.swift",
        "Models/NemotronASR/NemotronASRModel.swift",
        "Models/NemotronASR/NemotronASRStreamSession.swift",
        "Models/NemotronASR/NemotronASRStreaming.swift",
        "Models/NemotronASR/NemotronASRTokenizer.swift",
        "Models/Parakeet/ParakeetAudio.swift",
        "Models/Parakeet/ParakeetCTCLayers.swift",
        "Models/Parakeet/ParakeetConfig.swift",
        "Models/Parakeet/ParakeetConformer.swift",
        "Models/Parakeet/ParakeetModel.swift",
        "Models/Parakeet/ParakeetNemoAliases.swift",
        "Models/Parakeet/ParakeetTokenizer.swift",
        "Models/Qwen3ASR/Qwen3ASR.swift",
        "Models/Qwen3ASR/Qwen3ASRConfig.swift",
        "Models/Qwen3ASR/Qwen3ForcedAligner.swift",
        "Models/SenseVoice/SenseVoiceAudio.swift",
        "Models/SenseVoice/SenseVoiceConfig.swift",
        "Models/SenseVoice/SenseVoiceModel.swift",
        "Models/SenseVoice/SenseVoiceTokenizer.swift",
        "Models/VoxtralRealtime/VoxtralRealtime.swift",
        "Models/VoxtralRealtime/VoxtralRealtimeAudio.swift",
        "Models/VoxtralRealtime/VoxtralRealtimeConfig.swift",
        "Models/VoxtralRealtime/VoxtralRealtimeDecoder.swift",
        "Models/VoxtralRealtime/VoxtralRealtimeEncoder.swift",
        "Models/VoxtralRealtime/VoxtralRealtimeStreamSession.swift",
        "Models/VoxtralRealtime/VoxtralRealtimeTokenizer.swift",
        "Models/Wav2Vec2/Wav2Vec2CTC.swift",
        "Models/Wav2Vec2/Wav2Vec2STTConfig.swift",
        "Models/Whisper/WhisperAudio.swift",
        "Models/Whisper/WhisperConfig.swift",
        "Models/Whisper/WhisperLayers.swift",
        "Models/Whisper/WhisperModel.swift",
        "Models/Whisper/WhisperTokenizer.swift",
        "Streaming/IncrementalMelSpectrogram.swift",
        "Streaming/StreamingEncoder.swift",
        "Streaming/StreamingInferenceSession.swift",
        "Streaming/StreamingTypes.swift"
      ],
      "target_dependencies" : [
        "MLXAudioCore",
        "MLXAudioCodecs",
        "MLXAudioVAD"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MLXAudioSTS",
      "module_type" : "SwiftTarget",
      "name" : "MLXAudioSTS",
      "path" : "Sources/MLXAudioSTS",
      "product_dependencies" : [
        "MLX",
        "MLXNN",
        "MLXFast",
        "MLXLMCommon",
        "MLXLLM",
        "HuggingFace",
        "Transformers"
      ],
      "product_memberships" : [
        "MLXAudioSTS",
        "MLXAudioUI",
        "MLXAudio",
        "mlx-audio-swift-sts"
      ],
      "sources" : [
        "Models/DeepFilterNet/DeepFilterNetConfig.swift",
        "Models/DeepFilterNet/DeepFilterNetDSP.swift",
        "Models/DeepFilterNet/DeepFilterNetForward.swift",
        "Models/DeepFilterNet/DeepFilterNetLayers.swift",
        "Models/DeepFilterNet/DeepFilterNetModel.swift",
        "Models/DeepFilterNet/DeepFilterNetStreamer.swift",
        "Models/LFMAudio/Conformer.swift",
        "Models/LFMAudio/Detokenizer.swift",
        "Models/LFMAudio/LFMAudioConfig.swift",
        "Models/LFMAudio/LFMAudioModel.swift",
        "Models/LFMAudio/Processor.swift",
        "Models/LFMAudio/Transformer.swift",
        "Models/MossFormer2SE/MossFormer2Config.swift",
        "Models/MossFormer2SE/MossFormer2DSP.swift",
        "Models/MossFormer2SE/MossFormer2Layers.swift",
        "Models/MossFormer2SE/MossFormer2Model.swift",
        "Models/SAMAudio/SAMAudio.swift",
        "Models/SAMAudio/SAMAudioAlign.swift",
        "Models/SAMAudio/SAMAudioConfig.swift",
        "Models/SAMAudio/SAMAudioPatcher.swift",
        "Models/SAMAudio/SAMAudioProcessor.swift",
        "Models/SAMAudio/SAMAudioRope.swift",
        "Models/SAMAudio/SAMAudioTextEncoder.swift",
        "Models/SAMAudio/SAMAudioTransformer.swift",
        "Models/SAMAudio/SAMAudioTypes.swift",
        "Models/SAMAudio/SAMAudioWeights.swift",
        "STSModel.swift"
      ],
      "target_dependencies" : [
        "MLXAudioCore",
        "MLXAudioCodecs",
        "MLXAudioTTS",
        "MLXAudioSTT"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MLXAudioLID",
      "module_type" : "SwiftTarget",
      "name" : "MLXAudioLID",
      "path" : "Sources/MLXAudioLID",
      "product_dependencies" : [
        "MLX",
        "MLXNN",
        "HuggingFace"
      ],
      "product_memberships" : [
        "MLXAudioLID",
        "MLXAudio",
        "mlx-audio-swift-lid"
      ],
      "sources" : [
        "LIDOutput.swift",
        "Models/EcapaTdnn/EcapaMelSpectrogram.swift",
        "Models/EcapaTdnn/EcapaTdnnConfig.swift",
        "Models/EcapaTdnn/EcapaTdnnLID.swift",
        "Models/EcapaTdnn/EcapaTdnnLayers.swift",
        "Models/Wav2Vec2/Wav2Vec2Config.swift",
        "Models/Wav2Vec2/Wav2Vec2LID.swift",
        "Models/Wav2Vec2/Wav2Vec2Layers.swift"
      ],
      "target_dependencies" : [
        "MLXAudioCore",
        "MLXAudioCodecs"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MLXAudioG2P",
      "module_type" : "SwiftTarget",
      "name" : "MLXAudioG2P",
      "path" : "Sources/MLXAudioG2P",
      "product_dependencies" : [
        "MLX",
        "MLXNN"
      ],
      "product_memberships" : [
        "MLXAudioTTS",
        "MLXAudioSTS",
        "MLXAudioUI",
        "MLXAudioG2P",
        "MLXAudio",
        "mlx-audio-swift-tts",
        "mlx-audio-swift-sts"
      ],
      "sources" : [
        "Attention.swift",
        "Config.swift",
        "Decoder.swift",
        "DecoderLayer.swift",
        "Encoder.swift",
        "EncoderLayer.swift",
        "FeedForward.swift",
        "G2P.swift",
        "G2PTypes.swift",
        "Lexicon/CMUDict/ARPAbetMapper.swift",
        "Lexicon/CMUDict/CMUDictLoader.swift",
        "Lexicon/CMUDict/CMUDictParser.swift",
        "Lexicon/InMemoryLexicon.swift",
        "Lexicon/LexiconEntry.swift",
        "Lexicon/LexiconProviding.swift",
        "Model.swift",
        "NeuralPhonemizer.swift",
        "RelativePositionBias.swift",
        "Tokenizer.swift",
        "Weights.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MLXAudioCore",
      "module_type" : "SwiftTarget",
      "name" : "MLXAudioCore",
      "path" : "Sources/MLXAudioCore",
      "product_dependencies" : [
        "MLX",
        "MLXNN",
        "HuggingFace"
      ],
      "product_memberships" : [
        "MLXAudioCore",
        "MLXAudioCodecs",
        "MLXAudioTTS",
        "MLXAudioSTT",
        "MLXAudioVAD",
        "MLXAudioLID",
        "MLXAudioSTS",
        "MLXAudioUI",
        "MLXAudio",
        "mlx-audio-swift-tts",
        "mlx-audio-swift-codec",
        "mlx-audio-swift-sts",
        "mlx-audio-swift-stt",
        "mlx-audio-swift-lid"
      ],
      "sources" : [
        "AudioPlayer.swift",
        "AudioSessionManager.swift",
        "AudioUtils.swift",
        "DSP.swift",
        "Generation/GenerationTypes.swift",
        "ModelUtils.swift",
        "PCMStreamConverter.swift",
        "SentencePieceTokenizer.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MLXAudioCodecs",
      "module_type" : "SwiftTarget",
      "name" : "MLXAudioCodecs",
      "path" : "Sources/MLXAudioCodecs",
      "product_dependencies" : [
        "MLX",
        "MLXFast",
        "MLXNN",
        "MLXLMCommon",
        "HuggingFace",
        "Transformers"
      ],
      "product_memberships" : [
        "MLXAudioCodecs",
        "MLXAudioTTS",
        "MLXAudioSTT",
        "MLXAudioLID",
        "MLXAudioSTS",
        "MLXAudioUI",
        "MLXAudio",
        "mlx-audio-swift-tts",
        "mlx-audio-swift-codec",
        "mlx-audio-swift-sts",
        "mlx-audio-swift-stt",
        "mlx-audio-swift-lid"
      ],
      "sources" : [
        "AudioCodecModel.swift",
        "BigVGAN/BigVGAN.swift",
        "BigVGAN/BigVGANConfig.swift",
        "BigVGAN/BigVGANLayers.swift",
        "DACVAE/DACVAE.swift",
        "DACVAE/DACVAEConfig.swift",
        "DACVAE/DACVAEDecoder.swift",
        "DACVAE/DACVAEEncoder.swift",
        "DACVAE/DACVAELayers.swift",
        "DACVAE/DACVAEWatermark.swift",
        "Descript/DescriptDAC.swift",
        "Descript/DescriptDACConfig.swift",
        "Descript/DescriptQuantization.swift",
        "EcapaTdnn/EcapaTdnnBackbone.swift",
        "EcapaTdnn/EcapaTdnnConfig.swift",
        "Encodec/Encodec.swift",
        "Encodec/EncodecConfig.swift",
        "Encodec/EncodecLayers.swift",
        "Encodec/EncodecQuantization.swift",
        "FishS1DAC/FishS1DAC.swift",
        "FishS1DAC/FishS1DACConfig.swift",
        "FishS1DAC/FishS1DACLayers.swift",
        "FishS1DAC/FishS1DACQuantization.swift",
        "FishS1DAC/FishS1DACTransformer.swift",
        "HiggsAudio/HiggsAudioTokenizer.swift",
        "Mimi/Conv.swift",
        "Mimi/Mimi.swift",
        "Mimi/Quantization.swift",
        "Mimi/Seanet.swift",
        "Mimi/Transformer.swift",
        "MossAudioTokenizer/MossAudioTokenizer.swift",
        "S3/S3TokenizerV2.swift",
        "S3Gen/CAMPPlus.swift",
        "S3Gen/ConformerEncoder.swift",
        "S3Gen/FlowMatching.swift",
        "S3Gen/HiFTGenerator.swift",
        "S3Gen/S3GenMel.swift",
        "S3Gen/StepAudio2.swift",
        "SNAC/Attention.swift",
        "SNAC/Config.swift",
        "SNAC/Layers.swift",
        "SNAC/SNACDecoder.swift",
        "SNAC/VQ.swift",
        "Vocos/Vocos.swift",
        "Vocos/VocosBackbone.swift"
      ],
      "target_dependencies" : [
        "MLXAudioCore"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.2"
}
Done.