nx_lipsync.nx
buildroot/runtime/nx_lipsync.nx
about
nx_lipsync.nx -- TALKING AVATAR v0 (roadmap R6, the Duix-Avatar side of the operator's ask, sovereign + no
neural clone): TEXT -> visemes -> an animated mouth on a rendered face. A viseme = a mouth shape (open height +
width). Rule-based letter->viseme (vowels open wide, plosives m/b/p close the lips, silence shuts) -- the honest
ceiling: letter-level (not phoneme), rule-based (not Duix's trained clone). Renders a simple 2D face directly to
the framebuffer (no rig/SDF) so a synthetic human can TALK. Pairs with the sovereign TTS for audio. ORIGINAL
dependencies 1 imports · 2 importers
imports: nx_syscalls.nx
imported by: nx_lipsync_gate.nxnx_synth_serve.nx
structs
| none |
consts
| 7 | const K_MAGIC_1000000: i64 = 1000000 |
| 8 | const K_MAGIC_65536: i64 = 65536 |
functions
| 11 | func ls_viseme(c: i64, out2: *i64) -> i64 called by 1: ls_text_visemes |
| 28 | func ls_lc(c: i64) -> i64 { if c>=65 { if c<=90 { return c+32 } } return c } called by 1: ls_text_visemes |
| 30 | func ls_ellipse(fb: *i64, w: i64, h: i64, cx: i64, cy: i64, rx: i64, ry: i64, col: i64) -> i64 called by 1: ls_face_frame |
| 49 | func ls_face_frame(fb: *i64, w: i64, h: i64, openh: i64, openw: i64) -> i64 |
| 61 | func ls_text_visemes(text: *u8, vh: *i64, vw: *i64, maxn: i64) -> i64 |