2

I am trying to create a voice that sounds like the Disney character Mickey Mouse.

My overall goal is to convert in real-time computer Text-To-Speech audio output to a voice that sounds like Mickey's. I'm hoping to accomplish this by applying a series of various filters on the source audio, but I'm not sure which ones to use. (If it helps, I'm currently attempting to do this in iOS utilizing the Audio Unit framework)

My naive initial guess was that this could be done by increasing the pitch of the source, but that does not result in a close sound.

Upon further analysis, it seems like a defining characteristic of Mickey's voice is an up-down sing-song quality. It seems like Mickey alternates between high and low pitched words, and within each word it also shifts upwards, and downwards. For example (0 being low pitch, 10 high), in first word the pitch starts at 5 and goes up to 8 and in second word the pitch starts at 7 and goes down to 3. But this is not consistent.

Some phrases that might seem to follow this pattern include: "Oh boy!", "Hot dog!" "Hi there!" "All right", etc. This doesn't always work though, as sometimes the character groups multiple words together before shifting pitches. I'm also not sure if pitch is the only factor here.

Theoretically I could apply different filters to different groups of words or blended between each other, but again, I'm not sure if I'm on the right track. (For what it's worth, I also found a post that more generally speaks about imitating voices, but I'm not sure if that would work here, and I'm hoping there is a more direct approach that might succeed, as that option basically generates an algorithm to manipulate the waveform of the voice without necessarily identifying any filters involved) Any help or pointing in the right direction would be greatly appreciated. Thanks!

For reference, here is a YouTube video that has some samples of Mickey's voice

4

There are different aspects in "the Mickey Mouse voice (effect)":

  • One is the relatively high general pitch of the voice. Mickey has always been spoken by a man, but the speakers voice's pitch or frequency (called 'F0') has always been at the level of a higher woman's or a child's voice. So, there is generally two possible ways to achieve that:

    a) if possible, try to synthesize the speech signal again by setting a higher F0 in the speech synthesis (computer voice) tool - if this is applicable as a parameter or you have access to the source code.

    b) otherwise, try to re-synthesize the F0 of the existent signal by a computer tool. The only tool I know so far for this purpose is Praat.

  • The other aspect is the curve of the voice, like the upwards and downwards movements that you've already described. Every language has its own curve, or, like it's called in Linguistics, intonation rules. Evenmore, on a micro level, every human's voice has its own characteristics (a fact that can be used for forensic investigations). Mickey's voice with its multitude of very strong and expressional, exaggerated upwards and downwards movements is for sure at the opposite scale's end of a monotonic (typically computer) voice. (At least concerning the old style voices like Atari speech.)

    But here again, you could use Praat to modulate the signal and add artifical intonation curves the presumably monotonic original signal.

Praat is a bit special to be handled, but once you've checked out, it is a very strong tool. I've used it at university quite a lot.

You might get even better results if you raise the whole signal's pitch (as you've described) instead of raising F0 only (but still afterwards modulate the intonation curve). The resulting difference will be that not only the voice will be raised but all other components of the speech signal will be raised, too - including the formants. That should lead to a more childish sounding voice.

Check it out - I would be happy to read your experiences.

  • Thank you so much for the suggestion to look into Praat. Also, thank you for the introduction to some concepts and terminology that I was not aware of. Just to confirm/clarify - is the "F0" you speak of the same as the "Fundamental frequency" (en.wikipedia.org/wiki/Fundamental_frequency)? Thanks again! – John Currie Apr 12 '17 at 17:29
  • Exactly - F0 is the fundamental frequency. Glad, I could help! :-) – philburns Apr 13 '17 at 9:07
3

Have you considered flex-pitch in a product like Logic X? I don't do music and therefore haven't used it a lot, but you can make some interesting effects with it. You record the phrase in your normal voice, then use pitch correction to change the note and octave to your liking. It seems like you have a decent ear for what makes the Mickey voice (high pitched, singy), so you might be able to match it reasonably.

Here's a youtube search that might help you understand the process: https://www.youtube.com/results?search_query=logic+flex+pitch

  • Thanks for the video links. I actually have Logic Pro 9, but not X, so it might be time to upgrade :) – John Currie Apr 12 '17 at 17:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.