eSpeak. There are also Rust bindings for eSpeak