MaxMBROLA

kevyb's icon

Hello, is there a version of MaxMBROLA~ for Max 5 ?
Will there be?
Are there any equivalent objects?

thanks!
kristin

volker böhm's icon

hi -
afaik there is no version for max5.
i was interested in this, too, for some time and offered help to continue the work, as the development of maxmbrola seemed to have stopped. but before things really started to get into motion, the project somehow got drowned in other stuff...

what do you want to use it for? i found maxmbrola (the max4 version) to be quite unstable. in an interactive installation, where we used mbrola for speech synthesis, i actually went back to the command line version of mbrola, feeding it through the shell object in max.
so, a javascript file in max does the message formatting, using the desired pho-file and voice settings etc and sends the command to mbrola through the [shell] object. mbrola synthesises the audio, stores it to disk and max imports the file into a buffer for further treatment and playback. maybe this sounds long-winded, but it worked (and still works) pretty well and latency is quite acceptable (for what we needed).
volker.

kevyb's icon

Hi Volker,
thanks for your response!

I downloaded the MBROLA command line program for OSX to understand what you mean. I have a few questions and thoughts.

In your example, does the .pho file that you refer to have the phonemes and parameters written into the file ahead of time, or does the javascript message formatting that you do in Max create the .pho file automatically from a text input?

I'm interested in getting MBROLA to sing. I see there is a pitch parameter in the .pho files, but I imagine Max/MSP would do higher quality pitch shifting internally, I'm wondering how MaxMBROLA~ dealt with this.

It seems that MBROLA can only analyze/synthesize using low resolution audio files (Recommended format: Fs=16Khz, 16-bit, Mono) - and that you have to send your phoneme databases to the MBROLA folks to be analyzed and formatted in order for program to work.

Do you have a contact for the MaxMBROLA~ programmers? I can't find it online.

Thanks again!
kristin

volker böhm's icon

Quote:In your example, does the .pho file that you refer to have the phonemes and parameters written into the file ahead of time, or does the javascript message formatting that you do in Max create the .pho file automatically from a text input?

as mbrola is not a full text-to-speech system, so yes, you have to analyse the text input in some other program in order to get a pho file. we didn't do this in javascript. we had a large database or preformatted pho files, and used the script to choose the correct files, set the synthesis parameters (like pitch etc) and do the communication with the shell.
for creating the pho files, we used mary tts, as we needed a german voice. this system is based on java and you might even be able to incorporate it into a max through mxj.

Quote:
I'm interested in getting MBROLA to sing. I see there is a pitch parameter in the .pho files, but I imagine Max/MSP would do higher quality pitch shifting internally, I'm wondering how MaxMBROLA~ dealt with this.

can't remeber how maxmrbola~ worked with pitch. for mbrola you can set a pitch value for the whole file. so, no easy melody making with this one. but, you can edit the pho file manually! the syntax is quite easy and pitch/prosody is set by frequency and time pairs. we did _a lot_ of manual editing to get the expression we wanted. and you can definitely make it sing that way. but yes, this is an offline process.

Quote:
It seems that MBROLA can only analyze/synthesize using low resolution audio files (Recommended format: Fs=16Khz, 16-bit, Mono) - and that you have to send your phoneme databases to the MBROLA folks to be analyzed and formatted in order for program to work.

this is only needed if you want to create your own voice (which is not an easy task btw). there are already a lot of voices in different languages available from the mbrola site.

Quote:
Do you have a contact for the MaxMBROLA~ programmers? I can't find it online.

no sorry. i was in contact with one of the mbrola developers. but maxmbrola~ was done by somebody else.
volker

tobiah's icon
jochemn's icon

hi tobiah, very interesting link, thank you.

does it work for you on osx? i have no sound using the help-file. however, the end-of-synthesis bang seems to do it's job. i put the .pho's in the filepath and tried other languages, no luck. any idea? thanks.

(early mbp, osx 10.6.5, max 5.1.7)

orange_glass's icon

Hi I've tried that link and get the same result - bang when done.

Would really love to play with voice synthesis in MAXMSP. Could do some fun things.