37 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| Sonic is a simple algorithm for speeding up or slowing down speech.  However,
 | |
| it's optimized for speed ups of over 2X, unlike previous algorithms for changing
 | |
| speech rate.  The Sonic library is a very simple ANSI C library that is designed
 | |
| to easily be integrated into streaming voice applications, like TTS back ends.
 | |
| 
 | |
| The primary motivation behind Sonic is to enable the blind and visually impaired
 | |
| to improve their productivity with open source speech engines, like espeak.
 | |
| Sonic can also be used by the sighted.  For example, Sonic can improve the
 | |
| experience of listening to an audio book on an Android phone.
 | |
| 
 | |
| A native Java port of Sonic is in Sonic.java.  Main.java is a simple example of
 | |
| how to use Sonic.java.  To play with it, you'll need a "talking.wav" file in the
 | |
| current directory, and you'll want to change the speed, pitch or other
 | |
| parameters manually in Main.java, in the main method.
 | |
| 
 | |
| Sonic is Copyright 2010, 2011, Bill Cox, all rights reserved.  It is released
 | |
| under the Apache 2.0 license, to promote usage as widely as possible.
 | |
| 
 | |
| Performance test:
 | |
| 
 | |
| I sped up a 751958176 byte wav file with sonic (a 9 hour, 28 minute mono audio
 | |
| file encoded at 16-bit 11.KHz), but with the output writing disabled.  The
 | |
| reported time, running Ubuntu 11.04 on my HP Pavilion dm4 laptop was:
 | |
| 
 | |
| real    0m50.839s
 | |
| user    0m47.370s
 | |
| sys     0m0.620s
 | |
| 
 | |
| The Java version is not much slower.  It reported:
 | |
| 
 | |
| real    0m52.043s
 | |
| user    0m51.190s
 | |
| sys     0m0.310s
 | |
| 
 | |
| Author: Bill Cox
 | |
| email: waywardgeek@gmail.com
 |