added voice synthsis function