You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.5 KiB
37 lines
1.5 KiB
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
|