🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

2 total messages Started by Todd Day Thu, 21 Sep 1989 16:31
Digital pitch shifting
#272
Author: Todd Day
Date: Thu, 21 Sep 1989 16:31
13 lines
865 bytes
Is there an easy way to do pitch shifting digitally in real time?
The only method I've been able to come up with involves repeating
or throwing out sections, which results in clicking.

I would like the method to be short and sweet, as I only have
time for 125 instructions/sample (250 if I only do mono).

Thanks.

-- 

Todd Day  |  todd@ivucsb.sba.ca.us  |  ivucsb!todd@anise.acc.com
"It takes a smart man to know when he's stupid." - Barney Rubble
Re: Digital pitch shifting
#268
Author: M.W.Guy
Date: Sat, 23 Sep 1989 13:16
21 lines
1489 bytes
In article <1989Sep21.163112.5656@ivucsb.sba.ca.us> todd@ivucsb.sba.ca.us (Todd Day) writes:
>Is there an easy way to do pitch shifting digitally in real time?
>The only method I've been able to come up with involves repeating
>or throwing out sections, which results in clicking.
>
>I would like the method to be short and sweet, as I only have
>time for 125 instructions/sample (250 if I only do mono).

The real way to do this is the ubiquitous phase vocoder.
Process the sound into amplitude/phase components for many frequency
bands, diddle with the results appropriately (in this case, shift the frequency
components up) and then transform back.  A 1024-point FFT will do this for you.

However, in 125 instructions of a conventional processor, your best way is
probably to have a cyclic buffer, with independent read- and write-pointers,
running at different rates.  You get a click every time the pointers pass each
other, but you can arrange the size of the buffer so that this happens every
50th of a second and people will ignore it as mains noise...

Yuk
	Martin
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads