home *** CD-ROM | disk | FTP | other *** search
- =head1 NAME
-
- Mac::SpeechRecognition - Provide interface to Speech Recognition Manager
-
- =head1 SYNOPSIS
-
- use Mac::SpeechRecognition;
-
- =head1 DESCRIPTION
-
- Access to Inside Macintosh is essential for proper use of these functions.
- Explanations of terms, processes and procedures are provided there.
- Any attempt to use these functions without guidance can cause severe errors in
- your machine, including corruption of data. B<You have been warned.>
-
- =cut
- use strict;
-
- package Mac::SpeechRecognition;
-
- BEGIN {
- use Exporter ();
- use DynaLoader ();
-
- use vars qw(@ISA @EXPORT);
-
- @ISA = qw(Exporter DynaLoader);
- @EXPORT = qw(
- SROpenRecognitionSystem
- SRCloseRecognitionSystem
- SRSetProperty
- SRGetProperty
- SRReleaseObject
- SRGetReference
- SRNewRecognizer
- SRStartListening
- SRStopListening
- SRSetLanguageModel
- SRGetLanguageModel
- SRContinueRecognition
- SRCancelRecognition
- SRIdle
- SRNewLanguageModel
- SRNewPath
- SRNewPhrase
- SRNewWord
- SRPutLanguageObjectIntoHandle
- SRPutLanguageObjectIntoDataFile
- SRNewLanguageObjectFromHandle
- SRNewLanguageObjectFromDataFile
- SREmptyLanguageObject
- SRChangeLanguageObject
- SRAddLanguageObject
- SRAddText
- SRRemoveLanguageObject
- SRCountItems
- SRGetIndexedItem
- SRSetIndexedItem
- SRRemoveIndexedItem
- SRDrawText
- SRDrawRecognizedText
- SRSpeakText
- SRSpeakAndDrawText
- SRStopSpeech
- SRSpeechBusy
- SRProcessBegin
- SRProcessEnd
- SRMakeSpeechObject
- gestaltSpeechRecognitionVersion
- gestaltSpeechRecognitionAttr
- gestaltDesktopSpeechRecognition
- gestaltTelephoneSpeechRecognition
- kSRNotAvailable
- kSRInternalError
- kSRComponentNotFound
- kSROutOfMemory
- kSRNotASpeechObject
- kSRBadParameter
- kSRParamOutOfRange
- kSRBadSelector
- kSRBufferTooSmall
- kSRNotARecSystem
- kSRFeedbackNotAvail
- kSRCantSetProperty
- kSRCantGetProperty
- kSRCantSetDuringRecognition
- kSRAlreadyListening
- kSRNotListeningState
- kSRModelMismatch
- kSRNoClientLanguageModel
- kSRNoPendingUtterances
- kSRRecognitionCanceled
- kSRRecognitionDone
- kSROtherRecAlreadyModal
- kSRHasNoSubItems
- kSRSubItemNotFound
- kSRLanguageModelTooBig
- kSRAlreadyReleased
- kSRAlreadyFinished
- kSRWordNotFound
- kSRNotFinishedWithRejection
- kSRExpansionTooDeep
- kSRTooManyElements
- kSRCantAdd
- kSRSndInSourceDisconnected
- kSRCantReadLanguageObject
- kSRNotImplementedYet
- kSRDefaultRecognitionSystemID
- kSRFeedbackAndListeningModes
- kSRRejectedWord
- kSRCleanupOnClientExit
- kSRNoFeedbackNoListenModes
- kSRHasFeedbackHasListenModes
- kSRNoFeedbackHasListenModes
- kSRDefaultSpeechSource
- kSRLiveDesktopSpeechSource
- kSRCanned22kHzSpeechSource
- kSRNotifyRecognitionBeginning
- kSRNotifyRecognitionDone
- kAESpeechSuite
- kAESpeechDone
- kAESpeechDetected
- keySRRecognizer
- keySRSpeechResult
- keySRSpeechStatus
- typeSRRecognizer
- typeSRSpeechResult
- kSRNotificationParam
- kSRCallBackParam
- kSRSearchStatusParam
- kSRAutoFinishingParam
- kSRForegroundOnly
- kSRBlockBackground
- kSRBlockModally
- kSRWantsResultTextDrawn
- kSRWantsAutoFBGestures
- kSRSoundInVolume
- kSRReadAudioFSSpec
- kSRCancelOnSoundOut
- kSRSpeedVsAccuracyParam
- kSRUseToggleListen
- kSRUsePushToTalk
- kSRListenKeyMode
- kSRListenKeyCombo
- kSRListenKeyName
- kSRKeyWord
- kSRKeyExpected
- kSRIdleRecognizer
- kSRSearchInProgress
- kSRSearchWaitForAllClients
- kSRMustCancelSearch
- kSRPendingSearch
- kSRTEXTFormat
- kSRPhraseFormat
- kSRPathFormat
- kSRLanguageModelFormat
- kSRSpelling
- kSRLMObjType
- kSRRefCon
- kSROptional
- kSREnabled
- kSRRepeatable
- kSRRejectable
- kSRRejectionLevel
- kSRLanguageModelType
- kSRPathType
- kSRPhraseType
- kSRWordType
- kSRDefaultRejectionLevel
- );
- }
-
- bootstrap Mac::SpeechRecognition;
-
- =head2 Constants
-
- =over 4
-
- =item gestaltSpeechRecognitionVersion
-
- =item gestaltSpeechRecognitionAttr
-
- =cut
- sub gestaltSpeechRecognitionVersion () { 'srtb'; }
- sub gestaltSpeechRecognitionAttr () { 'srta'; }
-
-
- =item gestaltDesktopSpeechRecognition
-
- =item gestaltTelephoneSpeechRecognition
-
- =cut
- sub gestaltDesktopSpeechRecognition () { 1 << 0; }
- sub gestaltTelephoneSpeechRecognition () { 1 << 1; }
-
-
- =item kSRNotAvailable
-
- =item kSRInternalError
-
- =item kSRComponentNotFound
-
- =item kSROutOfMemory
-
- =item kSRNotASpeechObject
-
- =item kSRBadParameter
-
- =item kSRParamOutOfRange
-
- =item kSRBadSelector
-
- =item kSRBufferTooSmall
-
- =item kSRNotARecSystem
-
- =item kSRFeedbackNotAvail
-
- =item kSRCantSetProperty
-
- =item kSRCantGetProperty
-
- =item kSRCantSetDuringRecognition
-
- =item kSRAlreadyListening
-
- =item kSRNotListeningState
-
- =item kSRModelMismatch
-
- =item kSRNoClientLanguageModel
-
- =item kSRNoPendingUtterances
-
- =item kSRRecognitionCanceled
-
- =item kSRRecognitionDone
-
- =item kSROtherRecAlreadyModal
-
- =item kSRHasNoSubItems
-
- =item kSRSubItemNotFound
-
- =item kSRLanguageModelTooBig
-
- =item kSRAlreadyReleased
-
- =item kSRAlreadyFinished
-
- =item kSRWordNotFound
-
- =item kSRNotFinishedWithRejection
-
- =item kSRExpansionTooDeep
-
- =item kSRTooManyElements
-
- =item kSRCantAdd
-
- =item kSRSndInSourceDisconnected
-
- =item kSRCantReadLanguageObject
-
- =item kSRNotImplementedYet
-
- =cut
- sub kSRNotAvailable () { -5100; }
- sub kSRInternalError () { -5101; }
- sub kSRComponentNotFound () { -5102; }
- sub kSROutOfMemory () { -5103; }
- sub kSRNotASpeechObject () { -5104; }
- sub kSRBadParameter () { -5105; }
- sub kSRParamOutOfRange () { -5106; }
- sub kSRBadSelector () { -5107; }
- sub kSRBufferTooSmall () { -5108; }
- sub kSRNotARecSystem () { -5109; }
- sub kSRFeedbackNotAvail () { -5110; }
- sub kSRCantSetProperty () { -5111; }
- sub kSRCantGetProperty () { -5112; }
- sub kSRCantSetDuringRecognition () { -5113; }
- sub kSRAlreadyListening () { -5114; }
- sub kSRNotListeningState () { -5115; }
- sub kSRModelMismatch () { -5116; }
- sub kSRNoClientLanguageModel () { -5117; }
- sub kSRNoPendingUtterances () { -5118; }
- sub kSRRecognitionCanceled () { -5119; }
- sub kSRRecognitionDone () { -5120; }
- sub kSROtherRecAlreadyModal () { -5121; }
- sub kSRHasNoSubItems () { -5122; }
- sub kSRSubItemNotFound () { -5123; }
- sub kSRLanguageModelTooBig () { -5124; }
- sub kSRAlreadyReleased () { -5125; }
- sub kSRAlreadyFinished () { -5126; }
- sub kSRWordNotFound () { -5127; }
- sub kSRNotFinishedWithRejection () { -5128; }
- sub kSRExpansionTooDeep () { -5129; }
- sub kSRTooManyElements () { -5130; }
- sub kSRCantAdd () { -5131; }
- sub kSRSndInSourceDisconnected () { -5132; }
- sub kSRCantReadLanguageObject () { -5133; }
- sub kSRNotImplementedYet () { -5199; }
-
-
- =item kSRDefaultRecognitionSystemID
-
- =cut
- sub kSRDefaultRecognitionSystemID () { 0; }
-
-
- =item kSRFeedbackAndListeningModes
-
- =item kSRRejectedWord
-
- =item kSRCleanupOnClientExit
-
- =cut
- sub kSRFeedbackAndListeningModes () { 'fbwn'; }
- sub kSRRejectedWord () { 'rejq'; }
- sub kSRCleanupOnClientExit () { 'clup'; }
-
-
- =item kSRNoFeedbackNoListenModes
-
- =item kSRHasFeedbackHasListenModes
-
- =item kSRNoFeedbackHasListenModes
-
- =cut
- sub kSRNoFeedbackNoListenModes () { 0; }
- sub kSRHasFeedbackHasListenModes () { 1; }
- sub kSRNoFeedbackHasListenModes () { 2; }
-
-
- =item kSRDefaultSpeechSource
-
- =item kSRLiveDesktopSpeechSource
-
- =item kSRCanned22kHzSpeechSource
-
- =cut
- sub kSRDefaultSpeechSource () { 0; }
- sub kSRLiveDesktopSpeechSource () { 'dklv'; }
- sub kSRCanned22kHzSpeechSource () { 'ca22'; }
-
-
- =item kSRNotifyRecognitionBeginning
-
- =item kSRNotifyRecognitionDone
-
- =cut
- sub kSRNotifyRecognitionBeginning () { 1 << 0; }
- sub kSRNotifyRecognitionDone () { 1 << 1; }
-
-
- =item kAESpeechSuite
-
- =item kAESpeechDone
-
- =item kAESpeechDetected
-
- =item keySRRecognizer
-
- =item keySRSpeechResult
-
- =item keySRSpeechStatus
-
- =item typeSRRecognizer
-
- =item typeSRSpeechResult
-
- =item kSRNotificationParam
-
- =item kSRCallBackParam
-
- =item kSRSearchStatusParam
-
- =item kSRAutoFinishingParam
-
- =item kSRForegroundOnly
-
- =item kSRBlockBackground
-
- =item kSRBlockModally
-
- =item kSRWantsResultTextDrawn
-
- =item kSRWantsAutoFBGestures
-
- =item kSRSoundInVolume
-
- =item kSRReadAudioFSSpec
-
- =item kSRCancelOnSoundOut
-
- =item kSRSpeedVsAccuracyParam
-
- =cut
- sub kAESpeechSuite () { 'sprc'; }
- sub kAESpeechDone () { 'srsd'; }
- sub kAESpeechDetected () { 'srbd'; }
- sub keySRRecognizer () { 'krec'; }
- sub keySRSpeechResult () { 'kspr'; }
- sub keySRSpeechStatus () { 'ksst'; }
- sub typeSRRecognizer () { 'trec'; }
- sub typeSRSpeechResult () { 'tspr'; }
- sub kSRNotificationParam () { 'noti'; }
- sub kSRCallBackParam () { 'call'; }
- sub kSRSearchStatusParam () { 'stat'; }
- sub kSRAutoFinishingParam () { 'afin'; }
- sub kSRForegroundOnly () { 'fgon'; }
- sub kSRBlockBackground () { 'blbg'; }
- sub kSRBlockModally () { 'blmd'; }
- sub kSRWantsResultTextDrawn () { 'txfb'; }
- sub kSRWantsAutoFBGestures () { 'dfbr'; }
- sub kSRSoundInVolume () { 'volu'; }
- sub kSRReadAudioFSSpec () { 'aurd'; }
- sub kSRCancelOnSoundOut () { 'caso'; }
- sub kSRSpeedVsAccuracyParam () { 'sped'; }
-
-
- =item kSRUseToggleListen
-
- =item kSRUsePushToTalk
-
- =cut
- sub kSRUseToggleListen () { 0; }
- sub kSRUsePushToTalk () { 1; }
-
-
- =item kSRListenKeyMode
-
- =item kSRListenKeyCombo
-
- =item kSRListenKeyName
-
- =item kSRKeyWord
-
- =item kSRKeyExpected
-
- =cut
- sub kSRListenKeyMode () { 'lkmd'; }
- sub kSRListenKeyCombo () { 'lkey'; }
- sub kSRListenKeyName () { 'lnam'; }
- sub kSRKeyWord () { 'kwrd'; }
- sub kSRKeyExpected () { 'kexp'; }
-
-
- =item kSRIdleRecognizer
-
- =item kSRSearchInProgress
-
- =item kSRSearchWaitForAllClients
-
- =item kSRMustCancelSearch
-
- =item kSRPendingSearch
-
- =cut
- sub kSRIdleRecognizer () { 1 << 0; }
- sub kSRSearchInProgress () { 1 << 1; }
- sub kSRSearchWaitForAllClients () { 1 << 2; }
- sub kSRMustCancelSearch () { 1 << 3; }
- sub kSRPendingSearch () { 1 << 4; }
-
-
- =item kSRTEXTFormat
-
- =item kSRPhraseFormat
-
- =item kSRPathFormat
-
- =item kSRLanguageModelFormat
-
- =item kSRSpelling
-
- =item kSRLMObjType
-
- =item kSRRefCon
-
- =item kSROptional
-
- =item kSREnabled
-
- =item kSRRepeatable
-
- =item kSRRejectable
-
- =item kSRRejectionLevel
-
- =item kSRLanguageModelType
-
- =item kSRPathType
-
- =item kSRPhraseType
-
- =item kSRWordType
-
- =cut
- sub kSRTEXTFormat () { 'TEXT'; }
- sub kSRPhraseFormat () { 'lmph'; }
- sub kSRPathFormat () { 'lmpt'; }
- sub kSRLanguageModelFormat () { 'lmfm'; }
- sub kSRSpelling () { 'spel'; }
- sub kSRLMObjType () { 'lmtp'; }
- sub kSRRefCon () { 'refc'; }
- sub kSROptional () { 'optl'; }
- sub kSREnabled () { 'enbl'; }
- sub kSRRepeatable () { 'rptb'; }
- sub kSRRejectable () { 'rjbl'; }
- sub kSRRejectionLevel () { 'rjct'; }
- sub kSRLanguageModelType () { 'lmob'; }
- sub kSRPathType () { 'path'; }
- sub kSRPhraseType () { 'phra'; }
- sub kSRWordType () { 'word'; }
-
-
- =item kSRDefaultRejectionLevel
-
- =cut
- sub kSRDefaultRejectionLevel () { 50; }
-
- =back
-
- =include SpeechRecognition.xs
-
- =head1 BUGS/LIMITATIONS
-
- =head1 AUTHOR(S)
-
- Matthias Ulrich Neeracher <neeri@iis.ee.ethz.ch> Author
-
- =cut
-
- 1;
-
- __END__
-