Understanding function name abbreviations

TRC diagnostic logs contain references to internal API functions. This enables detailed analysis of Recognizer activities. A single application message can generate numerous function calls.

Function names are usually self-explanatory. They always begin with a prefix:

  • SWIep—Endpointer functions.
  • SWIrec—Core Recognizer functions.
  • SWIttp—Pronunciation functions.
  • SWIve—Voice enrollment functions.

Functionality is divided into initialization and termination for the system, for sessions (individual phone calls), and recognitions. The lifetimes of these periods are shown below.

System start
   Session start
      Prompt start
      Recognition start
         Utterance
      Recognition end
      Prompt start
      Recognition start
         Utterance
      Recognition end
      [repeat more prompts, recognitions, and utterances]
   Session end
   [repeat more sessions]
System end

Functions described in the diagnostic logs correspond to the brackets of activity. The system start and ends, and other functions occur in the middle. A session starts and ends, and recognition events occur in the middle. Here are details:

  • System start—Initialize the Recognizer initialization and licensing. Typical functions:
    • SWIrecInit
    • SWIepInit
    • SWIepDetectorCreate
    • SWIrecRecognizerCreate
    • SWIrecGrammarLoad (used here to preload grammars)
    • swiep_audio_media_type
    • swirec_audio_media_type
  • Session start—Prepare grammars needed by the application. Typical functions:
    • SWIepSessionStart

    • SWIrecSessionStart

    • SWIrecGrammarCompile

    • SWIrecGrammarLoad

    • SWIrecGrammarFree

    • SWIrecGrammarActivate

  • Before each recognition—Set appropriate configuration parameters, prepare specific grammars for next recognition, and prepare the environment. Typical functions:
    • SWIepSetParameter
    • SWIrecSetParameter
    • SWIrecGrammarActivate
    • SWIrecGrammarDeactivate
    • SWIepAcousticStateLoad
    • SWIepStart
    • SWIrecRecognizerStart
  • During recognition—Deliver audio samples to endpointer and Recognizer, control prompts, perform the recognition, and read and log the status of various parameters. Typical functions:
    • SWIepWrite
    • SWIepRea
    • SWIrecAudioWrite
    • SWIepPromptDone
    • SWIrecRecognizerCompute (called at least three times per recognition)
    • SWIepStop
    • SWIrecRecognizerStop
    • SWIepGetParameter
    • SWIrecLogEvent
  • After each recognition—Get recognition results, capture the waveform, get any DTMF touchtones entered, remove grammars that won’t be needed in next recognition. Typical functions:
    • SWIrecGetXMLResult
    • SWIrecGetWaveform
    • SWIrecParseDTMFResults
    • SWIrecGrammarDeactivate
    • SWIepAcousticStateSave
    • SWIrecAcousticStateSave
  • End of the session—Typical functions:
    • SWIepSessionEnd
    • SWIrecSessionEnd
  • Stopping the system—Typical functions:
    • SWIepDetectorDestroy
    • SWIrecRecognizerDestroy
    • SWIepTerminate
    • SWIrecTerminate