nx_tts_word.nx
buildroot/runtime/nx_tts_word.nx
about
nx_tts_word.nx -- R2.1 of the sovereign voice: from vowels to a WORD. Two upgrades over nx_tts_formant:
(1) a TRIANGULAR GLOTTAL PULSE (open phase) instead of a bare impulse -> richer, far less buzzy voiced source;
(2) a NOISE-EXCITED CONSONANT -- /h/ aspiration = a sovereign PRNG white-noise source shaped by the following
vowel's formants -- so she says an actual word: "hi" = /h/ + /a->i/ diphthong. Voiced (periodic) + unvoiced
(aperiodic) excitation both present = real speech structure. Writes a playable WAV. Still zero ML, hardware-up.
license_tier: ORIGINAL expect_exit: 0
dependencies 5 imports · 0 importers
imports: nx_syscalls.nxnx_f32.nxnx_f32_sincos.nxnx_f32_exp.nxnx_f32_cvt.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| 12 | const F_MAGIC_1103515245: i64 = 1103515245 |
| 13 | const F_MAGIC_12345: i64 = 12345 |
| 14 | const F_MAGIC_1150: i64 = 1150 |
| 15 | const F_MAGIC_2900: i64 = 2900 |
| 16 | const F_MAGIC_2250: i64 = 2250 |
| 17 | const F_MAGIC_32768: i64 = 32768 |
| 18 | const F_MAGIC_32767: i64 = 32767 |
| 20 | const SR: i64 = 16000 |
| 21 | const F_PI: i64 = 0x40490FDB |
| 22 | const F_2PI: i64 = 0x40C90FDB |
| 23 | const F_ONE: i64 = 0x3F800000 |
| 24 | const WAV_PATH: *u8 = "/mnt/c/Users/elder/AppData/Local/Temp/claude/C--Users-elder/e373474e-29d5-4488-9fe2-f191e3b1a524/scratchpad/elara_hi.wav" as *u8 |
functions
| 26 | func tw(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(1,s,n); return 0 } |
| 27 | func tn(v: i64) -> i64 { let bb: *u8=sys_mmap(28); var m: i64=v; if m<0{sys_write(1,"-" as *u8,1);m=0-m} let t: *u8=sys_mmap(28); var k: i64=0; if m==0{t[0]=48 as u8;k=1} while m>0{t[k]=(48+(m%10)) as u8;m=m/10;k=k+1} var i: i64=0; while i<k{bb[i]=t[k-1-i];i=i+1} sys_write(1,bb,k); return 0 } |
| 29 | func reson_ab(F: i64, BW: i64, out2: *i64) -> i64 |
| 38 | func cascade(x: i64, ab: *i64, st: *i64) -> i64 |
| 46 | func f32_to_int(m: i64) -> i64 called by 1: main |
| 55 | func glottal(phase: i64, period: i64) -> i64 |
| 63 | func prng(st: *i64) -> i64 { st[0] = (st[0]*F_MAGIC_1103515245 + F_MAGIC_12345) & 0x7FFFFFFF; return st[0] } called by 1: main |
| 65 | func pB(buf: *u8, po: *i64, b: i64) -> i64 { buf[po[0]] = (b & 0xFF) as u8; po[0]=po[0]+1; return 0 } |
| 66 | func pU16(buf: *u8, po: *i64, v: i64) -> i64 { pB(buf,po,v); pB(buf,po,v>>8); return 0 } |
| 67 | func pU32(buf: *u8, po: *i64, v: i64) -> i64 { pB(buf,po,v); pB(buf,po,v>>8); pB(buf,po,v>>16); pB(buf,po,v>>24); return 0 } |
| 68 | func pStr(buf: *u8, po: *i64, s: *u8) -> i64 { var i: i64=0; while s[i]!=(0 as u8){ buf[po[0]]=s[i]; po[0]=po[0]+1; i=i+1 } return 0 } called by 1: main |
| 70 | func main() -> i64 |