code wiki / (root) / nx_voice_clone_synth_gate.nx

nx_voice_clone_synth_gate.nx

buildroot/runtime/nx_voice_clone_synth_gate.nx

5943 B155 linesdepth 6pulls 9 transitivereach 0 importersview sourcekind gate/prooftopic voice
docsdependenciesstructsconstsfunctions

about

nx_voice_clone_synth_gate.nx -- REFEREE for VOICE-CLONE-001 rung 2 (create). Builds two reference speakers with the source-filter model (same generator as the rung-1 gate): A (/a/-tract, F0 120) and B (/i/-tract, F0 182). Captures vpA, vpB. Then CREATES new audio in A's voice at a BRAND-NEW pitch (140 Hz, which is neither A's 120 nor B's 182) via nx_voice_clone_synth(vpA, 140). PASS conditions (all measured + printed): 1. the created clone re-prints CLOSE to A and FAR from B dist(clone,A) * 4 < dist(clone,B) -> it IS A, not B 2. the created clone's pitch is the REQUESTED 140 Hz (+-12) -> A's identity, retargeted to any pitch (the singing tie-in) 3. TAMPER (neg-control): synthesizing from a SCRAMBLED voiceprint produces audio FAR from A -> the created identity is DETERMINED by the print, not an artifact of the synthesizer. dist(cloneScram,A) > 4 * dist(clone,A) Evidence -> stdout + knowledge/status/voice_clone_synth_gate.log. Exit 0 GREEN / 1 RED. Sovereign x86_64 throughout. license_tier: ORIGINAL

dependencies 3 imports · 0 importers

nx_syscalls_x86_64.nx nx_voiceprint.nx nx_voice_clone_synth.nx nx_voice_clone_synth_gate.nx

imports: nx_syscalls_x86_64.nxnx_voiceprint.nxnx_voice_clone_synth.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main sys_openat_append gp gn genvoice reson nx_voiceprint_extract nx_pitch_f0 _px_i16 nx_pitch_is_voiced nx_lpc_autocorr nx_lpc_levinson _q30_mul _vp_i64 nx_voice_clone_synth _cs_stepup nx_lpc_synth _i16_load_le _i64_load_le _i16_store_le_sat nx_voiceprint_distance

structs

none

consts

25const NSAMP: i64 = 2048
26const A2Q: i64 = 0 - 26542 // -r^2 in Q15, r=0.9

functions

28func gp(logfd: i64, s: *u8) -> i64
called by 1: main
35func gn(logfd: i64, v: i64) -> i64
called by 1: main
51func reson(buf: *i64, n: i64, a1q: i64) -> i64
called by 1: genvoice
65func genvoice(out_pcm: *u8, nsamp: i64, period: i64,
called by 1: main calls 1: reson
95func main() -> i64