Softanza
StartFrançais
Softanza
The library documents itself · Sound

stzVoice

25 own methods · 3 forms written with extensions, listed under their method

the source: base/sound/stzVoice.ring(opens in a new tab) · All classes · The area reference: Sound

Under each method, its extensions (Q CS XT Z ZZ IB W U): bold and ticked, it exists; struck, it does not. The extensions and what they mean

No method of this class is run on this page: the class reaches files, the network, processes, the clock, chance or sound, and an example run here would only be an example of its effects. Each method carries the explanation the library gives of itself.

Method
Explanation, as the source carries it
init
(no comment in the source: the name reads as a sentence) initno extension
Release
(no comment in the source: the name reads as a sentence) releaseno extension
IsUsable
can this machine speak at all? -------------------------------------- ASK THIS FIRST. A machine with no speech engine is a supported configuration, not a broken install, and every other path still works.no extension
LastError
(no comment in the source: the name reads as a sentence) last errorno extension
Refusals
(no comment in the source: the name reads as a sentence) refusalsno extension
VoiceCount
what it can do, as DATAno extension
VoiceNames
(no comment in the source: the name reads as a sentence) voice namesno extension
Languages
The BCP-47 tags this machine can SPEAK. Not what it can hear -- that is stzListener's question and on this machine the answer differs.no extension
ToVoiceList
The whole capability matrix for this direction: [ [name, tag], ... ]no extension
HasLanguage
(no comment in the source: the name reads as a sentence) has languageno extension
CurrentVoiceName
(no comment in the source: the name reads as a sentence) current voice nameno extension
CurrentLanguage
(no comment in the source: the name reads as a sentence) current languageno extension
UseLanguage
choosing ------------------------------------------------------------ REFUSES rather than substitutes. An exact tag match is tried first, then a language-only match ("fr" finds "fr-FR") -- which is a WIDENING within one language, not a substitution across two. Anything else is a counted refusal, and the reason names what the machine actually has.QCSXTZZZIBWU
UseVoice
(no comment in the source: the name reads as a sentence) use voiceQCSXTZZZIBWU
SetRate
SAPI takes rate -10..10 and volume 0..100 and IGNORES anything else. The engine clamps and reports, because a setting that silently does nothing is worse than one that is visibly limited.no extension
SetVolume
(no comment in the source: the name reads as a sentence) set volumeno extension
WarmUp
WARMING UP ---------------------------------------------------------- Pay the cold cost NOW, not in the middle of the first sentence. VC0 measured a cold synthesis at 4.3x a warm one -- the same trap SN0 found in ma_device_start, where start-up took 500 ms and callbacks ran ahead of real time during it. One inaudible syllable, discarded.no extension
IsWarm
(no comment in the source: the name reads as a sentence) is warmno extension
ToSoundOf
THE PRIMARY VERB: text in, DATA out --------------------------------- A stzSound, or "" on refusal. Needs no audio device at all: the whole point is that a voice becomes a buffer, and a buffer needs no speaker.no extension
ToSoundOfSsml
The same, with SSML prosody. The engine validates the markup, because the platform does not: handed an unclosed tag SAPI silently discards it and speaks the words, so a typo means the prosody never happens and nobody is told.no extension
Say
the convenience ----------------------------------------------------- Say it, and wait. The simple case in one line, for a script.QCSXTZZZIBWU
ToTransportOf
never left it: the phrase ended, the transport kept rendering silence, and IsPlaying stayed true forever. A spoken phrase has a KNOWN length, so the transport is given it. The trap was real enough to hang this face's own demo before it was found.no extension
SampleRate
what a caller must not assume -------------------------------------- The format the platform produces. NOT 48 kHz, so anything that measures loudness must resample first -- BS.1770 refuses another rate rather than returning a plausible number.no extension
Channels
(no comment in the source: the name reads as a sentence) channelsno extension
SynthesisIsTheBottleneck
Synthesis is under one percent of the plane's output latency, so speech is not slow because it is computed -- it is late because the audio path is long. See the header, and the sound plan's S.5.no extension