Repository navigation
v0.4.1 #28
xpertvoip
announced in
Announcements
v0.4.1
#28
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Fixed
pausenow pauses. It stops caller audio and DTMF going to the agent, holds queuedagent audio and suspends barge-in until
resume(mod_audio_stream semantics, whichcontrollers rely on for "pause until pickCall"). Before, it only closed the ready-gate: the
agent kept hearing the caller while "paused", and in the default
ready=firstframemode thenext agent frame reopened the gate.
statusreportspaused.(clamped at 8 KB: 256 ms of L16 at 16 kHz), the pipecat protobuf path and the base64 JSON
paths (16 KB) decoded into one fixed buffer and silently dropped the rest of a larger frame.
Large frames are now decoded in pieces. Regression test:
test/test_proto_audio.c(native L16/PCMU, pipecat protobuf, OpenAI base64 delta).
mask on|offcovers every stream on the channel, including fan-out transcription orsupervisor streams, from the operator API and from the agent's
maskcommand, and a streamstarted inside an open window starts masked before its media bug goes live. Before, it
masked only the stream it was addressed to, so a side stream kept receiving the card number.
each mark has played, in order. Before, every pending mark was echoed only once the whole
play buffer drained. Marks pinned to audio discarded by a flush/clear are still echoed at
once (Twilio reports cleared marks too).
replace every outbound frame with silence when no agent audio was queued, which muted the
controller's ringback (
uuid_broadcast) and hold music until the agent's first word. Theframe is now left untouched unless agent audio is being played; for 300 ms after the last
agent frame the line stays silent, so gaps between chunks of one utterance do not let the
underlying audio blip through. A barge-in hands the line back at once.
ready,paused,masking) are read and written withatomics instead of plain loads and stores.
Changed
es_ws.hno longer calls itself a reviewed draft; the header describes the sharedservice-thread pool that has been in place since 0.1.0.
docs/MODULE-VS-AGENT.mdexplaining what module-side VAD is (energy endpointing, not aturn model), when to leave it off (agents with their own VAD), and why edge latency metrics differ
from agent-side metrics; README/FEATURES/WHY say "VAD endpointing" instead of "turn detection".
Binaries
Built by CI from this tag on Debian 12 (bookworm), amd64, against the SignalWire FreeSWITCH packages:
mod-earshot_0.4.1_fs1.11_debian12_amd64.deb/.somod-earshot_0.4.1_fs1.10_debian12_amd64.deb/.soNeeds
libwebsockets(apt install libwebsockets16on bookworm). Checksums inSHA256SUMS. Other distributions: build from source, see the README quickstart.This discussion was created from the release v0.4.1.
All reactions