[Speex-dev] speex algorithm

Steve Underwood steveu at coppice.org
Sat Oct 9 23:19:08 PDT 2004


I don't think code exists, but easy to implement techniques do.

Try looking up time domain harmonic scaling (TDHS) or pitch synchronous 
overlap and add (PSOLA). These provide variable speed without a pitch 
change. Take care using PSOLA - France Telecom has patents on it. The 
overlap and add part is very simple to implement, but you really want to 
sync to the F0 contour of the voice for best results. That takes some 
real work with linear voice data. However, with most low bit speech 
codecs, speex included, the pitch information you need is already in the 
data. So, if you take the speex pitch information, decode the speex to 
linear samples, and then apply the overlap and add technique synced to 
the F0 cycles you get pretty nice results. I've done this in digital 
answering machines in the past using another CELP based codec.


mark spowage wrote:

> ? is there any speex code in place that may help enable variable speed 
> playback ?
> or perhaps another open source project has some code for this ?
> variable speed playback for voice messaging is an attractive feature, 
> that would be
> well recieved for sure !
> thx for any reply,
> Mark
> */Tom Harper <tharper at sightspeed.com>/* wrote:
>     At 12:35 PM 10/6/2004, Matthias Granberry wrote:
>     >There is some SSE assembly
>     >language, but it's in GCC/AT&T syntax rather than the
>     windows-standard
>     >Intel syntax, so you might have to do some of your own translation to
>     >something your compiler understands.
>     We submitted an intel patch a ways back- maybe it is in the archives
>     somewhere...
>     Tom
>     -- 
>     Tom Harper - tharper at sightspeed.com
>     Lead Software Engineer
>     SightSpeed, Inc.
>     918 Parker St, Suite A14
>     Berkeley, CA 94710
>     Phone: 510.665.2920
>     Cell: 415.378.3779
>     web: http://www.sightspeed.com
>     video: http://tom.sightspeed.com/
>     _______________________________________________
>     Speex-dev mailing list
>     Speex-dev at xiph.org
>     http://lists.xiph.org/mailman/listinfo/speex-dev
> ------------------------------------------------------------------------
> Do you Yahoo!?
> Yahoo! Mail Address AutoComplete 
> <http://us.rd.yahoo.com/mail_us/taglines/aac/*http://promotions.yahoo.com/new_mail/static/ease.html> 
> - You start. We finish.
>Speex-dev mailing list
>Speex-dev at xiph.org

More information about the Speex-dev mailing list