System.Speech in Mono on Linux

System.Speech in Mono on Linux

System.Speech is a part of MSFT's .Net and is dependent on native audio drivers, the TLS engine, etc... and is only available on Windows.

I believe there was some work done in Mono with the Speech namespace 4/5 years ago, but there is nothing in this namespace in the current releases.

You would need to look at third party speech libs on Linux and write some C# wrappers for them if they are not currently available.

Is System.Speech.Recognition namespace available in mono framework?

Depending on your version of mono, see this link for what's available in Mono compared to the .NET framework: http://go-mono.com/status/status.aspx?reference=4.0&profile=4.5&assembly=System.Speech

So, yes, there seems to be a System.Speech.Recognition namespace available in the Mono framework, and it actually seems complete. I've never used it though.

voice recognition in mono

Looking at this link:
Mono System.Speech

It seems as though System.Speech.Recognition is now supported. Are you pulling a recent (3.0+) tarball and building your own Mono runtime?

Using Linux ioctl with Mono

Mono does not contain a wrapper for ioctl in Mono.Unix, because ioctl call parameters vary greatly and such a wrapper would be almost useless. You should declare a DllImport for each ioctl you need.

You probably don't need a helper library written in C, however, you may need it during development to extract actual values hidden behind different C preprocessor macros. For example, to expand C header:

#define FE_GET_INFO                _IOR('o', 61, struct dvb_frontend_info)

compile and execute this helper:

#include <linux/dvb/frontend.h>
#include <stdio.h>

int main()
{
printf("const int FE_GET_INFO = %d;\n", FE_GET_INFO);
return 0;
}

A short mono mailing list discussion on the topic.

Any better source TTS package for .Net?

There is a built in class with .NET which does this. Its much smoother than espeak. The best of all I had luck with was IBM's viavoice but I do not think its free anymore. There is festival tts which is free, but I couldn't use it in my desktop application.

The System.Speech is what I felt which gives the best balance between ease of use and speech quality. Viavoice sounded even better, but we had to compile the dlls to a commandline app to integrate it as a separate process to get it run. espeak provides a built in command line app which you can run in the background.

MonoDevelop 5.0 for Linux Distro?

The best way to use the last monodevelop on Linux is to get it from git (it's very fast and very easy :)
Now I'm using it (5.1) on Ubuntu 14.04.

You can get the source code from here:

git clone git://github.com/mono/monodevelop.git

and then compile it: http://monodevelop.com/developers/building_monodevelop

Remember that you must have installed Mono runtime 3.x.



Related Topics



Leave a reply



Submit