Nuance naturally speaking SDK WPF - c#

I am developing a wpf app and i want to add speech to text functionality. I want to achieve this using nuance naturally speaking SDK. Below is my requirement explained briefly, 1) User speak out text and this should be typed on the screen in a rich text box control. 2) User speak out command and program should execute the command logic, for example i have a list whose items are apple, mango, grape. Select an item from list using command 'list item mango'. My questions are, a) Do i have to use Dragon SDK Client (DSC) Edition to fulfill my requirement or is there any other SDK or API form nuance for this requirement. b) Can anyone please suggest a basic tutorial for me to start on this, like how to setup SDK and a sample application in wpf will be great.I have no clue from where to start and how to implement this.

Related

System.Speech.Recognition; background control or voice recognition

I'm not sure if it is possible but anyway,
I use using System.Speech.Recognition; in winform C# app.
I'm wondering if it is possible not only to recognize speech, but also recognize voice, somehow recognize difference between different voices
to get something near to reading of multiply content from each separate voice, for example from two simultaneously or separately speaking users as different two.
Or at least maybe some method to control background loudness, for example if AudioLevelUpdated event allows me to see input volume, but maybe also exist some specific way to separate loud voice from extra noise or voices in background
System.Speech.Recognition will not help you in voice recognition.
System.Speech.Recognition is intended for speech to text. Adding grammar to it improves its efficiency. You can train the Windows desktop for better conversion. Refer Speech Recognition in Control Panel.
There are couple of 3rd party libraries available for voice recognition.
For removal of noise, you can refer Sound visualizer in C#.
You can find an interesting discussion at msdn forum.
I think you should take a look at CRIS which is part of Microsoft Cognitive Services, at least for you question about noise.
CRIS is a Custom Speech Service and its basic use is to improve the quality of Speech-to-text using custom acoustics models (like background noise) and learning vocabulary using samples.
You can import :
Acoustic Datasets
Language Datasets
Pronunciation Datasets
For example in acoustic models you have:
Microsoft Conversational Model for recognizing speech spoken in a conversational style (i.e. speech directed at another person).
Microsoft Search and Dictation Model for speech directed to an application, such as commands, search queries or dictation.
There is also a Speaker Recognition API available in preview

windows c# application for web browser control

I am looking a tutorial for develop a C# application for windows, which can give a extra functionality to the browser controls. i.e. input fields such as input box, text area.
When I using Google+, Facebook, and Twitter also my blog I use my native language. (Sinhala)
My native language has a complexity when is it come to using in computer. it has its own keyboard but it is really difficult to remember. In this case there are some tools to convert English characters in to its phonetic word in my language
i.e.
http://www.ucsc.cmb.ac.lk/ltrl/services/feconverter/t2.html
this above online tool help to convert English character in to is phonetic meaning in my language
i.e. Apal => ඇපල් (Apple)
This tool is developed by University of Colombo School Of Computing SriLanka. That English to Sinhala conversion control by JS.
My requirement is how this get in to C# application and running in particular pc, and when I open my web browser (Firefox, IE, Chrome, etc. ).
It should have run on system background and there should be a system tray icon to on/off it functions on browser (or Short cut key). And when it turn on.
I am wondering how I write a C# app for control Browser inputs and so on.
if you can show me a way to start or If I can have any suitable tutorial, guideline, or code sample, it will be great.
p.s. C# or Java is my prefer language
many thanks
Cheers
Umanda
I would check out the MSDN documentation here for the Web Browser Control. It also provides a sample of the source code at the bottom of the page.
It should have run on system background and there should be a system tray icon to on/off it functions on browser (or Short cut key). And when it turn on.
What you require is a Windows Service, that can be found here.

How to add Contact info in Android App with Xamarin

