Wiki

This version (23 Jan 2015 20:16) was approved by John McCarty.The Previously approved version (23 Jan 2015 19:58) is available.Diff

Pitch Transposer

Under Construction

Click here to return to the Pitch Modification page

This algorithm shifts the frequency of an incoming signal. There are two versions of the algorithm. This version allows the user to manually set the pitch shift amount by entering it in the GUI (or writing a value directly to RAM). See Pitch Transposer (Data Controlled) for the “voltage-controlled” version.


Input Pins

NameFormat [int/dec] - [control/audio]Function Description
Pin 0: Inputany - anyInput signal that will have its frequency shifted

Output Pins

NameFormat [int/dec] - [control/audio]Function Description
Pin 0: Outputany - anyOutputs the processed signal

GUI Controls

GUI Control NameDefault ValueRangeFunction Description
Delay Reserved300[2.0:Max Data RAM Available]This control sets the number of samples of audio delay that are reserved in memory as a buffer used for the pitch shifting algorithm. Smaller delay buffers result in more discontinuities in the pitch shifted output signal, which causes some harmonic distortion. Setting this delay buffer to a very large size will result in less distortion, but at the cost of increased delay memory usage.
Frequency Shift SliderCenter[Left:Right]The slider in the middle of the cell sets the amount of pitch shift. When the slider is exactly in the middle, there will be no pitch shift. When the slider is to the right of the center, the pitch of the input signal will be shifted up in frequency. When the slider is to the left of the center, the pitch of the input signal will be shifted down in frequency. When the slider is all the way to the left or right, the pitch will be shifted by the maximum amount (down or up), as determined by the setting of the Max Shift control.
Max Shift100[0:Delay Reserved] Maximum Percentage (%) change of input frequency, controlled by the Frequency shift slider. The actual percentage of frequency shift is dependent on the “Delay Reserved” amount.

DSP Parameter Information

GUI Control NameCompiler NameFunction Description
TBDTBDTBD
TBDTBDTBD

Algorithm Description

The algorithm takes an input signal and shifts it in frequency up or down depending on the settings of the control. Here is a time-domain display of a sine tone being shifted in frequency. The top sine tone is the input signal, and the bottom sine tone is the output.

Approximate Output frequency = Input frequency - (Input frequency * (Delay Reserved x 0.001) x Max shift(%))



Here is the same example in the frequency domain. This picture shows the frequency domain of the input signal.


This picture shows the frequency domain of the output signal.

Example

The algorithm can simply be inserted into the signal chain to shift the frequency of the signal that is input to it.

Algorithm Details

Toolbox PathADI Algorithms/Pitch Modification
Cores SupportedAD194x
ADAU170x
ADAU144x
ADAU176x
ADAU1781
ADAU145X
“Grow Algorithm” Supportedno
“Add Algorithm” Supportedno
Subroutine/Loop Basedno
Program RAM76
Data RAM1019
Parameter RAM4
resources/tools-software/sigmastudio/toolbox/adialgorithms/pitchmodification/pitchtransposer.txt · Last modified: 23 Jan 2015 20:16 by John McCarty