Highlights
End-of-turn detection (Smart Turn v3.2)
- Added
OnnxSmartTurn, an ONNX Runtime wrapper for Pipecat Smart Turn v3.2, and aTurnCompletionInterfaceso any end-of-turn classifier can plug into turn detection. The published graph takes the last 8 s of 16 kHz audio and returns the probability that the user has finished; the Whisper log-mel front-end is embedded, so there is no host-side feature extraction. TurnDetectornow holds a turn when the classifier vetoes a VAD pause: audio keeps accumulating, resumed speech continues the same turn, andturn_completion_max_silenceends it anyway. Eager STT respects the veto. Configure withAgentConfig::turn_completion_thresholdandturn_completion_max_silence.- C API:
sc_turn_completion_vtable_t,sc_pipeline_set_turn_completion(), and the two matchingsc_config_tfields, so Swift and Kotlin hosts can supply their own classifier the same way as the VAD. - New
speech turn <utterance.wav>CLI (speech_smart_turn), model downloads forsoniqo/Smart-Turn-v3.2-ONNX, and docs including the README mirrors. Closes #145.
Desktop packages
- Linux amd64/arm64:
.deband.tar.gzCLI/server packages - Windows x64: self-contained
.zipwith ONNX Runtime and PowerShell model downloader - OpenAI-compatible local audio:
POST /v1/audio/speechandPOST /v1/audio/transcriptions
SpeechCore XCFramework
Checksum: 68517f044b98a54e8779dccab850ae383ad5a5595471430c9e10118abec345cd
Usage in Package.swift
.binaryTarget(
name: "CSpeechCore",
url: "https://github.com/soniqo/speech-core/releases/download/v0.0.14/SpeechCore.xcframework.zip",
checksum: "68517f044b98a54e8779dccab850ae383ad5a5595471430c9e10118abec345cd"
)What's Changed
- Add Smart Turn v3.2 end-of-turn classifier to turn detection by @ivan-digital in #146
Full Changelog: v0.0.13...v0.0.14