You sure seem to "know" a lot about this. I've got a demonstration that will back it up if you like. If you would like to review the demonstration, simply send me an email. ;) Cheers.
Robotic voice
Started by ●February 6, 2009
Reply by ●February 8, 20092009-02-08
Reply by ●February 8, 20092009-02-08
>why would changing the phase of each STFT (bin?) to a constant phase >cause of an input with varying pitch into a fixed pitch? > >r b-jThe result of an IFFT (in a phase vocoder) is a pulse-like sound ... so when these "grains" are summed together at regular intervals, there is an ostensibly fixed pitch. The zero phase values on the FFT before the phase vocoder's reconstruction step, applies a fixed pitch and forces the sound to be periodic. The random variations are converted into robotic sounds. ;)
Reply by ●February 8, 20092009-02-08
On Feb 8, 1:08�am, "zupeanut" <andrewnel...@gmail.com> wrote:> >why would changing the phase of each STFT (bin?) to a constant phase > >cause of an input with varying pitch into a fixed pitch? > > >r b-j > > The result of an IFFT (in a phase vocoder) is a pulse-like sound ... so > when these "grains" are summed together at regular intervals, there is an > ostensibly fixed pitch. �The zero phase values on the FFT before the phase > vocoder's reconstruction step, applies a fixed pitch and forces the sound > to be periodic. �The random variations are converted into robotic sounds. > ;)By forcing all the phases to zero you're introducing a discontinuity between successive transform records, so you'll hear a buzz at the grain rate modulating the signal. There are simpler ways to do this than all the fancy transforms. Might as well just multiply the voice signal with a short pulse of amplitude +/- 1.0 at the fundamental pitch you want the robot to speak with. Eric
Reply by ●February 8, 20092009-02-08
On Feb 8, 2:54 am, "zupeanut" <andrewnel...@gmail.com> wrote:> You sure seem to "know" a lot about this. I've got a demonstration that > will back it up if you like. If you would like to review the > demonstration, simply send me an email. ;)my email address is valid. i have never de-SPAMmed it. (i have to kill about a half dozen spams daily.) i'm using a Mac (so don't send me PC executables) but i have Octave finally working on this (so i might be able to run a MATLAB program). On Feb 8, 3:08�am, "zupeanut" <andrewnel...@gmail.com> wrote:> > The result of an IFFT (in a phase vocoder) is a pulse-like sound ... so > when these "grains" are summed together at regular intervals, there is an > ostensibly fixed pitch.these regular intervals are then the frame length (or frame hop) of the STFT. usually we select the frame rate on other criteria (like how fast the audio changes character and how big of an FFT we feel like doing) than the output pitch. i had not thought of spec'ing the frame length for that purpose. as a kid (or an adult) have you ever spoken loudly into a slowly turning fan blade? you don't need an FFT to chop up your voice. true, that fan-blade chopping doesn't reset phase of the frequency components, but they both will have the original frequency components surviving in the output. either as pitch components, or in the case of frictives, as formant components.> �The zero phase values on the FFT before the phase > vocoder's reconstruction step, applies a fixed pitch and forces the sound > to be periodic. �The random variations are converted into robotic sounds.the kind of vocoder effects i was thinking about was either: 1. with a channel vocoder (and the LPC thing does essentially the same thing, but with different maths) you extract the power spectrum from the input voice (ya "know", that's *is* similar to FFT and killing the phase, but there is a square operation missing, i'm happy to learn new things) and apply that power spectrum as a filter shaping an independent source of audio, whether it's a guitar (then it sounds like a "Talk-box") or some monotone rich in harmonics (the "robot"). sometimes this is repeated for several different sidechain inputs and the voice coming out sounds like several, not equally tuned, but saying the same syllables. 2. the other robotic effect i have seen uses pitch shifting (and the phase vocoder can be used to do pitch shifting, but it's expensive and unnecessary for a monophonic input) to shift the voice to a constant pitch (or a collection of differently tuned constant pitches) r b-j
Reply by ●February 8, 20092009-02-08
>1. with a channel vocoder (and the LPC thing does essentially the >same thing, but with different maths) you extract the power spectrum >from the input voice (ya "know", that's *is* similar to FFT and >killing the phase, but there is a square operation missing, i'm happy >to learn new things) and apply that power spectrum as a filter shaping >an independent source of audio, whether it's a guitar (then it sounds >like a "Talk-box") or some monotone rich in harmonics (the "robot"). >sometimes this is repeated for several different sidechain inputs and >the voice coming out sounds like several, not equally tuned, but >saying the same syllables.This is a really cool.>2. the other robotic effect i have seen uses pitch shifting (and the >phase vocoder can be used to do pitch shifting, but it's expensive and >unnecessary for a monophonic input) to shift the voice to a constant >pitch (or a collection of differently tuned constant pitches)I think most of the misunderstanding between us, was simply due to us "imagining" different robotic voices. Thanks for this post. I really like this kind of ASP. It's clear you do know your stuff. ;) Cheers. P.S. If you're interested in seeing the effect in action, it's actually a MATLAB file.
Reply by ●February 8, 20092009-02-08
On Feb 8, 4:08�pm, "zupeanut" <andrewnel...@gmail.com> wrote:> > P.S. > If you're interested in seeing the effect in action, it's actually a > MATLAB file.yeah, send it (pleeze). i think it will run on Octave. (you don't have any SP toolbox or other toolbox calls in it, do you?) L8r, r b-j
Reply by ●February 8, 20092009-02-08
On Feb 8, 7:56�pm, robert bristow-johnson <r...@audioimagination.com> wrote:> i think it will run on Octave. �(you don't > have any SP toolbox or other toolbox calls in it, do you?)Many (most?) SP toolbox functions are available in Octave using the Octave Forge collection: http://octave.sourceforge.net/ Eric
Reply by ●February 16, 20092009-02-16
VelociChicken wrote:>> 2. Why movie director imagine and make robot speak with such voice? > Because he's an unimaginative, follow-the-crowd, coke-sniffing brainless > monkey.Are you kidding? People still make movies in which, after a character types an important query on a computer keyboard, we see the computer reply a character at a time as if it were a 110-baud terminal, accompanied by some kind of funky clicky, buzzy, or bleepy pseudo-teletype sound per-character--maybe in green on black background. I suppose this is for the benefit of movie-goers who have never seen a computer for themselves, or only vaguely recall what they were like in the 70's. ;-)






