kazeia/executorch-custom
Kazeia Team e647911329 Shared Module C++ pipeline: RTF 1.6 with perfect quality
Key breakthrough: C++ pipeline loop using the SAME Method* instances
that Java loaded (via Module::method("forward")). This gives:
- Same QNN compiled graph → identical numerical results → no trembling
- C++ loop → no Java Tensor/EValue allocation overhead
- prepare_input_tensors + memcpy + Method::execute (like cp_et_runner)

Pipeline: talker ~20ms/step + CP ~44ms/step + decoder 2.8s = 7.3s for 4.64s

Added to executorch JNI:
- Module.nativeSetCpModule() — registers CP module for pipeline
- Module.nativeRunTtsPipeline(...) — runs full talker+CP loop in C++
- Updated executorch.jar with new native method declarations

From RTF 4.9 (start of session) to RTF 1.6 with impeccable audio quality.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 12:05:58 +02:00
..
Module.java Shared Module C++ pipeline: RTF 1.6 with perfect quality 2026-04-09 12:05:58 +02:00
cp_et_runner.cpp Native C++ pipeline: RTF 1.4 (was 3.6 in Java) 2026-04-09 10:09:32 +02:00
cp_et_test_client.cpp Native C++ pipeline: RTF 1.4 (was 3.6 in Java) 2026-04-09 10:09:32 +02:00
jni_layer_tts.cpp Shared Module C++ pipeline: RTF 1.6 with perfect quality 2026-04-09 12:05:58 +02:00
tts_pipeline_jni.cpp Disable C++ pipeline (QNN non-deterministic), keep Java RTF 1.8 2026-04-09 11:42:49 +02:00