153a5a1b3Sopenharmony_ciSonic is a simple algorithm for speeding up or slowing down speech. However, 253a5a1b3Sopenharmony_ciit's optimized for speed ups of over 2X, unlike previous algorithms for changing 353a5a1b3Sopenharmony_cispeech rate. The Sonic library is a very simple ANSI C library that is designed 453a5a1b3Sopenharmony_cito easily be integrated into streaming voice applications, like TTS back ends. 553a5a1b3Sopenharmony_ci 653a5a1b3Sopenharmony_ciThe primary motivation behind Sonic is to enable the blind and visually impaired 753a5a1b3Sopenharmony_cito improve their productivity with open source speech engines, like espeak. 853a5a1b3Sopenharmony_ciSonic can also be used by the sighted. For example, Sonic can improve the 953a5a1b3Sopenharmony_ciexperience of listening to an audio book on an Android phone. 1053a5a1b3Sopenharmony_ci 1153a5a1b3Sopenharmony_ciA native Java port of Sonic is in Sonic.java. Main.java is a simple example of 1253a5a1b3Sopenharmony_cihow to use Sonic.java. To play with it, you'll need a "talking.wav" file in the 1353a5a1b3Sopenharmony_cicurrent directory, and you'll want to change the speed, pitch or other 1453a5a1b3Sopenharmony_ciparameters manually in Main.java, in the main method. 1553a5a1b3Sopenharmony_ci 1653a5a1b3Sopenharmony_ciSonic is Copyright 2010, 2011, Bill Cox, all rights reserved. It is released 1753a5a1b3Sopenharmony_ciunder the Apache 2.0 license, to promote usage as widely as possible. 1853a5a1b3Sopenharmony_ci 1953a5a1b3Sopenharmony_ciPerformance test: 2053a5a1b3Sopenharmony_ci 2153a5a1b3Sopenharmony_ciI sped up a 751958176 byte wav file with sonic (a 9 hour, 28 minute mono audio 2253a5a1b3Sopenharmony_cifile encoded at 16-bit 11.KHz), but with the output writing disabled. The 2353a5a1b3Sopenharmony_cireported time, running Ubuntu 11.04 on my HP Pavilion dm4 laptop was: 2453a5a1b3Sopenharmony_ci 2553a5a1b3Sopenharmony_cireal 0m50.839s 2653a5a1b3Sopenharmony_ciuser 0m47.370s 2753a5a1b3Sopenharmony_cisys 0m0.620s 2853a5a1b3Sopenharmony_ci 2953a5a1b3Sopenharmony_ciThe Java version is not much slower. It reported: 3053a5a1b3Sopenharmony_ci 3153a5a1b3Sopenharmony_cireal 0m52.043s 3253a5a1b3Sopenharmony_ciuser 0m51.190s 3353a5a1b3Sopenharmony_cisys 0m0.310s 3453a5a1b3Sopenharmony_ci 3553a5a1b3Sopenharmony_ciAuthor: Bill Cox 3653a5a1b3Sopenharmony_ciemail: waywardgeek@gmail.com 37