1

I have a recording of speech, and I want to manipulate the voice, so a listener will perceive the manipulated voice and the original one as belonging to two different people. The manipulated voice should sound very natural, not computer-generated.

Just to clarify, the manipulated voice does not have to be modeled after the voice of someone; I'm not asking about mimicking a voice, as discussed here.

I have already used the SoundTouch library for pitch shifting, and it produces very nice results, but I want to change not only the pitch.

I saw this impressive video of a software called Voice Sculptor (couldn't find the company site), which demonstrate such a manipulation.

  • So I'm asking on a conceptual/algorithmic level how this can be done
  • And also if you know how to achieve this with specific tools.

Last note: I'm new to DSP, so I will appreciate any explanation of why and how.

Bohoo
  • 119
  • 1
  • 4

1 Answers1

1

You may use the same pitch shift technique, but a little bit modified. If, classically, in pitch shift algorithm, each frequency component changes by multiplication of its frequency on some pitch-shift coefficient k, you may try:

  1. Changing a little bit the amplitude of each spectral component.
  2. Multiply each frequency component not by k, but k+v(f), where v(f) shows variation dependent on frequency f. Such variation must be of much smaller value than k. I mean k >> v(f).