I'm developing a simple application which will store a contact name and ip address.
In my mind i imagined i would have a text field where i could enter a name, and another text field for the ip address and then a button which when clicked stored the contents of the text fields into some kind of array that could then be called up to show the contacts added.
I'm working in Xamarin for Android and writing my code in C# - except i'm not totally sure where to begin with this task.
Anyone know where to start with this on C#? Examples or existing works would be incredibly useful as i'm very much a beginner when it comes to programming!
Xamarin has a github repository with a lot of different samples and ready made apps.
Also the Xamarin documentation for Xamarin.Android is very useful, as it contains API docs, tutorials and descriptions for some of the samples in the repository along with additional samples.
There are also a couple of books, which gives you a good basis of knowledge of how to use Mono for Android/Xamarin.Android:
Professional Android Programming with Mono for Android and .NET/C#
Mobile Development with C#

Two problems with Speech Recognition C# WPF app on Windows7

I've made an app that uses the SpeechRecognizer class to setup a simple grammar and recognize simple words.
When I run it on Win7 I notice two things.
1) The first time I start the app the Speech recognition bar (thingy) comes up, but the UI of my app is not shown (it is running as I can see in the Task Manager).
When I start the app for the 2nd time (after killing the first instance) it display normally (with the windows speech recognition toolbar already running).
2) When I speak one of the words I'm recognizing in my app a 2nd time, it does not trigger an event -instead- it selects the text on my app where I print out in a listbox the history of the recognized words.
Note: When I remove the history listbox from the main screen, it works as expected. Apperently Win7 tries to find the word in my UI first and when it cannot find it - only then does it trigger my programmatic event...??
Both problems seem very weird to me.
More info on the app: Its a VS2008/.NET 3.0 WPF app written in C#. The application allows a user to edit setting groups (patches) for sending Midi commands. Each Patch is tagged with a phrase. When that Phrase is spoken (recognized by the app) all configured Midi commands are sent to the output(s). The history of patches that were recalled by the user are printed in a 'history' list on the apps main screen.
I hope someone can help me with this. Any suggestions are most welcome.
Thanx,
Marc Jacobi
I think you are using the shared speech recognizer (SpeechRecognizer). When you instantiate
SpeechRecognizer you get a recognizer that can be shared by other applications and is typically used for building applications to control windows and applications running on the desktop.
It sounds like you want to use your own private recognition engine (SpeechRecognitionEngine). So instantiate a SpeechRecognitionEngine instead.
see http://msdn.microsoft.com/en-us/library/system.speech.recognition.speechrecognizer(v=vs.90).aspx
What is the difference between System.Speech.Recognition and Microsoft.Speech.Recognition? and Disable built-in speech recognition commands? may also have some helpful info.
I got it working, thanx!
The main difference between using the SpeechRecognizer and the SpeechRecognitionEngine are:
Construct the SpeechRecognitionEngine using a RecognizerInfo from InstalledRecognizers.
Call one of the SetInputToXxxx methods
Call RecognizeAsync(RecognizeMode.Multiple) to mimic the SpeechRecognizer (SpeechRecognized) events.
Call RecognizeCancel/Stop to quit.
Hope it helps.

How can I use speech recognition with C# on Windows XP? + do I need to train every pc that runs the app?

I am making a robot that responds to few voice commands. I am using Windows XP and C# to achieve that. My only problem is that I don't know how to use speech recognition with C#.
I've been searching Google and MSDN, but I did not find any beginner friendly tutorial yet..
Any suggestions??
Also, I know -from my experience with windows' speech recognition in M$ word- that I need to train the computer before starting the speech recognition application. This may cause a big problem for me because I may need to present my robot using different computers/or/different people may be the presenters.
So is there any way to make a predefined list of words that any user can say to the application without having to train it first???
Thanks for help!
Yes, you'll have to train anything that uses pattern recognition to respond to things. In Philadelphia, they pronounce "water" as "wudder". How could an algorithm figure that out? A predefined list would require you to have a working knowledge of every accent in the target sales countries.
SAPI 5.4 in Windows 7 does a very good job of recognizing limited command & control grammars without training.
If you keep your command set (grammar) small (say, no more than 10-15 commands), you should be able to get good results.
Dictation or a large command set requires training; there's just too much uncertainty.

Categories

Resources