How do I create a Dragon speaker profile?

Last reviewed: 12/15/2011

HOW Article ID: H121104

The information in this article applies to:

  • ProfileKit 4

Summary

Dragon NatuallySpeaking has built-in User Management dialogs that provide profile management for creating and training speaker profiles. If you want to integrate profile management within your application, your application can create the profile and launch the training wizards directly.

More Information

There are two ways to create a speaker profile with Dragon:

  1. launch the Dragon User Management Dialogs or
  2. set the CSPSpeaker property.

The following illustrates launching the Dragon User Management dialog from your application:


// Instantiate ChantPM object
NChantPM1 = new NChantPM();

// Set Dragon as the engine
NChantPM1.SetNumberProperty(ChantNumberProperty.CNPEngineAPI, (int)ChantEngineAPI.CEDGN4SR);

// Launch the dialog
NChantPM1.ShowDialog(ChantDialog.CDManageUsers, this.Handle, "", "");
        

// Instantiate ChantPM object
pChantPM = new CChantPM();

// Set Dragon as the engine
pChantPM->SetNumberProperty(CNPEngineAPI, CEDGN4SR);

// Launch the dialog
pChantPM->ShowDialog(CDManageUsers, m_hWnd);
    

// Instantiate ChantPM object
pChantPM = new CChantPM();

// Set Dragon as the engine
pChantPM->SetNumberProperty(CNPEngineAPI, CEDGN4SR);

// Launch the dialog
pChantPM->ShowDialog(CDManageUsers, Handle);

// Instantiate ChantPM object
ChantPM1 := TChantPM.Create();

// Set Dragon as the engine
ChantPM1.SetNumberProperty(CNPEngineAPI, CEDGN4SR);

// Launch the dialog
ChantPM1.ShowDialog(CDManageUsers, Handle, '', '');
    

// Instantiate ChantPM object
JChantPM1 = new JChantPM();

// Set Dragon as the engine
JChantPM1.setNumberProperty(ChantNumberProperty.CNPEngineAPI, ChantEngineAPI.CEDGN4SR);

// Launch the dialog
JChantPM1.showDialog(ChantDialog.CDManageUsers, this, "", "");
    

// Set Dragon as the engine
WChantPM1.SetNumberProperty(CNPEngineAPI, CEDGN4SR);

// Launch the dialog
WChantPM1.ShowDialog(CDManageUsers);

' Set Dragon as the engine
XChantPM1.SetNumberProperty CNPEngineAPI, CEDGN4SR

' Launch the dialog
XChantPM1.ShowDialog CDManageUsers

' Instantiate ChantPM object
NChantPM1 = new NChantPM()

' Set Dragon as the engine
NChantPM1.SetNumberProperty(ChantNumberProperty.CNPEngineAPI, ChantEngineAPI.CEDGN4SR)

' Launch the dialog
NChantPM1.ShowDialog(ChantDialog.CDManageUsers, Me.Handle, "", "")
    

To create a speaker profile programmatically, you need to do the following:

  • Create the speaker profile by setting the CSPSpeaker property
  • Launch the microphone training wizard to calibrate the microphone
  • Launch the speaker training wizard to perform speaker training

// Instantiate ChantPM object
NChantPM1 = new NChantPM();

// Set the engine API or enumerate and select specific engine
NChantPM1.SetNumberProperty(ChantNumberProperty.CNPEngineAPI, (int)ChantEngineAPI.CEDGN4SR);

// Create new speaker
NChantPM1.SetStringProperty(ChantStringProperty.CSPSpeaker, "New Speaker");

// Launch the mic training wizard
NChantPM1.ShowDialog(ChantDialog.CDMicTraining, this.Handle, "", "");

// Launch the user training wizard
NChantPM1.ShowDialog(ChantDialog.CDUserTraining, this.Handle, "", "");
        

// Instantiate ChantPM object
pChantPM = new CChantPM();

// Set the engine API or enumerate and select specific engine
pChantPM->SetNumberProperty(CNPEngineAPI, CEDGN4SR);

// Create new speaker
pChantPM->SetStringProperty(CSPSpeaker, L"New Speaker");

// Launch the mic training wizard
pChantPM->ShowDialog(CDMicTraining, m_hWnd);

// Launch the user training wizard
pChantPM->ShowDialog(CDUserTraining, m_hWnd);
    

// Instantiate ChantPM object
pChantPM = new CChantPM();

// Set the engine API or enumerate and select specific engine
pChantPM->SetNumberProperty(CNPEngineAPI, CEDGN4SR);

// Create new speaker
pChantPM->SetStringProperty(CSPSpeaker, "New Speaker");

// Launch the mic training wizard
pChantPM->ShowDialog(CDMicTraining, Handle);

// Launch the user training wizard
pChantPM->ShowDialog(CDUserTraining, Handle);

// Instantiate ChantPM object
ChantPM1 := TChantPM.Create();

// Set the engine API or enumerate and select specific engine
ChantPM1.SetNumberProperty(CNPEngineAPI, CEDGN4SR);

// Create new speaker
ChantPM1.SetStringProperty(CSPSpeaker, 'New Speaker');

// Launch the mic training wizard
ChantPM1.ShowDialog(CDMicTraining, Handle, '', '');

// Launch the user training wizard
ChantPM1.ShowDialog(CDUserTraining, Handle, '', '');
    

// Instantiate ChantPM object
JChantPM1 = new JChantPM();

// Set the engine API or enumerate and select specific engine
JChantPM1.setNumberProperty(ChantNumberProperty.CNPEngineAPI, ChantEngineAPI.CEDGN4SR);

// Create new speaker
JChantPM1.setStringProperty(ChantStringProperty.CSPSpeaker, "New Speaker");

// Launch the mic training wizard
JChantPM1.showDialog(ChantDialog.CDMicTraining, this, "", "");

// Launch the user training wizard
JChantPM1.showDialog(ChantDialog.CDUserTraining, this, "", "");
    

// Create new speaker
WChantPM1.SetStringProperty(CSPSpeaker, "New Speaker");

// Set the engine API or enumerate and select specific engine
WChantPM1.SetNumberProperty(CNPEngineAPI, CEDGN4SR);

// Launch the mic training wizard
WChantPM1.ShowDialog(CDMicTraining);

// Launch the user training wizard
WChantPM1.ShowDialog(CDUserTraining);

' Create new speaker
XChantPM1.SetStringProperty CSPSpeaker, "New Speaker"

' Set the engine API or enumerate and select specific engine
XChantPM1.SetNumberProperty CNPEngineAPI, CEDGN4SR

' Launch the mic training wizard
XChantPM1.ShowDialog CDMicTraining

' Launch the user training wizard
XChantPM1.ShowDialog CDUserTraining

' Instantiate ChantPM object
NChantPM1 = new NChantPM()

' Set the engine API or enumerate and select specific engine
NChantPM1.SetNumberProperty(ChantNumberProperty.CNPEngineAPI, ChantEngineAPI.CEDGN4SR)

' Create new speaker
NChantPM1.SetStringProperty(ChantStringProperty.CSPSpeaker, "New Speaker");

' Launch the mic training wizard
NChantPM1.ShowDialog(ChantDialog.CDMicTraining, Me.Handle, "", "")

' Launch the user training wizard
NChantPM1.ShowDialog(ChantDialog.CDUserTraining, Me.Handle, "", "")

Optionally, the application may enumerate and set the Dragon topic (CSPTopic) and dictation source (CSPDictationSource) before creating the new speaker by setting the CSPSpeaker property. See ProfileKit 4 help file for examples illustrating enumerating CSRDictationTopic and CSRDictationSource resources.