TTS Related (Freeswitch, Asterisk, Solaris)
Hello All, I have a whole bunch of questions regarding the TTS functionality in FreeSWITCH and Just Generally about Freeswitch on a Sparc based Solaris Platform and then the combo of the two, whether FreeSWITCH can be built on a Sparc based Solaris platform when compiled with a "reasonably" good TTS module be it Cepstral, FLite OR NeoSpeech etc? 1) Can anyone reflect on any experience they might have had in terms of the performance difference between TTS on Asterisk (let's say Asterisk 1.8) and FreeSWITCH? Is one better than the other? 2) Can One or the other or both be compiled successfully on a Sparc based Solaris platform? 3) Would it benefit if I was to use a dedicated box for TTS and throw calls to that box for TTS processing and send back media the way it came after the sound files are generated from the TTS-process? 4) Please note that the quality of the Translation doesn't need to be impeccable or mimic human speech. It just needs to be understandable enough esp. over mobile phones. The more complex part about it is, that the user directory can/will have names from all sorts of ethnicities/nationalities which may mess up a lot of these TTS engines. So what is the best approach there in this mixed environment 5) Does the OpenMRCP play any part in any of this? Would I benefit with that? I think this is the crux of my concerns. Any ideas and/or suggestions to kick off the discussion would be very very much appreciated. Kind Regards, RR
I can't answer about FreeSWITCH on solaris, but I can talk about TTS. In my setup, I have a cluster of MRCP servers. The FreeSWITCH boxes then use mod_unimrcp to make TTS requests to that cluster. This has the following benefits: 1. TTS licenses can be shared among any FreeSWITCH box. This is good because licenses are expensive. 2. There are more TTS vendors that support MRCP than there are TTS modules in FreeSWITCH- though a new module could be written if you are a C developer. Others use mod_cepstral and mod_tts_commandline, so those options can be explored too. On Thu, Nov 11, 2010 at 6:32 AM, RR <ranjtech@gmail.com> wrote:
Hello All,
I have a whole bunch of questions regarding the TTS functionality in FreeSWITCH and Just Generally about Freeswitch on a Sparc based Solaris Platform and then the combo of the two, whether FreeSWITCH can be built on a Sparc based Solaris platform when compiled with a "reasonably" good TTS module be it Cepstral, FLite OR NeoSpeech etc?
1) Can anyone reflect on any experience they might have had in terms of the performance difference between TTS on Asterisk (let's say Asterisk 1.8) and FreeSWITCH? Is one better than the other? 2) Can One or the other or both be compiled successfully on a Sparc based Solaris platform? 3) Would it benefit if I was to use a dedicated box for TTS and throw calls to that box for TTS processing and send back media the way it came after the sound files are generated from the TTS-process? 4) Please note that the quality of the Translation doesn't need to be impeccable or mimic human speech. It just needs to be understandable enough esp. over mobile phones. The more complex part about it is, that the user directory can/will have names from all sorts of ethnicities/nationalities which may mess up a lot of these TTS engines. So what is the best approach there in this mixed environment 5) Does the OpenMRCP play any part in any of this? Would I benefit with that?
I think this is the crux of my concerns. Any ideas and/or suggestions to kick off the discussion would be very very much appreciated.
Kind Regards, RR
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Thank you both Christopher and Meftah, for your responses and advice. Anyone else wants to contribute anything else? I am ashamed of myself for not being the one to contribute to this but unfortunately the commercial pressures and/or budget isn't giving me the luxury of taking the time to be the one to run these tests side by side on the current Asterisk release and the FS release to see how they both perform. I would say I have slightly more experience with Asterisk but I really want to build the new network solely on Freeswitch but I have very limited experience with FS. So I would like some help/advice. I will be trying to install FS on Solaris (Sparc) over the next few days and reporting back but it would be severely helpful if someone has already tried it and have some document re: any pitfalls, how to avoid them and tweaks etc required? Lastly, would the TTS modules etc compile on a Sparc based solaris platform or is that not a problem and it'll just compile all along with FS when the modules are uncommented in the modules.xml file? Thanks RR On Thu, Nov 11, 2010 at 8:57 AM, Christopher Rienzo <cmrienzo@gmail.com>wrote:
I can't answer about FreeSWITCH on solaris, but I can talk about TTS. In my setup, I have a cluster of MRCP servers. The FreeSWITCH boxes then use mod_unimrcp to make TTS requests to that cluster. This has the following benefits:
1. TTS licenses can be shared among any FreeSWITCH box. This is good because licenses are expensive. 2. There are more TTS vendors that support MRCP than there are TTS modules in FreeSWITCH- though a new module could be written if you are a C developer.
Others use mod_cepstral and mod_tts_commandline, so those options can be explored too.
On Thu, Nov 11, 2010 at 6:32 AM, RR <ranjtech@gmail.com> wrote:
Hello All,
I have a whole bunch of questions regarding the TTS functionality in FreeSWITCH and Just Generally about Freeswitch on a Sparc based Solaris Platform and then the combo of the two, whether FreeSWITCH can be built on a Sparc based Solaris platform when compiled with a "reasonably" good TTS module be it Cepstral, FLite OR NeoSpeech etc?
1) Can anyone reflect on any experience they might have had in terms of the performance difference between TTS on Asterisk (let's say Asterisk 1.8) and FreeSWITCH? Is one better than the other? 2) Can One or the other or both be compiled successfully on a Sparc based Solaris platform? 3) Would it benefit if I was to use a dedicated box for TTS and throw calls to that box for TTS processing and send back media the way it came after the sound files are generated from the TTS-process? 4) Please note that the quality of the Translation doesn't need to be impeccable or mimic human speech. It just needs to be understandable enough esp. over mobile phones. The more complex part about it is, that the user directory can/will have names from all sorts of ethnicities/nationalities which may mess up a lot of these TTS engines. So what is the best approach there in this mixed environment 5) Does the OpenMRCP play any part in any of this? Would I benefit with that?
I think this is the crux of my concerns. Any ideas and/or suggestions to kick off the discussion would be very very much appreciated.
Kind Regards, RR
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Hi Christopher, been thinking about this for a little bit and was wondering if instead of going on a chase around the net to find how to do this, would you be able to share details of how you have your TTS / MRCP Cluster setup? Is this in the Wiki somewhere or did you figure this out on your own? How well does this perform? I'm assuming if I can manage to compile FS or Asterisk (depending on which one I go with) on Solaris 10, then I could not worry about TTS compiling on Solaris as I can just build my MRCP cluster like yours on Linux/Windows etc and just do what you're doing? Any help would be HIGHLY HIGHLY appreciated. Thank you in advance RR On Thu, Nov 11, 2010 at 8:57 AM, Christopher Rienzo <cmrienzo@gmail.com>wrote:
I can't answer about FreeSWITCH on solaris, but I can talk about TTS. In my setup, I have a cluster of MRCP servers. The FreeSWITCH boxes then use mod_unimrcp to make TTS requests to that cluster. This has the following benefits:
1. TTS licenses can be shared among any FreeSWITCH box. This is good because licenses are expensive. 2. There are more TTS vendors that support MRCP than there are TTS modules in FreeSWITCH- though a new module could be written if you are a C developer.
Others use mod_cepstral and mod_tts_commandline, so those options can be explored too.
On Thu, Nov 11, 2010 at 6:32 AM, RR <ranjtech@gmail.com> wrote:
Hello All,
I have a whole bunch of questions regarding the TTS functionality in FreeSWITCH and Just Generally about Freeswitch on a Sparc based Solaris Platform and then the combo of the two, whether FreeSWITCH can be built on a Sparc based Solaris platform when compiled with a "reasonably" good TTS module be it Cepstral, FLite OR NeoSpeech etc?
1) Can anyone reflect on any experience they might have had in terms of the performance difference between TTS on Asterisk (let's say Asterisk 1.8) and FreeSWITCH? Is one better than the other? 2) Can One or the other or both be compiled successfully on a Sparc based Solaris platform? 3) Would it benefit if I was to use a dedicated box for TTS and throw calls to that box for TTS processing and send back media the way it came after the sound files are generated from the TTS-process? 4) Please note that the quality of the Translation doesn't need to be impeccable or mimic human speech. It just needs to be understandable enough esp. over mobile phones. The more complex part about it is, that the user directory can/will have names from all sorts of ethnicities/nationalities which may mess up a lot of these TTS engines. So what is the best approach there in this mixed environment 5) Does the OpenMRCP play any part in any of this? Would I benefit with that?
I think this is the crux of my concerns. Any ideas and/or suggestions to kick off the discussion would be very very much appreciated.
Kind Regards, RR
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
I'm using MRCPv1, so I wrote a dialplan app to pick MRCP profiles round-robin. It also keeps track of failures so I can back off if a server is down. Unfortunately, I'm not allowed to share the app. If you use MRCPv2, you could probably just use a SIP load balancer to do the same. MRCP is a good choice for me because I have a small pool of MRCP servers + licenses serving a large number of telephony servers. It's also nice because even though the TTS libraries have to run on 32-bit CentOS, I can still run FreeSWITCH on 64-bit CentOS 5. mod_unimrcp is stable now- I use it in production to handle thousands of TTS requests each day and haven't had a crash in months. Its workload is increasing as I continue add more traffic to our FS boxes. The wiki has example configurations for 5 different MRCP servers. You just need to figure out if you can build mod_unimrcp on solaris and then pick a TTS solution. The relevant pages are: http://wiki.freeswitch.org/wiki/Mod_unimrcp http://www.unimrcp.org FYI- mod_unimrcp has been ported to asterisk as app_unimrcp and is available at www.unimrcp.org. Both platforms have almost identical open-source MRCP capability. On Thu, Nov 11, 2010 at 11:18 PM, RR <ranjtech@gmail.com> wrote:
Hi Christopher,
been thinking about this for a little bit and was wondering if instead of going on a chase around the net to find how to do this, would you be able to share details of how you have your TTS / MRCP Cluster setup? Is this in the Wiki somewhere or did you figure this out on your own? How well does this perform? I'm assuming if I can manage to compile FS or Asterisk (depending on which one I go with) on Solaris 10, then I could not worry about TTS compiling on Solaris as I can just build my MRCP cluster like yours on Linux/Windows etc and just do what you're doing?
Any help would be HIGHLY HIGHLY appreciated.
Thank you in advance RR
On Thu, Nov 11, 2010 at 8:57 AM, Christopher Rienzo <cmrienzo@gmail.com>wrote:
I can't answer about FreeSWITCH on solaris, but I can talk about TTS. In my setup, I have a cluster of MRCP servers. The FreeSWITCH boxes then use mod_unimrcp to make TTS requests to that cluster. This has the following benefits:
1. TTS licenses can be shared among any FreeSWITCH box. This is good because licenses are expensive. 2. There are more TTS vendors that support MRCP than there are TTS modules in FreeSWITCH- though a new module could be written if you are a C developer.
Others use mod_cepstral and mod_tts_commandline, so those options can be explored too.
On Thu, Nov 11, 2010 at 6:32 AM, RR <ranjtech@gmail.com> wrote:
Hello All,
I have a whole bunch of questions regarding the TTS functionality in FreeSWITCH and Just Generally about Freeswitch on a Sparc based Solaris Platform and then the combo of the two, whether FreeSWITCH can be built on a Sparc based Solaris platform when compiled with a "reasonably" good TTS module be it Cepstral, FLite OR NeoSpeech etc?
1) Can anyone reflect on any experience they might have had in terms of the performance difference between TTS on Asterisk (let's say Asterisk 1.8) and FreeSWITCH? Is one better than the other? 2) Can One or the other or both be compiled successfully on a Sparc based Solaris platform? 3) Would it benefit if I was to use a dedicated box for TTS and throw calls to that box for TTS processing and send back media the way it came after the sound files are generated from the TTS-process? 4) Please note that the quality of the Translation doesn't need to be impeccable or mimic human speech. It just needs to be understandable enough esp. over mobile phones. The more complex part about it is, that the user directory can/will have names from all sorts of ethnicities/nationalities which may mess up a lot of these TTS engines. So what is the best approach there in this mixed environment 5) Does the OpenMRCP play any part in any of this? Would I benefit with that?
I think this is the crux of my concerns. Any ideas and/or suggestions to kick off the discussion would be very very much appreciated.
Kind Regards, RR
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
use 2freeswitch box one for dedicated TTS thtrough mrcp mod_unimrcp and other for mrcp client (same, mod_unimrcp) use cepstral or flite otherwise mod_tts_commandline i am not sure if tts_commandline work with mod_unimrcp or no if you u se tts_commandline try using svox or festival thank you Le 11/11/2010 12:32, RR a écrit :
Hello All,
I have a whole bunch of questions regarding the TTS functionality in FreeSWITCH and Just Generally about Freeswitch on a Sparc based Solaris Platform and then the combo of the two, whether FreeSWITCH can be built on a Sparc based Solaris platform when compiled with a "reasonably" good TTS module be it Cepstral, FLite OR NeoSpeech etc?
1) Can anyone reflect on any experience they might have had in terms of the performance difference between TTS on Asterisk (let's say Asterisk 1.8) and FreeSWITCH? Is one better than the other? 2) Can One or the other or both be compiled successfully on a Sparc based Solaris platform? 3) Would it benefit if I was to use a dedicated box for TTS and throw calls to that box for TTS processing and send back media the way it came after the sound files are generated from the TTS-process? 4) Please note that the quality of the Translation doesn't need to be impeccable or mimic human speech. It just needs to be understandable enough esp. over mobile phones. The more complex part about it is, that the user directory can/will have names from all sorts of ethnicities/nationalities which may mess up a lot of these TTS engines. So what is the best approach there in this mixed environment 5) Does the OpenMRCP play any part in any of this? Would I benefit with that?
I think this is the crux of my concerns. Any ideas and/or suggestions to kick off the discussion would be very very much appreciated.
Kind Regards, RR
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Meftah Tayeb inum: +883510001288000 Phone: +13602276297 Fax: +12538020313
participants (3)
-
Christopher Rienzo
-
Meftah Tayeb
-
RR