2019-10-16 23:37:19 +00:00
|
|
|
/*
|
|
|
|
* Copyright (C) 2019 Alistair Leslie-Hughes
|
|
|
|
*
|
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This library is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
* Lesser General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
|
|
* License along with this library; if not, write to the Free Software
|
|
|
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
|
|
|
*/
|
|
|
|
#if 0
|
|
|
|
#pragma makedep install
|
|
|
|
#endif
|
|
|
|
|
|
|
|
import "oaidl.idl";
|
|
|
|
import "ocidl.idl";
|
|
|
|
|
|
|
|
interface ISpeechAudioFormat;
|
|
|
|
interface ISpeechGrammarRule;
|
|
|
|
interface ISpeechGrammarRuleState;
|
|
|
|
interface ISpeechObjectTokens;
|
|
|
|
interface ISpeechPhraseProperties;
|
|
|
|
interface ISpeechPhraseRule;
|
|
|
|
interface ISpeechRecognizer;
|
|
|
|
interface ISpeechRecoContext;
|
|
|
|
interface ISpeechRecoGrammar;
|
|
|
|
interface ISpeechRecoResult;
|
|
|
|
|
|
|
|
typedef long SpeechLanguageId;
|
|
|
|
|
|
|
|
typedef enum SpeechLoadOption
|
|
|
|
{
|
|
|
|
SLOStatic = SPLO_STATIC,
|
|
|
|
SLODynamic = SPLO_DYNAMIC
|
|
|
|
} SpeechLoadOption;
|
|
|
|
|
|
|
|
typedef enum SpeechRuleState
|
|
|
|
{
|
|
|
|
SGDSInactive = SPRS_INACTIVE,
|
|
|
|
SGDSActive = SPRS_ACTIVE,
|
|
|
|
SGDSActiveWithAutoPause = SPRS_ACTIVE_WITH_AUTO_PAUSE,
|
|
|
|
SGDSActiveUserDelimited = SPRS_ACTIVE_USER_DELIMITED
|
|
|
|
} SpeechRuleState;
|
|
|
|
|
|
|
|
typedef enum SpeechTokenShellFolder
|
|
|
|
{
|
|
|
|
STSF_AppData = 0x001a,
|
|
|
|
STSF_LocalAppData = 0x001c,
|
|
|
|
STSF_CommonAppData = 0x0023,
|
|
|
|
STSF_FlagCreate = 0x8000
|
|
|
|
} SpeechTokenShellFolder;
|
|
|
|
|
|
|
|
typedef enum SpeechEngineConfidence
|
|
|
|
{
|
|
|
|
SECLowConfidence = -1,
|
|
|
|
SECNormalConfidence = 0,
|
|
|
|
SECHighConfidence = 1
|
|
|
|
} SpeechEngineConfidence;
|
|
|
|
|
|
|
|
typedef enum SpeechAudioState
|
|
|
|
{
|
|
|
|
SASClosed = SPAS_CLOSED,
|
|
|
|
SASStop = SPAS_STOP,
|
|
|
|
SASPause = SPAS_PAUSE,
|
|
|
|
SASRun = SPAS_RUN
|
|
|
|
} SpeechAudioState;
|
|
|
|
|
|
|
|
typedef enum SpeechRunState
|
|
|
|
{
|
|
|
|
SRSEDone = SPRS_DONE,
|
|
|
|
SRSEIsSpeaking = SPRS_IS_SPEAKING
|
|
|
|
} SpeechRunState;
|
|
|
|
|
|
|
|
typedef enum SpeechDiscardType
|
|
|
|
{
|
|
|
|
SDTProperty = SPDF_PROPERTY,
|
|
|
|
SDTReplacement = SPDF_REPLACEMENT,
|
|
|
|
SDTRule = SPDF_RULE,
|
|
|
|
SDTDisplayText = SPDF_DISPLAYTEXT,
|
|
|
|
SDTLexicalForm = SPDF_LEXICALFORM,
|
|
|
|
SDTPronunciation = SPDF_PRONUNCIATION,
|
|
|
|
SDTAudio = SPDF_AUDIO,
|
|
|
|
SDTAlternates = SPDF_ALTERNATES,
|
|
|
|
SDTAll = SPDF_ALL
|
|
|
|
} SpeechDiscardType;
|
|
|
|
|
|
|
|
typedef enum SpeechRecognizerState
|
|
|
|
{
|
|
|
|
SRSInactive = SPRST_INACTIVE,
|
|
|
|
SRSActive = SPRST_ACTIVE,
|
|
|
|
SRSActiveAlways = SPRST_ACTIVE_ALWAYS,
|
|
|
|
SRSInactiveWithPurge = SPRST_INACTIVE_WITH_PURGE,
|
|
|
|
} SpeechRecognizerState;
|
|
|
|
|
|
|
|
typedef enum SpeechDisplayAttributes
|
|
|
|
{
|
|
|
|
SDA_No_Trailing_Space = 0,
|
|
|
|
SDA_One_Trailing_Space = SPAF_ONE_TRAILING_SPACE,
|
|
|
|
SDA_Two_Trailing_Spaces = SPAF_TWO_TRAILING_SPACES,
|
|
|
|
SDA_Consume_Leading_Spaces = SPAF_CONSUME_LEADING_SPACES
|
|
|
|
} SpeechDisplayAttributes;
|
|
|
|
|
|
|
|
typedef enum SpeechFormatType
|
|
|
|
{
|
|
|
|
SFTInput = SPWF_INPUT,
|
|
|
|
SFTSREngine = SPWF_SRENGINE
|
|
|
|
} SpeechFormatType;
|
|
|
|
|
|
|
|
typedef enum SpeechGrammarState
|
|
|
|
{
|
|
|
|
SGSEnabled = SPGS_ENABLED,
|
|
|
|
SGSDisabled = SPGS_DISABLED,
|
|
|
|
SGSExclusive = SPGS_EXCLUSIVE,
|
|
|
|
} SpeechGrammarState;
|
|
|
|
|
|
|
|
typedef enum SpeechRuleAttributes
|
|
|
|
{
|
|
|
|
SRATopLevel = SPRAF_TopLevel,
|
|
|
|
SRADefaultToActive = SPRAF_Active,
|
|
|
|
SRAExport = SPRAF_Export,
|
|
|
|
SRAImport = SPRAF_Import,
|
|
|
|
SRAInterpreter = SPRAF_Interpreter,
|
|
|
|
SRADynamic = SPRAF_Dynamic,
|
|
|
|
SRARoot = SPRAF_Root
|
|
|
|
} SpeechRuleAttributes;
|
|
|
|
|
|
|
|
typedef enum SpeechWordPronounceable
|
|
|
|
{
|
|
|
|
SWPUnknownWordUnpronounceable = SPWP_UNKNOWN_WORD_UNPRONOUNCEABLE,
|
|
|
|
SWPUnknownWordPronounceable = SPWP_UNKNOWN_WORD_PRONOUNCEABLE,
|
|
|
|
SWPKnownWordPronounceable = SPWP_KNOWN_WORD_PRONOUNCEABLE
|
|
|
|
} SpeechWordPronounceable;
|
|
|
|
|
|
|
|
typedef enum SpeechSpecialTransitionType
|
|
|
|
{
|
|
|
|
SSTTWildcard = 1,
|
|
|
|
SSTTDictation,
|
|
|
|
SSTTTextBuffer
|
|
|
|
} SpeechSpecialTransitionType;
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechRecoContext
|
|
|
|
{
|
|
|
|
DISPID_SRCRecognizer = 1,
|
|
|
|
DISPID_SRCAudioInInterferenceStatus,
|
|
|
|
DISPID_SRCRequestedUIType,
|
|
|
|
DISPID_SRCVoice,
|
|
|
|
DISPID_SRAllowVoiceFormatMatchingOnNextSet,
|
|
|
|
DISPID_SRCVoicePurgeEvent,
|
|
|
|
DISPID_SRCEventInterests,
|
|
|
|
DISPID_SRCCmdMaxAlternates,
|
|
|
|
DISPID_SRCState,
|
|
|
|
DISPID_SRCRetainedAudio,
|
|
|
|
DISPID_SRCRetainedAudioFormat,
|
|
|
|
DISPID_SRCPause,
|
|
|
|
DISPID_SRCResume,
|
|
|
|
DISPID_SRCCreateGrammar,
|
|
|
|
DISPID_SRCCreateResultFromMemory,
|
|
|
|
DISPID_SRCBookmark,
|
|
|
|
DISPID_SRCSetAdaptationData
|
|
|
|
} DISPID_SpeechRecoContext;
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechDataKey
|
|
|
|
{
|
|
|
|
DISPID_SDKSetBinaryValue = 1,
|
|
|
|
DISPID_SDKGetBinaryValue,
|
|
|
|
DISPID_SDKSetStringValue,
|
|
|
|
DISPID_SDKGetStringValue,
|
|
|
|
DISPID_SDKSetLongValue,
|
|
|
|
DISPID_SDKGetlongValue,
|
|
|
|
DISPID_SDKOpenKey,
|
|
|
|
DISPID_SDKCreateKey,
|
|
|
|
DISPID_SDKDeleteKey,
|
|
|
|
DISPID_SDKDeleteValue,
|
|
|
|
DISPID_SDKEnumKeys,
|
|
|
|
DISPID_SDKEnumValues
|
|
|
|
} DISPID_SpeechDataKey;
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPIDSPRG
|
|
|
|
{
|
|
|
|
DISPID_SRGId = 1,
|
|
|
|
DISPID_SRGRecoContext,
|
|
|
|
DISPID_SRGState,
|
|
|
|
DISPID_SRGRules,
|
|
|
|
DISPID_SRGReset,
|
|
|
|
DISPID_SRGCommit,
|
|
|
|
DISPID_SRGCmdLoadFromFile,
|
|
|
|
DISPID_SRGCmdLoadFromObject,
|
|
|
|
DISPID_SRGCmdLoadFromResource,
|
|
|
|
DISPID_SRGCmdLoadFromMemory,
|
|
|
|
DISPID_SRGCmdLoadFromProprietaryGrammar,
|
|
|
|
DISPID_SRGCmdSetRuleState,
|
|
|
|
DISPID_SRGCmdSetRuleIdState,
|
|
|
|
DISPID_SRGDictationLoad,
|
|
|
|
DISPID_SRGDictationUnload,
|
|
|
|
DISPID_SRGDictationSetState,
|
|
|
|
DISPID_SRGSetWordSequenceData,
|
|
|
|
DISPID_SRGSetTextSelection,
|
|
|
|
DISPID_SRGIsPronounceable
|
|
|
|
} DISPIDSPRG;
|
|
|
|
|
|
|
|
typedef enum SpeechInterference
|
|
|
|
{
|
|
|
|
SINone = SPINTERFERENCE_NONE,
|
|
|
|
SINoise = SPINTERFERENCE_NOISE,
|
|
|
|
SINoSignal = SPINTERFERENCE_NOSIGNAL,
|
|
|
|
SITooLoud = SPINTERFERENCE_TOOLOUD,
|
|
|
|
SITooQuiet = SPINTERFERENCE_TOOQUIET,
|
|
|
|
SITooFast = SPINTERFERENCE_TOOFAST,
|
|
|
|
SITooSlow = SPINTERFERENCE_TOOSLOW
|
|
|
|
} SpeechInterference;
|
|
|
|
|
|
|
|
typedef enum SpeechVoiceEvents
|
|
|
|
{
|
|
|
|
SVEStartInputStream = (1L << 1),
|
|
|
|
SVEEndInputStream = (1L << 2),
|
|
|
|
SVEVoiceChange = (1L << 3),
|
|
|
|
SVEBookmark = (1L << 4),
|
|
|
|
SVEWordBoundary = (1L << 5),
|
|
|
|
SVEPhoneme = (1L << 6),
|
|
|
|
SVESentenceBoundary = (1L << 7),
|
|
|
|
SVEViseme = (1L << 8),
|
|
|
|
SVEAudioLevel = (1L << 9),
|
|
|
|
SVEPrivate = (1L << 15),
|
|
|
|
SVEAllEvents = 0x083FE
|
|
|
|
} SpeechVoiceEvents;
|
|
|
|
|
|
|
|
typedef enum SpeechVoiceSpeakFlags
|
|
|
|
{
|
|
|
|
SVSFDefault = SPF_DEFAULT,
|
|
|
|
SVSFlagsAsync = SPF_ASYNC,
|
|
|
|
SVSFPurgeBeforeSpeak = SPF_PURGEBEFORESPEAK,
|
|
|
|
SVSFIsFilename = SPF_IS_FILENAME,
|
|
|
|
SVSFIsXML = SPF_IS_XML,
|
|
|
|
SVSFIsNotXML = SPF_IS_NOT_XML,
|
|
|
|
SVSFPersistXML = SPF_PERSIST_XML,
|
|
|
|
SVSFNLPSpeakPunc = SPF_NLP_SPEAK_PUNC,
|
|
|
|
SVSFParseSapi = SPF_PARSE_SAPI,
|
|
|
|
SVSFParseSsml = SPF_PARSE_SSML,
|
|
|
|
SVSFParseAutodetect = SPF_PARSE_AUTODETECT,
|
|
|
|
SVSFNLPMask = SPF_NLP_MASK,
|
|
|
|
SVSFParseMask = SPF_PARSE_MASK,
|
|
|
|
SVSFVoiceMask = SPF_VOICE_MASK,
|
|
|
|
SVSFUnusedFlags = SPF_UNUSED_FLAGS,
|
|
|
|
} SpeechVoiceSpeakFlags;
|
|
|
|
|
|
|
|
typedef enum SpeechGrammarWordType
|
|
|
|
{
|
|
|
|
SGDisplay = SPWT_DISPLAY,
|
|
|
|
SGLexical = SPWT_LEXICAL,
|
|
|
|
SGPronounciation = SPWT_PRONUNCIATION,
|
|
|
|
SGLexicalNoSpecialChars = SPWT_LEXICAL_NO_SPECIAL_CHARS
|
|
|
|
} SpeechGrammarWordType;
|
|
|
|
|
|
|
|
typedef enum SpeechRecoEvents
|
|
|
|
{
|
|
|
|
SREStreamEnd = (1L << 0),
|
|
|
|
SRESoundStart = (1L << 1),
|
|
|
|
SRESoundEnd = (1L << 2),
|
|
|
|
SREPhraseStart = (1L << 3),
|
|
|
|
SRERecognition = (1L << 4),
|
|
|
|
SREHypothesis = (1L << 5),
|
|
|
|
SREBookmark = (1L << 6),
|
|
|
|
SREPropertyNumChange = (1L << 7),
|
|
|
|
SREPropertyStringChange = (1L << 8),
|
|
|
|
SREFalseRecognition = (1L << 9),
|
|
|
|
SREInterference = (1L << 10),
|
|
|
|
SRERequestUI = (1L << 11),
|
|
|
|
SREStateChange = (1L << 12),
|
|
|
|
SREAdaptation = (1L << 13),
|
|
|
|
SREStreamStart = (1L << 14),
|
|
|
|
SRERecoOtherContext = (1L << 15),
|
|
|
|
SREAudioLevel = (1L << 16),
|
|
|
|
SREPrivate = (1L << 18),
|
|
|
|
SREAllEvents = 0x5FFFF
|
|
|
|
} SpeechRecoEvents;
|
|
|
|
|
|
|
|
typedef enum SpeechRecoContextState
|
|
|
|
{
|
|
|
|
SRCS_Disabled = SPCS_DISABLED,
|
|
|
|
SRCS_Enabled = SPCS_ENABLED
|
|
|
|
} SpeechRecoContextState;
|
|
|
|
|
|
|
|
typedef enum SpeechRetainedAudioOptions
|
|
|
|
{
|
|
|
|
SRAONone = SPAO_NONE,
|
|
|
|
SRAORetainAudio = SPAO_RETAIN_AUDIO
|
|
|
|
} SpeechRetainedAudioOptions;
|
|
|
|
|
|
|
|
typedef enum SpeechVoicePriority
|
|
|
|
{
|
|
|
|
SVPNormal = SPVPRI_NORMAL,
|
|
|
|
SVPAlert = SPVPRI_ALERT,
|
|
|
|
SVPOver = SPVPRI_OVER
|
|
|
|
} SpeechVoicePriority;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(ce17c09b-4efa-44d5-a4c9-59d9585ab0cd),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechDataKey : IDispatch
|
|
|
|
{
|
|
|
|
[id(DISPID_SDKSetBinaryValue)]
|
|
|
|
HRESULT SetBinaryValue([in] const BSTR name, [in] VARIANT value);
|
|
|
|
|
|
|
|
[id(DISPID_SDKGetBinaryValue)]
|
|
|
|
HRESULT GetBinaryValue([in] const BSTR name, [out,retval] VARIANT *value);
|
|
|
|
|
|
|
|
[id(DISPID_SDKSetStringValue)]
|
|
|
|
HRESULT SetStringValue([in] const BSTR name, [in]const BSTR value);
|
|
|
|
|
|
|
|
[id(DISPID_SDKGetStringValue)]
|
|
|
|
HRESULT GetStringValue([in] const BSTR name, [out,retval] BSTR* value);
|
|
|
|
|
|
|
|
[id(DISPID_SDKSetLongValue)]
|
|
|
|
HRESULT SetLongValue([in] const BSTR name, [in] long value);
|
|
|
|
|
|
|
|
[id(DISPID_SDKGetlongValue)]
|
|
|
|
HRESULT GetLongValue([in] const BSTR name, [out,retval] long *value);
|
|
|
|
|
|
|
|
[id(DISPID_SDKOpenKey)]
|
|
|
|
HRESULT OpenKey( [in] const BSTR name, [out,retval] ISpeechDataKey **key);
|
|
|
|
|
|
|
|
[id(DISPID_SDKCreateKey)]
|
|
|
|
HRESULT CreateKey([in] const BSTR name, [out,retval] ISpeechDataKey **key);
|
|
|
|
|
|
|
|
[id(DISPID_SDKDeleteKey)]
|
|
|
|
HRESULT DeleteKey([in] const BSTR name);
|
|
|
|
|
|
|
|
[id(DISPID_SDKDeleteValue)]
|
|
|
|
HRESULT DeleteValue([in] const BSTR name);
|
|
|
|
|
|
|
|
[id(DISPID_SDKEnumKeys)]
|
|
|
|
HRESULT EnumKeys([in] long index, [out,retval] BSTR *name);
|
|
|
|
|
|
|
|
[id(DISPID_SDKEnumValues)]
|
|
|
|
HRESULT EnumValues([in] long Index, [out,retval] BSTR *value);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef enum SpeechDataKeyLocation
|
|
|
|
{
|
|
|
|
SDKLDefaultLocation = 0,
|
|
|
|
SDKLCurrentUser = 1,
|
|
|
|
SDKLLocalMachine = 2,
|
|
|
|
SDKLCurrentConfig = 5
|
|
|
|
} SpeechDataKeyLocation;
|
|
|
|
|
|
|
|
typedef enum SpeechBookmarkOptions
|
|
|
|
{
|
|
|
|
SBONone = SPBO_NONE,
|
|
|
|
SBOPause = SPBO_PAUSE
|
|
|
|
} SpeechBookmarkOptions;
|
|
|
|
|
|
|
|
#define CLSCTXALL (CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER | CLSCTX_LOCAL_SERVER | CLSCTX_REMOTE_SERVER)
|
|
|
|
|
|
|
|
typedef enum SpeechTokenContext
|
|
|
|
{
|
|
|
|
STCInprocServer = CLSCTX_INPROC_SERVER,
|
|
|
|
STCInprocHandler = CLSCTX_INPROC_HANDLER,
|
|
|
|
STCLocalServer = CLSCTX_LOCAL_SERVER,
|
|
|
|
STCRemoteServer = CLSCTX_REMOTE_SERVER,
|
|
|
|
STCAll = CLSCTXALL
|
|
|
|
} SpeechTokenContext;
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechObjectTokenCategory
|
|
|
|
{
|
|
|
|
DISPID_SOTCId = 1,
|
|
|
|
DISPID_SOTCDefault,
|
|
|
|
DISPID_SOTCSetId,
|
|
|
|
DISPID_SOTCGetDataKey,
|
|
|
|
DISPID_SOTCEnumerateTokens,
|
|
|
|
} DISPID_SpeechObjectTokenCategory;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(ca7eac50-2d01-4145-86d4-5ae7d70f4469),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechObjectTokenCategory : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SOTCId)]
|
|
|
|
HRESULT Id([out, retval] BSTR *id);
|
|
|
|
|
|
|
|
[propput, id(DISPID_SOTCDefault)]
|
|
|
|
HRESULT Default([in] const BSTR token);
|
|
|
|
[propget, id(DISPID_SOTCDefault)]
|
|
|
|
HRESULT Default([out, retval] BSTR *token);
|
|
|
|
|
|
|
|
[id(DISPID_SOTCSetId)]
|
|
|
|
HRESULT SetId([in] const BSTR id, [in, defaultvalue(0)] VARIANT_BOOL created);
|
|
|
|
|
|
|
|
[hidden, id(DISPID_SOTCGetDataKey)]
|
|
|
|
HRESULT GetDataKey([in, defaultvalue(SDKLDefaultLocation)] SpeechDataKeyLocation location,
|
|
|
|
[out, retval] ISpeechDataKey **key);
|
|
|
|
|
|
|
|
[id(DISPID_SOTCEnumerateTokens)]
|
|
|
|
HRESULT EnumerateTokens([in, defaultvalue("")] BSTR required,
|
|
|
|
[in, defaultvalue("")] BSTR optional,
|
|
|
|
[out, retval] ISpeechObjectTokens **tokens);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechObjectToken
|
|
|
|
{
|
|
|
|
DISPID_SOTId = 1,
|
|
|
|
DISPID_SOTDataKey,
|
|
|
|
DISPID_SOTCategory,
|
|
|
|
DISPID_SOTGetDescription,
|
|
|
|
DISPID_SOTSetId,
|
|
|
|
DISPID_SOTGetAttribute,
|
|
|
|
DISPID_SOTCreateInstance,
|
|
|
|
DISPID_SOTRemove,
|
|
|
|
DISPID_SOTGetStorageFileName,
|
|
|
|
DISPID_SOTRemoveStorageFileName,
|
|
|
|
DISPID_SOTIsUISupported,
|
|
|
|
DISPID_SOTDisplayUI,
|
|
|
|
DISPID_SOTMatchesAttributes
|
|
|
|
} DISPID_SpeechObjectToken;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(c74a3adc-b727-4500-a84a-b526721c8b8c),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechObjectToken : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SOTId)]
|
|
|
|
HRESULT Id([out,retval] BSTR *object);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SOTDataKey), hidden]
|
|
|
|
HRESULT DataKey([out,retval] ISpeechDataKey **key);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SOTCategory)]
|
|
|
|
HRESULT Category([out,retval] ISpeechObjectTokenCategory **category);
|
|
|
|
|
|
|
|
[id(DISPID_SOTGetDescription)]
|
|
|
|
HRESULT GetDescription( [in,defaultvalue(0)] long locale, [out,retval]BSTR *description);
|
|
|
|
|
|
|
|
[hidden, id(DISPID_SOTSetId)]
|
|
|
|
HRESULT SetId([in] BSTR id, [in, defaultvalue("")] BSTR category, [in, defaultvalue(0)] VARIANT_BOOL create);
|
|
|
|
|
|
|
|
[id(DISPID_SOTGetAttribute)]
|
|
|
|
HRESULT GetAttribute([in] BSTR name, [out, retval] BSTR* value);
|
|
|
|
|
|
|
|
[id(DISPID_SOTCreateInstance)]
|
|
|
|
HRESULT CreateInstance([in, defaultvalue(NULL)] IUnknown *outer, [in, defaultvalue(STCAll)] SpeechTokenContext spcontext,
|
|
|
|
[out, retval] IUnknown **object);
|
|
|
|
|
|
|
|
[hidden, id(DISPID_SOTRemove)]
|
|
|
|
HRESULT Remove([in] BSTR clsid);
|
|
|
|
|
|
|
|
[hidden, id(DISPID_SOTGetStorageFileName)]
|
|
|
|
HRESULT GetStorageFileName([in] BSTR clsid, [in] BSTR key, [in] BSTR name, [in] SpeechTokenShellFolder folder,
|
|
|
|
[out,retval] BSTR* path);
|
|
|
|
|
|
|
|
[hidden, id(DISPID_SOTRemoveStorageFileName)]
|
|
|
|
HRESULT RemoveStorageFileName([in] BSTR clsid, [in]BSTR key, [in] VARIANT_BOOL delete);
|
|
|
|
|
|
|
|
[hidden, id(DISPID_SOTIsUISupported)]
|
|
|
|
HRESULT IsUISupported( [in]const BSTR type, [in, defaultvalue(NULL)] const VARIANT *data,
|
|
|
|
[in, defaultvalue(NULL)] IUnknown *object,
|
|
|
|
[out,retval] VARIANT_BOOL *supported);
|
|
|
|
|
|
|
|
[hidden, id(DISPID_SOTDisplayUI)]
|
|
|
|
HRESULT DisplayUI([in] long hwnd, [in] BSTR title, [in]const BSTR type,
|
|
|
|
[in, defaultvalue(NULL)] const VARIANT *data,
|
|
|
|
[in, defaultvalue(NULL)] IUnknown *object);
|
|
|
|
|
|
|
|
[id(DISPID_SOTMatchesAttributes)]
|
|
|
|
HRESULT MatchesAttributes([in] BSTR attributes, [out,retval] VARIANT_BOOL *matches);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechObjectTokens
|
|
|
|
{
|
|
|
|
DISPID_SOTsCount = 1,
|
|
|
|
DISPID_SOTsItem = DISPID_VALUE,
|
|
|
|
DISPID_SOTs_NewEnum = DISPID_NEWENUM
|
|
|
|
} DISPID_SpeechObjectTokens;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(9285b776-2e7b-4bc0-b53e-580eb6fa967f),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechObjectTokens : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SOTsCount)]
|
|
|
|
HRESULT Count([out, retval] long* count);
|
|
|
|
|
|
|
|
[id(DISPID_VALUE)]
|
|
|
|
HRESULT Item([in] long index, [out, retval] ISpeechObjectToken **token);
|
|
|
|
|
|
|
|
[propget, restricted, id(DISPID_NEWENUM)]
|
|
|
|
HRESULT _NewEnum([out, retval] IUnknown **ppenum);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechWaveFormatEx
|
|
|
|
{
|
|
|
|
DISPID_SWFEFormatTag = 1,
|
|
|
|
DISPID_SWFEChannels,
|
|
|
|
DISPID_SWFESamplesPerSec,
|
|
|
|
DISPID_SWFEAvgBytesPerSec,
|
|
|
|
DISPID_SWFEBlockAlign,
|
|
|
|
DISPID_SWFEBitsPerSample,
|
|
|
|
DISPID_SWFEExtraData
|
|
|
|
} DISPID_SpeechWaveFormatEx;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(7a1ef0d5-1581-4741-88e4-209a49f11a10),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechWaveFormatEx : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SWFEFormatTag)]
|
|
|
|
HRESULT FormatTag([out,retval] short *tag);
|
|
|
|
[propput, id(DISPID_SWFEFormatTag)]
|
|
|
|
HRESULT FormatTag([in] short tag);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SWFEChannels)]
|
|
|
|
HRESULT Channels([out,retval] short *channels);
|
|
|
|
[propput, id(DISPID_SWFEChannels)]
|
|
|
|
HRESULT Channels([in] short channels);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SWFESamplesPerSec)]
|
|
|
|
HRESULT SamplesPerSec([out,retval] long * samples);
|
|
|
|
[propput, id(DISPID_SWFESamplesPerSec)]
|
|
|
|
HRESULT SamplesPerSec([in] long samples);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SWFEAvgBytesPerSec)]
|
|
|
|
HRESULT AvgBytesPerSec([out,retval] long *average);
|
|
|
|
[propput, id(DISPID_SWFEAvgBytesPerSec)]
|
|
|
|
HRESULT AvgBytesPerSec([in] long average);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SWFEBlockAlign)]
|
|
|
|
HRESULT BlockAlign([out,retval] short *alignment);
|
|
|
|
[propput, id(DISPID_SWFEBlockAlign)]
|
|
|
|
HRESULT BlockAlign([in] short alignment);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SWFEBitsPerSample)]
|
|
|
|
HRESULT BitsPerSample([out,retval] short *bits);
|
|
|
|
[propput, id(DISPID_SWFEBitsPerSample)]
|
|
|
|
HRESULT BitsPerSample([in] short bits);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SWFEExtraData)]
|
|
|
|
HRESULT ExtraData([out,retval] VARIANT *data);
|
|
|
|
[propput, id(DISPID_SWFEExtraData)]
|
|
|
|
HRESULT ExtraData([in] VARIANT data);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef enum SpeechAudioFormatType
|
|
|
|
{
|
|
|
|
SAFTDefault = -1,
|
|
|
|
SAFTNoAssignedFormat = 0,
|
|
|
|
SAFTText,
|
|
|
|
SAFTNonStandardFormat,
|
|
|
|
SAFTExtendedAudioFormat,
|
|
|
|
SAFT8kHz8BitMono,
|
|
|
|
SAFT8kHz8BitStereo,
|
|
|
|
SAFT8kHz16BitMono,
|
|
|
|
SAFT8kHz16BitStereo,
|
|
|
|
SAFT11kHz8BitMono,
|
|
|
|
SAFT11kHz8BitStereo,
|
|
|
|
SAFT11kHz16BitMono,
|
|
|
|
SAFT11kHz16BitStereo,
|
|
|
|
SAFT12kHz8BitMono,
|
|
|
|
SAFT12kHz8BitStereo,
|
|
|
|
SAFT12kHz16BitMono,
|
|
|
|
SAFT12kHz16BitStereo,
|
|
|
|
SAFT16kHz8BitMono,
|
|
|
|
SAFT16kHz8BitStereo,
|
|
|
|
SAFT16kHz16BitMono,
|
|
|
|
SAFT16kHz16BitStereo,
|
|
|
|
SAFT22kHz8BitMono,
|
|
|
|
SAFT22kHz8BitStereo,
|
|
|
|
SAFT22kHz16BitMono,
|
|
|
|
SAFT22kHz16BitStereo,
|
|
|
|
SAFT24kHz8BitMono,
|
|
|
|
SAFT24kHz8BitStereo,
|
|
|
|
SAFT24kHz16BitMono,
|
|
|
|
SAFT24kHz16BitStereo,
|
|
|
|
SAFT32kHz8BitMono,
|
|
|
|
SAFT32kHz8BitStereo,
|
|
|
|
SAFT32kHz16BitMono,
|
|
|
|
SAFT32kHz16BitStereo,
|
|
|
|
SAFT44kHz8BitMono,
|
|
|
|
SAFT44kHz8BitStereo,
|
|
|
|
SAFT44kHz16BitMono,
|
|
|
|
SAFT44kHz16BitStereo,
|
|
|
|
SAFT48kHz8BitMono,
|
|
|
|
SAFT48kHz8BitStereo,
|
|
|
|
SAFT48kHz16BitMono,
|
|
|
|
SAFT48kHz16BitStereo,
|
|
|
|
SAFTTrueSpeech_8kHz1BitMono,
|
|
|
|
SAFTCCITT_ALaw_8kHzMono,
|
|
|
|
SAFTCCITT_ALaw_8kHzStereo,
|
|
|
|
SAFTCCITT_ALaw_11kHzMono,
|
|
|
|
SAFTCCITT_ALaw_11kHzStereo,
|
|
|
|
SAFTCCITT_ALaw_22kHzMono,
|
|
|
|
SAFTCCITT_ALaw_22kHzStereo,
|
|
|
|
SAFTCCITT_ALaw_44kHzMono,
|
|
|
|
SAFTCCITT_ALaw_44kHzStereo,
|
|
|
|
SAFTCCITT_uLaw_8kHzMono,
|
|
|
|
SAFTCCITT_uLaw_8kHzStereo,
|
|
|
|
SAFTCCITT_uLaw_11kHzMono,
|
|
|
|
SAFTCCITT_uLaw_11kHzStereo,
|
|
|
|
SAFTCCITT_uLaw_22kHzMono,
|
|
|
|
SAFTCCITT_uLaw_22kHzStereo,
|
|
|
|
SAFTCCITT_uLaw_44kHzMono,
|
|
|
|
SAFTCCITT_uLaw_44kHzStereo,
|
|
|
|
SAFTADPCM_8kHzMono,
|
|
|
|
SAFTADPCM_8kHzStereo,
|
|
|
|
SAFTADPCM_11kHzMono,
|
|
|
|
SAFTADPCM_11kHzStereo,
|
|
|
|
SAFTADPCM_22kHzMono,
|
|
|
|
SAFTADPCM_22kHzStereo,
|
|
|
|
SAFTADPCM_44kHzMono,
|
|
|
|
SAFTADPCM_44kHzStereo,
|
|
|
|
SAFTGSM610_8kHzMono,
|
|
|
|
SAFTGSM610_11kHzMono,
|
|
|
|
SAFTGSM610_22kHzMono,
|
|
|
|
SAFTGSM610_44kHzMono,
|
|
|
|
} SpeechAudioFormatType;
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechAudioFormat
|
|
|
|
{
|
|
|
|
DISPID_SAFType = 1,
|
|
|
|
DISPID_SAFGuid,
|
|
|
|
DISPID_SAFGetWaveFormatEx,
|
|
|
|
DISPID_SAFSetWaveFormatEx
|
|
|
|
} DISPID_SpeechAudioFormat;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(e6e9c590-3e18-40e3-8299-061f98bde7c7),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechAudioFormat : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SAFType)]
|
|
|
|
HRESULT Type([out,retval] SpeechAudioFormatType *format);
|
|
|
|
[propput, id(DISPID_SAFType)]
|
|
|
|
HRESULT Type([in] SpeechAudioFormatType format);
|
|
|
|
|
|
|
|
[propget, hidden, id(DISPID_SAFGuid)]
|
|
|
|
HRESULT Guid([out,retval] BSTR *guid);
|
|
|
|
[propput, hidden, id(DISPID_SAFGuid)]
|
|
|
|
HRESULT Guid([in] BSTR guid);
|
|
|
|
|
|
|
|
[hidden, id(DISPID_SAFGetWaveFormatEx)]
|
|
|
|
HRESULT GetWaveFormatEx([out,retval] ISpeechWaveFormatEx **speechwave);
|
|
|
|
|
|
|
|
[hidden, id(DISPID_SAFSetWaveFormatEx)]
|
|
|
|
HRESULT SetWaveFormatEx([in] ISpeechWaveFormatEx *speechwave);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef enum SpeechStreamSeekPositionType
|
|
|
|
{
|
|
|
|
SSSPTRelativeToStart = STREAM_SEEK_SET,
|
|
|
|
SSSPTRelativeToCurrentPosition = STREAM_SEEK_CUR,
|
|
|
|
SSSPTRelativeToEnd = STREAM_SEEK_END
|
|
|
|
} SpeechStreamSeekPositionType;
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechBaseStream
|
|
|
|
{
|
|
|
|
DISPID_SBSFormat = 1,
|
|
|
|
DISPID_SBSRead,
|
|
|
|
DISPID_SBSWrite,
|
|
|
|
DISPID_SBSSeek
|
|
|
|
} DISPID_SpeechBaseStream;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(6450336f-7d49-4ced-8097-49d6dee37294),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechBaseStream : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SBSFormat)]
|
|
|
|
HRESULT Format([out,retval] ISpeechAudioFormat **format);
|
|
|
|
[propputref, id(DISPID_SBSFormat)]
|
|
|
|
HRESULT Format([in] ISpeechAudioFormat *format);
|
|
|
|
|
|
|
|
[id(DISPID_SBSRead)]
|
|
|
|
HRESULT Read([out] VARIANT *buffer, [in] long written, [out,retval] long *read);
|
|
|
|
|
|
|
|
[id(DISPID_SBSWrite)]
|
|
|
|
HRESULT Write([in] VARIANT buffer, [out,retval] long *written);
|
|
|
|
|
|
|
|
[id(DISPID_SBSSeek)]
|
|
|
|
HRESULT Seek([in] VARIANT position, [in, defaultvalue(SSSPTRelativeToStart)] SpeechStreamSeekPositionType origin,
|
|
|
|
[out,retval] VARIANT *pos);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechAudioStatus
|
|
|
|
{
|
|
|
|
DISPID_SASFreeBufferSpace = 1,
|
|
|
|
DISPID_SASNonBlockingIO,
|
|
|
|
DISPID_SASState,
|
|
|
|
DISPID_SASCurrentSeekPosition,
|
|
|
|
DISPID_SASCurrentDevicePosition
|
|
|
|
} DISPID_SpeechAudioStatus;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(c62d9c91-7458-47f6-862d-1ef86fb0b278),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechAudioStatus : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SASFreeBufferSpace)]
|
|
|
|
HRESULT FreeBufferSpace([out,retval] long *space);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SASNonBlockingIO)]
|
|
|
|
HRESULT NonBlockingIO([out,retval] long *nonblocking);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SASState)]
|
|
|
|
HRESULT State([out, retval] SpeechAudioState *state);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SASCurrentSeekPosition)]
|
|
|
|
HRESULT CurrentSeekPosition([out,retval] VARIANT *position);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SASCurrentDevicePosition)]
|
|
|
|
HRESULT CurrentDevicePosition([out,retval] VARIANT *position);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechRecognizerStatus
|
|
|
|
{
|
|
|
|
DISPID_SRSAudioStatus = 1,
|
|
|
|
DISPID_SRSCurrentStreamPosition,
|
|
|
|
DISPID_SRSCurrentStreamNumber,
|
|
|
|
DISPID_SRSNumberOfActiveRules,
|
|
|
|
DISPID_SRSClsidEngine,
|
|
|
|
DISPID_SRSSupportedLanguages
|
|
|
|
} DISPID_SpeechRecognizerStatus;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(bff9e781-53ec-484e-bb8a-0e1b5551e35c),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechRecognizerStatus : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SRSAudioStatus)]
|
|
|
|
HRESULT AudioStatus([out,retval] ISpeechAudioStatus **audio);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRSCurrentStreamPosition)]
|
|
|
|
HRESULT CurrentStreamPosition([out,retval] VARIANT *pos);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRSCurrentStreamNumber)]
|
|
|
|
HRESULT CurrentStreamNumber([out,retval] long *number);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRSNumberOfActiveRules)]
|
|
|
|
HRESULT NumberOfActiveRules([out,retval] long *rules);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRSClsidEngine)]
|
|
|
|
HRESULT ClsidEngine([out,retval] BSTR *clsid);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRSSupportedLanguages)]
|
|
|
|
HRESULT SupportedLanguages([out,retval] VARIANT *languages);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechVoiceStatus
|
|
|
|
{
|
|
|
|
DISPID_SVSCurrentStreamNumber = 1,
|
|
|
|
DISPID_SVSLastStreamNumberQueued,
|
|
|
|
DISPID_SVSLastResult,
|
|
|
|
DISPID_SVSRunningState,
|
|
|
|
DISPID_SVSInputWordPosition,
|
|
|
|
DISPID_SVSInputWordLength,
|
|
|
|
DISPID_SVSInputSentencePosition,
|
|
|
|
DISPID_SVSInputSentenceLength,
|
|
|
|
DISPID_SVSLastBookmark,
|
|
|
|
DISPID_SVSLastBookmarkId,
|
|
|
|
DISPID_SVSPhonemeId,
|
|
|
|
DISPID_SVSVisemeId
|
|
|
|
} DISPID_SpeechVoiceStatus;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(8be47b07-57f6-11d2-9eee-00c04f797396),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechVoiceStatus : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SVSCurrentStreamNumber)]
|
|
|
|
HRESULT CurrentStreamNumber([out, retval] long *number);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVSLastStreamNumberQueued)]
|
|
|
|
HRESULT LastStreamNumberQueued([out, retval] long *number);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVSLastResult)]
|
|
|
|
HRESULT LastHResult([out, retval]long *result);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVSRunningState)]
|
|
|
|
HRESULT RunningState([out, retval] SpeechRunState *state);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVSInputWordPosition)]
|
|
|
|
HRESULT InputWordPosition([out, retval] long *position);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVSInputWordLength)]
|
|
|
|
HRESULT InputWordLength([out, retval] long *length);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVSInputSentencePosition)]
|
|
|
|
HRESULT InputSentencePosition([out, retval] long *position);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVSInputSentenceLength)]
|
|
|
|
HRESULT InputSentenceLength([out, retval] long *length);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVSLastBookmark)]
|
|
|
|
HRESULT LastBookmark([out, retval] BSTR *bookmark);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVSLastBookmarkId), hidden]
|
|
|
|
HRESULT LastBookmarkId([out, retval] long *bookmark);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVSPhonemeId)]
|
|
|
|
HRESULT PhonemeId([out, retval] short *phone);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVSVisemeId)]
|
|
|
|
HRESULT VisemeId([out, retval] short *id);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechVoice
|
|
|
|
{
|
|
|
|
DISPID_SVStatus = 1,
|
|
|
|
DISPID_SVVoice,
|
|
|
|
DISPID_SVAudioOutput,
|
|
|
|
DISPID_SVAudioOutputStream,
|
|
|
|
DISPID_SVRate,
|
|
|
|
DISPID_SVVolume,
|
|
|
|
DISPID_SVAllowAudioOuputFormatChangesOnNextSet,
|
|
|
|
DISPID_SVEventInterests,
|
|
|
|
DISPID_SVPriority,
|
|
|
|
DISPID_SVAlertBoundary,
|
|
|
|
DISPID_SVSyncronousSpeakTimeout,
|
|
|
|
DISPID_SVSpeak,
|
|
|
|
DISPID_SVSpeakStream,
|
|
|
|
DISPID_SVPause,
|
|
|
|
DISPID_SVResume,
|
|
|
|
DISPID_SVSkip,
|
|
|
|
DISPID_SVGetVoices,
|
|
|
|
DISPID_SVGetAudioOutputs,
|
|
|
|
DISPID_SVWaitUntilDone,
|
|
|
|
DISPID_SVSpeakCompleteEvent,
|
|
|
|
DISPID_SVIsUISupported,
|
|
|
|
DISPID_SVDisplayUI
|
|
|
|
} DISPID_SpeechVoice;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(269316d8-57bd-11d2-9eee-00c04f797396),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechVoice : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SVStatus)]
|
|
|
|
HRESULT Status([out, retval] ISpeechVoiceStatus **Status);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVVoice)]
|
|
|
|
HRESULT Voice([out, retval] ISpeechObjectToken **voice);
|
|
|
|
|
|
|
|
[propputref, id(DISPID_SVVoice)]
|
|
|
|
HRESULT Voice([in] ISpeechObjectToken *voice);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVAudioOutput)]
|
|
|
|
HRESULT AudioOutput([out, retval] ISpeechObjectToken **output);
|
|
|
|
|
|
|
|
[propputref, id(DISPID_SVAudioOutput)]
|
|
|
|
HRESULT AudioOutput([in] ISpeechObjectToken *output);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVAudioOutputStream)]
|
|
|
|
HRESULT AudioOutputStream([out, retval] ISpeechBaseStream **output);
|
|
|
|
|
|
|
|
[propputref, id(DISPID_SVAudioOutputStream)]
|
|
|
|
HRESULT AudioOutputStream([in] ISpeechBaseStream *output);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVRate)]
|
|
|
|
HRESULT Rate([out, retval] long *rate);
|
|
|
|
|
|
|
|
[propput, id(DISPID_SVRate)]
|
|
|
|
HRESULT Rate([in] long rate);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVVolume)]
|
|
|
|
HRESULT Volume([out, retval] long *volume);
|
|
|
|
|
|
|
|
[propput, id(DISPID_SVVolume)]
|
|
|
|
HRESULT Volume([in] long volume);
|
|
|
|
|
|
|
|
[propput, hidden, id(DISPID_SVAllowAudioOuputFormatChangesOnNextSet)]
|
|
|
|
HRESULT AllowAudioOutputFormatChangesOnNextSet([in] VARIANT_BOOL allow);
|
|
|
|
|
|
|
|
[propget, hidden, id(DISPID_SVAllowAudioOuputFormatChangesOnNextSet)]
|
|
|
|
HRESULT AllowAudioOutputFormatChangesOnNextSet([out,retval] VARIANT_BOOL *allow);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVEventInterests)]
|
|
|
|
HRESULT EventInterests([out,retval] SpeechVoiceEvents *flags);
|
|
|
|
|
|
|
|
[propput, id(DISPID_SVEventInterests)]
|
|
|
|
HRESULT EventInterests([in] SpeechVoiceEvents flags);
|
|
|
|
|
|
|
|
[propput, id(DISPID_SVPriority)]
|
|
|
|
HRESULT Priority([in] SpeechVoicePriority vpriority);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVPriority)]
|
|
|
|
HRESULT Priority([out,retval] SpeechVoicePriority *vpriority);
|
|
|
|
|
|
|
|
[propput, id(DISPID_SVAlertBoundary)]
|
|
|
|
HRESULT AlertBoundary([in] SpeechVoiceEvents boundary);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVAlertBoundary)]
|
|
|
|
HRESULT AlertBoundary([out,retval] SpeechVoiceEvents *boundary);
|
|
|
|
|
|
|
|
[propput, id(DISPID_SVSyncronousSpeakTimeout)]
|
|
|
|
HRESULT SynchronousSpeakTimeout([in] long timeout);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SVSyncronousSpeakTimeout)]
|
|
|
|
HRESULT SynchronousSpeakTimeout([out,retval] long *timeout);
|
|
|
|
|
|
|
|
[id(DISPID_SVSpeak)]
|
|
|
|
HRESULT Speak([in] BSTR text, [in, defaultvalue(SPF_DEFAULT)] SpeechVoiceSpeakFlags flags,
|
|
|
|
[out, retval] long *number);
|
|
|
|
|
|
|
|
[id(DISPID_SVSpeakStream)]
|
|
|
|
HRESULT SpeakStream([in] ISpeechBaseStream *stream, [in, defaultvalue(SPF_DEFAULT)] SpeechVoiceSpeakFlags flags,
|
|
|
|
[out, retval] long *number);
|
|
|
|
|
|
|
|
[id(DISPID_SVPause)]
|
|
|
|
HRESULT Pause(void);
|
|
|
|
|
|
|
|
[id(DISPID_SVResume)]
|
|
|
|
HRESULT Resume(void);
|
|
|
|
|
|
|
|
[id(DISPID_SVSkip)]
|
|
|
|
HRESULT Skip([in] const BSTR type, [in] long items, [out,retval ]long *skipped);
|
|
|
|
|
|
|
|
[id(DISPID_SVGetVoices)]
|
|
|
|
HRESULT GetVoices([in, defaultvalue("")] BSTR required, [in, defaultvalue("")] BSTR optional,
|
|
|
|
[out,retval] ISpeechObjectTokens **tokens);
|
|
|
|
|
|
|
|
[id(DISPID_SVGetAudioOutputs)]
|
|
|
|
HRESULT GetAudioOutputs([in, defaultvalue("")] BSTR required, [in, defaultvalue("")] BSTR optional,
|
|
|
|
[out,retval] ISpeechObjectTokens **tokens);
|
|
|
|
|
|
|
|
[id(DISPID_SVWaitUntilDone)]
|
|
|
|
HRESULT WaitUntilDone([in] long msTimeout, [out,retval] VARIANT_BOOL *done);
|
|
|
|
|
|
|
|
[hidden, id(DISPID_SVSpeakCompleteEvent)]
|
|
|
|
HRESULT SpeakCompleteEvent([out,retval] long *handle);
|
|
|
|
|
|
|
|
[id(DISPID_SVIsUISupported)]
|
|
|
|
HRESULT IsUISupported( [in] const BSTR typeui, [in, defaultvalue(NULL)] const VARIANT *data,
|
|
|
|
[out,retval] VARIANT_BOOL *supported);
|
|
|
|
|
|
|
|
[id(DISPID_SVDisplayUI)]
|
|
|
|
HRESULT DisplayUI([in] long hwnd, [in] BSTR title, [in] const BSTR typeui, [in, defaultvalue(NULL)] const VARIANT *data);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechRecoResultTimes
|
|
|
|
{
|
|
|
|
DISPID_SRRTStreamTime = 1,
|
|
|
|
DISPID_SRRTLength,
|
|
|
|
DISPID_SRRTTickCount,
|
|
|
|
DISPID_SRRTOffsetFromStart
|
|
|
|
} DISPID_SpeechRecoResultTimes;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(62b3b8fb-f6e7-41be-bdcb-056b1c29efc0),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechRecoResultTimes : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SRRTStreamTime)]
|
|
|
|
HRESULT StreamTime([out,retval] VARIANT *streamtime);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRRTLength)]
|
|
|
|
HRESULT Length([out,retval] VARIANT *length);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRRTTickCount)]
|
|
|
|
HRESULT TickCount([out,retval] long *count);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRRTOffsetFromStart)]
|
|
|
|
HRESULT OffsetFromStart([out,retval] VARIANT *offset);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechPhraseRules
|
|
|
|
{
|
|
|
|
DISPID_SPRulesCount = 1,
|
|
|
|
DISPID_SPRulesItem = DISPID_VALUE,
|
|
|
|
DISPID_SPRules_NewEnum = DISPID_NEWENUM
|
|
|
|
} DISPID_SpeechPhraseRules;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(9047d593-01dd-4b72-81a3-e4a0ca69f407),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechPhraseRules : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SPRulesCount)]
|
|
|
|
HRESULT Count([out, retval] long *count);
|
|
|
|
|
|
|
|
[id(DISPID_SPRulesItem)]
|
|
|
|
HRESULT Item([in] long index, [out, retval] ISpeechPhraseRule **rule);
|
|
|
|
|
|
|
|
[propget, restricted, id(DISPID_SPRules_NewEnum)]
|
|
|
|
HRESULT _NewEnum([out, retval] IUnknown **obj);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechPhraseRule
|
|
|
|
{
|
|
|
|
DISPID_SPRuleName = 1,
|
|
|
|
DISPID_SPRuleId,
|
|
|
|
DISPID_SPRuleFirstElement,
|
|
|
|
DISPID_SPRuleNumberOfElements,
|
|
|
|
DISPID_SPRuleParent,
|
|
|
|
DISPID_SPRuleChildren,
|
|
|
|
DISPID_SPRuleConfidence,
|
|
|
|
DISPID_SPRuleEngineConfidence
|
|
|
|
} DISPID_SpeechPhraseRule;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(a7bfe112-a4a0-48d9-b602-c313843f6964),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechPhraseRule : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SPRuleName)]
|
|
|
|
HRESULT Name([out, retval]BSTR *name);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPRuleId)]
|
|
|
|
HRESULT Id( [out, retval] long *id);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPRuleFirstElement)]
|
|
|
|
HRESULT FirstElement([out, retval] long *element);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPRuleNumberOfElements)]
|
|
|
|
HRESULT NumberOfElements([out, retval] long *count);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPRuleParent)]
|
|
|
|
HRESULT Parent([out, retval] ISpeechPhraseRule **parent);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPRuleChildren)]
|
|
|
|
HRESULT Children([out, retval] ISpeechPhraseRules **children);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPRuleConfidence)]
|
|
|
|
HRESULT Confidence([out, retval] SpeechEngineConfidence *confidence);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPRuleEngineConfidence)]
|
|
|
|
HRESULT EngineConfidence([out, retval] float *confidence);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechPhraseProperty
|
|
|
|
{
|
|
|
|
DISPID_SPPName = 1,
|
|
|
|
DISPID_SPPId,
|
|
|
|
DISPID_SPPValue,
|
|
|
|
DISPID_SPPFirstElement,
|
|
|
|
DISPID_SPPNumberOfElements,
|
|
|
|
DISPID_SPPEngineConfidence,
|
|
|
|
DISPID_SPPConfidence,
|
|
|
|
DISPID_SPPParent,
|
|
|
|
DISPID_SPPChildren
|
|
|
|
} DISPID_SpeechPhraseProperty;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(CE563D48-961E-4732-A2E1-378A42B430BE),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechPhraseProperty : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SPPName)]
|
|
|
|
HRESULT Name([out, retval] BSTR *name);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPPId)]
|
|
|
|
HRESULT Id([out, retval] long *id);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPPValue)]
|
|
|
|
HRESULT Value([out, retval] VARIANT *value);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPPFirstElement)]
|
|
|
|
HRESULT FirstElement( [out, retval] long *element);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPPNumberOfElements)]
|
|
|
|
HRESULT NumberOfElements([out, retval] long *elements);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPPEngineConfidence)]
|
|
|
|
HRESULT EngineConfidence([out, retval] float *confidence);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPPConfidence)]
|
|
|
|
HRESULT Confidence([out, retval] SpeechEngineConfidence *Confidence);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPPParent)]
|
|
|
|
HRESULT Parent([out, retval] ISpeechPhraseProperty **parent);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPPChildren)]
|
|
|
|
HRESULT Children( [out, retval] ISpeechPhraseProperties **children);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechPhraseProperties
|
|
|
|
{
|
|
|
|
DISPID_SPPsCount = 1,
|
|
|
|
DISPID_SPPsItem = DISPID_VALUE,
|
|
|
|
DISPID_SPPs_NewEnum = DISPID_NEWENUM
|
|
|
|
} DISPID_SpeechPhraseProperties;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(08166b47-102e-4b23-a599-bdb98dbfd1f4),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechPhraseProperties : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SPPsCount)]
|
|
|
|
HRESULT Count([out, retval] long *count);
|
|
|
|
|
|
|
|
[id(DISPID_SPPsItem)]
|
|
|
|
HRESULT Item([in] long index, [out, retval] ISpeechPhraseProperty **obj);
|
|
|
|
|
|
|
|
[propget, restricted, id(DISPID_SPPs_NewEnum)]
|
|
|
|
HRESULT _NewEnum([out, retval] IUnknown **obj);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechPhraseElement
|
|
|
|
{
|
|
|
|
DISPID_SPEAudioTimeOffset = 1,
|
|
|
|
DISPID_SPEAudioSizeTime,
|
|
|
|
DISPID_SPEAudioStreamOffset,
|
|
|
|
DISPID_SPEAudioSizeBytes,
|
|
|
|
DISPID_SPERetainedStreamOffset,
|
|
|
|
DISPID_SPERetainedSizeBytes,
|
|
|
|
DISPID_SPEDisplayText,
|
|
|
|
DISPID_SPELexicalForm,
|
|
|
|
DISPID_SPEPronunciation,
|
|
|
|
DISPID_SPEDisplayAttributes,
|
|
|
|
DISPID_SPERequiredConfidence,
|
|
|
|
DISPID_SPEActualConfidence,
|
|
|
|
DISPID_SPEEngineConfidence
|
|
|
|
} DISPID_SpeechPhraseElement;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(e6176f96-e373-4801-b223-3b62c068c0b4),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechPhraseElement : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SPEAudioTimeOffset)]
|
|
|
|
HRESULT AudioTimeOffset( [out, retval] long *offset);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPEAudioSizeTime)]
|
|
|
|
HRESULT AudioSizeTime([out, retval] long *audiotime);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPEAudioStreamOffset)]
|
|
|
|
HRESULT AudioStreamOffset([out, retval] long *offset);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPEAudioSizeBytes)]
|
|
|
|
HRESULT AudioSizeBytes([out, retval]long *bytes);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPERetainedStreamOffset)]
|
|
|
|
HRESULT RetainedStreamOffset([out, retval] long *offset);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPERetainedSizeBytes)]
|
|
|
|
HRESULT RetainedSizeBytes([out, retval] long *retained);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPEDisplayText)]
|
|
|
|
HRESULT DisplayText([out, retval] BSTR *display);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPELexicalForm)]
|
|
|
|
HRESULT LexicalForm( [out, retval] BSTR *lexical);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPEPronunciation)]
|
|
|
|
HRESULT Pronunciation([out, retval] VARIANT *pronunciation);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPEDisplayAttributes)]
|
|
|
|
HRESULT DisplayAttributes([out, retval] SpeechDisplayAttributes *attributes);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPERequiredConfidence)]
|
|
|
|
HRESULT RequiredConfidence([out, retval] SpeechEngineConfidence *confidence);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPEActualConfidence)]
|
|
|
|
HRESULT ActualConfidence([out, retval] SpeechEngineConfidence *confidence);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPEEngineConfidence)]
|
|
|
|
HRESULT EngineConfidence([out, retval] float *confidence);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechPhraseElements
|
|
|
|
{
|
|
|
|
DISPID_SPEsCount = 1,
|
|
|
|
DISPID_SPEsItem = DISPID_VALUE,
|
|
|
|
DISPID_SPEs_NewEnum = DISPID_NEWENUM
|
|
|
|
} DISPID_SpeechPhraseElements;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(0626b328-3478-467d-a0b3-d0853b93dda3),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechPhraseElements : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SPEsCount)]
|
|
|
|
HRESULT Count([out, retval] long *count);
|
|
|
|
|
|
|
|
[id(DISPID_SPEsItem)]
|
|
|
|
HRESULT Item([in] long Index, [out, retval] ISpeechPhraseElement **element);
|
|
|
|
|
|
|
|
[propget, restricted, id(DISPID_SPEs_NewEnum)]
|
|
|
|
HRESULT _NewEnum([out, retval] IUnknown **obj);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechPhraseReplacement
|
|
|
|
{
|
|
|
|
DISPID_SPRDisplayAttributes = 1,
|
|
|
|
DISPID_SPRText,
|
|
|
|
DISPID_SPRFirstElement,
|
|
|
|
DISPID_SPRNumberOfElements
|
|
|
|
} DISPID_SpeechPhraseReplacement;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(2890a410-53a7-4fb5-94ec-06d4998e3d02),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechPhraseReplacement : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SPRDisplayAttributes)]
|
|
|
|
HRESULT DisplayAttributes([out,retval] SpeechDisplayAttributes *attributes);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPRText)]
|
|
|
|
HRESULT Text([out, retval] BSTR *text);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPRFirstElement)]
|
|
|
|
HRESULT FirstElement([out, retval] long *element);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPRNumberOfElements)]
|
|
|
|
HRESULT NumberOfElements([out, retval] long *elements);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechPhraseReplacements
|
|
|
|
{
|
|
|
|
DISPID_SPRsCount = 1,
|
|
|
|
DISPID_SPRsItem = DISPID_VALUE,
|
|
|
|
DISPID_SPRs_NewEnum = DISPID_NEWENUM
|
|
|
|
} DISPID_SpeechPhraseReplacements;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(38bc662f-2257-4525-959e-2069d2596c05),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechPhraseReplacements : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SPRsCount)]
|
|
|
|
HRESULT Count([out, retval] long *count);
|
|
|
|
|
|
|
|
[id(DISPID_SPRsItem)]
|
|
|
|
HRESULT Item([in] long index, [out, retval] ISpeechPhraseReplacement **reps);
|
|
|
|
|
|
|
|
[propget, restricted, id(DISPID_SPRs_NewEnum)]
|
|
|
|
HRESULT _NewEnum([out, retval] IUnknown **obj);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechPhraseInfo
|
|
|
|
{
|
|
|
|
DISPID_SPILanguageId = 1,
|
|
|
|
DISPID_SPIGrammarId,
|
|
|
|
DISPID_SPIStartTime,
|
|
|
|
DISPID_SPIAudioStreamPosition,
|
|
|
|
DISPID_SPIAudioSizeBytes,
|
|
|
|
DISPID_SPIRetainedSizeBytes,
|
|
|
|
DISPID_SPIAudioSizeTime,
|
|
|
|
DISPID_SPIRule,
|
|
|
|
DISPID_SPIProperties,
|
|
|
|
DISPID_SPIElements,
|
|
|
|
DISPID_SPIReplacements,
|
|
|
|
DISPID_SPIEngineId,
|
|
|
|
DISPID_SPIEnginePrivateData,
|
|
|
|
DISPID_SPISaveToMemory,
|
|
|
|
DISPID_SPIGetText,
|
|
|
|
DISPID_SPIGetDisplayAttributes
|
|
|
|
} DISPID_SpeechPhraseInfo;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(961559cf-4e67-4662-8bf0-d93f1fcd61b3),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechPhraseInfo : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SPILanguageId)]
|
|
|
|
HRESULT LanguageId( [out, retval] long *language);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPIGrammarId)]
|
|
|
|
HRESULT GrammarId([out, retval] VARIANT *grammar);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPIStartTime)]
|
|
|
|
HRESULT StartTime([out, retval]VARIANT *start);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPIAudioStreamPosition)]
|
|
|
|
HRESULT AudioStreamPosition([out, retval] VARIANT *position);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPIAudioSizeBytes)]
|
|
|
|
HRESULT AudioSizeBytes([out, retval] long *bytes);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPIRetainedSizeBytes)]
|
|
|
|
HRESULT RetainedSizeBytes([out, retval] long *bytes);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPIAudioSizeTime)]
|
|
|
|
HRESULT AudioSizeTime([out, retval] long *audiotime);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPIRule)]
|
|
|
|
HRESULT Rule([out, retval] ISpeechPhraseRule **rule);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPIProperties)]
|
|
|
|
HRESULT Properties([out, retval] ISpeechPhraseProperties **props);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPIElements)]
|
|
|
|
HRESULT Elements([out, retval] ISpeechPhraseElements **elements);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPIReplacements)]
|
|
|
|
HRESULT Replacements([out, retval] ISpeechPhraseReplacements **replacements);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPIEngineId)]
|
|
|
|
HRESULT EngineId([out, retval] BSTR *engine);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPIEnginePrivateData)]
|
|
|
|
HRESULT EnginePrivateData([out, retval] VARIANT *data);
|
|
|
|
|
|
|
|
[id(DISPID_SPISaveToMemory)]
|
|
|
|
HRESULT SaveToMemory([out,retval] VARIANT *block);
|
|
|
|
|
|
|
|
[id(DISPID_SPIGetText)]
|
|
|
|
HRESULT GetText([in, defaultvalue(0)] long start,
|
|
|
|
[in, defaultvalue(SPPR_ALL_ELEMENTS)] long elements,
|
|
|
|
[in, defaultvalue(-1)] VARIANT_BOOL replacements, [out,retval] BSTR *text);
|
|
|
|
|
|
|
|
[id(DISPID_SPIGetDisplayAttributes)]
|
|
|
|
HRESULT GetDisplayAttributes([in, defaultvalue(0)] long start,
|
|
|
|
[in, defaultvalue(SPPR_ALL_ELEMENTS)] long elements,
|
|
|
|
[in, defaultvalue(-1)] VARIANT_BOOL replacements,
|
|
|
|
[out,retval] SpeechDisplayAttributes *attributes);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechPhraseAlternate
|
|
|
|
{
|
|
|
|
DISPID_SPARecoResult = 1,
|
|
|
|
DISPID_SPAStartElementInResult,
|
|
|
|
DISPID_SPANumberOfElementsInResult,
|
|
|
|
DISPID_SPAPhraseInfo,
|
|
|
|
DISPID_SPACommit
|
|
|
|
} DISPID_SpeechPhraseAlternate;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(27864a2a-2b9f-4cb8-92d3-0d2722fd1e73),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechPhraseAlternate : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SPARecoResult)]
|
|
|
|
HRESULT RecoResult( [out,retval] ISpeechRecoResult **result);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPAStartElementInResult)]
|
|
|
|
HRESULT StartElementInResult([out,retval] long *element);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPANumberOfElementsInResult)]
|
|
|
|
HRESULT NumberOfElementsInResult([out,retval] long *elements);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SPAPhraseInfo)]
|
|
|
|
HRESULT PhraseInfo( [out,retval] ISpeechPhraseInfo **PhraseInfo);
|
|
|
|
|
|
|
|
[id(DISPID_SPACommit)]
|
|
|
|
HRESULT Commit(void);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechPhraseAlternates
|
|
|
|
{
|
|
|
|
DISPID_SPAsCount = 1,
|
|
|
|
DISPID_SPAsItem = DISPID_VALUE,
|
|
|
|
DISPID_SPAs_NewEnum = DISPID_NEWENUM
|
|
|
|
} DISPID_SpeechPhraseAlternates;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(b238b6d5-f276-4c3d-a6c1-2974801c3cc2),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechPhraseAlternates : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SPAsCount)]
|
|
|
|
HRESULT Count([out, retval] long *count);
|
|
|
|
|
|
|
|
[id(DISPID_SPAsItem)]
|
|
|
|
HRESULT Item([in] long index, [out, retval] ISpeechPhraseAlternate **alternate);
|
|
|
|
|
|
|
|
[propget, restricted, id(DISPID_SPAs_NewEnum)]
|
|
|
|
HRESULT _NewEnum([out, retval] IUnknown **obj);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechMemoryStream
|
|
|
|
{
|
|
|
|
DISPID_SMSSetData = 100,
|
|
|
|
DISPID_SMSGetData
|
|
|
|
} DISPID_SpeechMemoryStream;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(eeb14b68-808b-4abe-a5ea-b51da7588008),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechMemoryStream : ISpeechBaseStream
|
|
|
|
{
|
|
|
|
[id(DISPID_SMSSetData)]
|
|
|
|
HRESULT SetData([in] VARIANT data);
|
|
|
|
|
|
|
|
[id(DISPID_SMSGetData)]
|
|
|
|
HRESULT GetData([out, retval] VARIANT *data);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechRecoResult
|
|
|
|
{
|
|
|
|
DISPID_SRRRecoContext = 1,
|
|
|
|
DISPID_SRRTimes,
|
|
|
|
DISPID_SRRAudioFormat,
|
|
|
|
DISPID_SRRPhraseInfo,
|
|
|
|
DISPID_SRRAlternates,
|
|
|
|
DISPID_SRRAudio,
|
|
|
|
DISPID_SRRSpeakAudio,
|
|
|
|
DISPID_SRRSaveToMemory,
|
|
|
|
DISPID_SRRDiscardResultInfo
|
|
|
|
} DISPID_SpeechRecoResult;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(ed2879cf-ced9-4ee6-a534-de0191d5468d),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechRecoResult : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SRRRecoContext)]
|
|
|
|
HRESULT RecoContext( [out,retval] ISpeechRecoContext** RecoContext );
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRRTimes)]
|
|
|
|
HRESULT Times([out,retval] ISpeechRecoResultTimes **times);
|
|
|
|
|
|
|
|
[propputref, id(DISPID_SRRAudioFormat)]
|
|
|
|
HRESULT AudioFormat([in]ISpeechAudioFormat *format);
|
|
|
|
[propget, id(DISPID_SRRAudioFormat)]
|
|
|
|
HRESULT AudioFormat([out,retval] ISpeechAudioFormat **format);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRRPhraseInfo)]
|
|
|
|
HRESULT PhraseInfo([out,retval] ISpeechPhraseInfo **phrase);
|
|
|
|
|
|
|
|
[id(DISPID_SRRAlternates)]
|
|
|
|
HRESULT Alternates( [in] long count, [in, defaultvalue(0)] long start,
|
|
|
|
[in, defaultvalue(SPPR_ALL_ELEMENTS)] long elements,
|
|
|
|
[out,retval] ISpeechPhraseAlternates **alternates);
|
|
|
|
|
|
|
|
[id(DISPID_SRRAudio)]
|
|
|
|
HRESULT Audio([in, defaultvalue(0)] long start,
|
|
|
|
[in, defaultvalue(SPPR_ALL_ELEMENTS)] long elements,
|
|
|
|
[out,retval] ISpeechMemoryStream **stream);
|
|
|
|
|
|
|
|
[id(DISPID_SRRSpeakAudio)]
|
|
|
|
HRESULT SpeakAudio([in, defaultvalue(0)] long start,
|
|
|
|
[in, defaultvalue(SPPR_ALL_ELEMENTS)] long elements,
|
|
|
|
[in, defaultvalue(SPF_DEFAULT)] SpeechVoiceSpeakFlags flags,
|
|
|
|
[out,retval] long *stream);
|
|
|
|
|
|
|
|
[id(DISPID_SRRSaveToMemory)]
|
|
|
|
HRESULT SaveToMemory([out,retval] VARIANT *block);
|
|
|
|
|
|
|
|
[id(DISPID_SRRDiscardResultInfo)]
|
|
|
|
HRESULT DiscardResultInfo([in] SpeechDiscardType types);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechGrammarRule
|
|
|
|
{
|
|
|
|
DISPID_SGRAttributes = 1,
|
|
|
|
DISPID_SGRInitialState,
|
|
|
|
DISPID_SGRName,
|
|
|
|
DISPID_SGRId,
|
|
|
|
DISPID_SGRClear,
|
|
|
|
DISPID_SGRAddResource,
|
|
|
|
DISPID_SGRAddState
|
|
|
|
} DISPID_SpeechGrammarRule;
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechGrammarRuleStateTransitions
|
|
|
|
{
|
|
|
|
DISPID_SGRSTsCount = 1,
|
|
|
|
DISPID_SGRSTsItem = DISPID_VALUE,
|
|
|
|
DISPID_SGRSTs_NewEnum = DISPID_NEWENUM
|
|
|
|
} DISPID_SpeechGrammarRuleStateTransitions;
|
|
|
|
|
|
|
|
typedef enum SpeechGrammarRuleStateTransitionType
|
|
|
|
{
|
|
|
|
SGRSTTEpsilon = 0,
|
|
|
|
SGRSTTWord,
|
|
|
|
SGRSTTRule,
|
|
|
|
SGRSTTDictation,
|
|
|
|
SGRSTTWildcard,
|
|
|
|
SGRSTTTextBuffer
|
|
|
|
} SpeechGrammarRuleStateTransitionType;
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechGrammarRuleStateTransition
|
|
|
|
{
|
|
|
|
DISPID_SGRSTType = 1,
|
|
|
|
DISPID_SGRSTText,
|
|
|
|
DISPID_SGRSTRule,
|
|
|
|
DISPID_SGRSTWeight,
|
|
|
|
DISPID_SGRSTPropertyName,
|
|
|
|
DISPID_SGRSTPropertyId,
|
|
|
|
DISPID_SGRSTPropertyValue,
|
|
|
|
DISPID_SGRSTNextState
|
|
|
|
} DISPID_SpeechGrammarRuleStateTransition;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(cafd1db1-41d1-4a06-9863-e2e81da17a9a),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechGrammarRuleStateTransition : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SGRSTType)]
|
|
|
|
HRESULT Type([out, retval] SpeechGrammarRuleStateTransitionType *type);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SGRSTText)]
|
|
|
|
HRESULT Text([out, retval] BSTR *text);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SGRSTRule)]
|
|
|
|
HRESULT Rule([out, retval] ISpeechGrammarRule **rule);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SGRSTWeight)]
|
|
|
|
HRESULT Weight([out, retval] VARIANT *weight);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SGRSTPropertyName)]
|
|
|
|
HRESULT PropertyName([out, retval] BSTR *name);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SGRSTPropertyId)]
|
|
|
|
HRESULT PropertyId([out, retval] long *id);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SGRSTPropertyValue)]
|
|
|
|
HRESULT PropertyValue([out, retval] VARIANT *value);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SGRSTNextState)]
|
|
|
|
HRESULT NextState([out, retval] ISpeechGrammarRuleState **state);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(EABCE657-75BC-44a2-AA7F-C56476742963),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechGrammarRuleStateTransitions : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SGRSTsCount)]
|
|
|
|
HRESULT Count([out, retval] long *count);
|
|
|
|
|
|
|
|
[id(DISPID_SGRSTsItem)]
|
|
|
|
HRESULT Item([in] long index, [out, retval] ISpeechGrammarRuleStateTransition **transition);
|
|
|
|
|
|
|
|
[propget, restricted, id(DISPID_SGRSTs_NewEnum)]
|
|
|
|
HRESULT _NewEnum([out, retval] IUnknown **enum_var);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechGrammarRuleState
|
|
|
|
{
|
|
|
|
DISPID_SGRSRule = 1,
|
|
|
|
DISPID_SGRSTransitions,
|
|
|
|
DISPID_SGRSAddWordTransition,
|
|
|
|
DISPID_SGRSAddRuleTransition,
|
|
|
|
DISPID_SGRSAddSpecialTransition
|
|
|
|
} DISPID_SpeechGrammarRuleState;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(d4286f2c-ee67-45ae-b928-28d695362eda),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechGrammarRuleState : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SGRSRule)]
|
|
|
|
HRESULT Rule([out, retval] ISpeechGrammarRule **rule);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SGRSTransitions)]
|
|
|
|
HRESULT Transitions([out, retval] ISpeechGrammarRuleStateTransitions **transitions);
|
|
|
|
|
|
|
|
[id(DISPID_SGRSAddWordTransition)]
|
|
|
|
HRESULT AddWordTransition([in] ISpeechGrammarRuleState *state, [in] const BSTR Words,
|
|
|
|
[in, defaultvalue(" ")] const BSTR separators, [in, defaultvalue(SGLexical)] SpeechGrammarWordType type,
|
|
|
|
[in, defaultvalue("")] const BSTR name, [in, defaultvalue(0)] long id,
|
|
|
|
[in, defaultvalue(0)] VARIANT *value, [in, defaultvalue(1)] float weight);
|
|
|
|
|
|
|
|
[id(DISPID_SGRSAddRuleTransition)]
|
|
|
|
HRESULT AddRuleTransition([in] ISpeechGrammarRuleState *state, [in] ISpeechGrammarRule *rule,
|
|
|
|
[in, defaultvalue("")] const BSTR name, [in, defaultvalue(0)] long id,
|
|
|
|
[in, defaultvalue(0)] VARIANT *value, [in, defaultvalue(1)] float weight);
|
|
|
|
|
|
|
|
[id(DISPID_SGRSAddSpecialTransition)]
|
|
|
|
HRESULT AddSpecialTransition([in] ISpeechGrammarRuleState *state, [in] SpeechSpecialTransitionType type,
|
|
|
|
[in, defaultvalue("")] const BSTR name, [in, defaultvalue(0)] long id,
|
|
|
|
[in, defaultvalue(0)] VARIANT* value, [in, defaultvalue(1)] float weight);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(afe719cf-5dd1-44f2-999c-7a399f1cfccc),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechGrammarRule : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SGRAttributes)]
|
|
|
|
HRESULT Attributes([out, retval] SpeechRuleAttributes *attributes);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SGRInitialState)]
|
|
|
|
HRESULT InitialState([out, retval] ISpeechGrammarRuleState **state);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SGRName)]
|
|
|
|
HRESULT Name([out, retval] BSTR *name);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SGRId)]
|
|
|
|
HRESULT Id([out, retval] long *id);
|
|
|
|
|
|
|
|
[id(DISPID_SGRClear)]
|
|
|
|
HRESULT Clear();
|
|
|
|
|
|
|
|
[id(DISPID_SGRAddResource)]
|
|
|
|
HRESULT AddResource([in] const BSTR name, [in] const BSTR value);
|
|
|
|
|
|
|
|
[id(DISPID_SGRAddState)]
|
|
|
|
HRESULT AddState([out, retval] ISpeechGrammarRuleState **state);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPIDSPTSI
|
|
|
|
{
|
|
|
|
DISPIDSPTSI_ActiveOffset = 1,
|
|
|
|
DISPIDSPTSI_ActiveLength,
|
|
|
|
DISPIDSPTSI_SelectionOffset,
|
|
|
|
DISPIDSPTSI_SelectionLength
|
|
|
|
} DISPIDSPTSI;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(3b9c7e7a-6eee-4ded-9092-11657279adbe),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechTextSelectionInformation : IDispatch
|
|
|
|
{
|
|
|
|
[propput, id(DISPIDSPTSI_ActiveOffset)]
|
|
|
|
HRESULT ActiveOffset([in] long offset);
|
|
|
|
[propget, id(DISPIDSPTSI_ActiveOffset)]
|
|
|
|
HRESULT ActiveOffset([out, retval] long *offset);
|
|
|
|
|
|
|
|
[propput, id(DISPIDSPTSI_ActiveLength)]
|
|
|
|
HRESULT ActiveLength([in] long length);
|
|
|
|
[propget, id(DISPIDSPTSI_ActiveLength)]
|
|
|
|
HRESULT ActiveLength([out, retval] long *length);
|
|
|
|
|
|
|
|
[propput, id(DISPIDSPTSI_SelectionOffset)]
|
|
|
|
HRESULT SelectionOffset([in] long offset);
|
|
|
|
[propget, id(DISPIDSPTSI_SelectionOffset)]
|
|
|
|
HRESULT SelectionOffset([out, retval] long *offset);
|
|
|
|
|
|
|
|
[propput, id(DISPIDSPTSI_SelectionLength)]
|
|
|
|
HRESULT SelectionLength([in] long length);
|
|
|
|
[propget, id(DISPIDSPTSI_SelectionLength)]
|
|
|
|
HRESULT SelectionLength([out, retval] long* length);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechGrammarRules
|
|
|
|
{
|
|
|
|
DISPID_SGRsCount = 1,
|
|
|
|
DISPID_SGRsDynamic,
|
|
|
|
DISPID_SGRsAdd,
|
|
|
|
DISPID_SGRsCommit,
|
|
|
|
DISPID_SGRsCommitAndSave,
|
|
|
|
DISPID_SGRsFindRule,
|
|
|
|
DISPID_SGRsItem = DISPID_VALUE,
|
|
|
|
DISPID_SGRs_NewEnum = DISPID_NEWENUM
|
|
|
|
} DISPID_SpeechGrammarRules;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(6ffa3b44-fc2d-40d1-8afc-32911c7f1ad1),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechGrammarRules : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SGRsCount)]
|
|
|
|
HRESULT Count([out, retval] long *count);
|
|
|
|
|
|
|
|
[id(DISPID_SGRsFindRule)]
|
|
|
|
HRESULT FindRule([in] VARIANT id, [out, retval] ISpeechGrammarRule **rule);
|
|
|
|
|
|
|
|
[id(DISPID_SGRsItem)]
|
|
|
|
HRESULT Item([in] long index, [out, retval] ISpeechGrammarRule **rule);
|
|
|
|
|
|
|
|
[id(DISPID_SGRs_NewEnum), propget, restricted]
|
|
|
|
HRESULT _NewEnum([out, retval] IUnknown **enum_var);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SGRsDynamic)]
|
|
|
|
HRESULT Dynamic([out, retval] VARIANT_BOOL *dynamic);
|
|
|
|
|
|
|
|
[id(DISPID_SGRsAdd)]
|
|
|
|
HRESULT Add([in] BSTR name, [in] SpeechRuleAttributes attributes,
|
|
|
|
[in, defaultvalue(0)] long id, [out, retval] ISpeechGrammarRule **rule);
|
|
|
|
|
|
|
|
[id(DISPID_SGRsCommit)]
|
|
|
|
HRESULT Commit(void);
|
|
|
|
|
|
|
|
[id(DISPID_SGRsCommitAndSave)]
|
|
|
|
HRESULT CommitAndSave([out] BSTR *text, [out, retval] VARIANT *stream);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(b6d6f79f-2158-4e50-b5bc-9a9ccd852a09),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechRecoGrammar : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SRGId)]
|
|
|
|
HRESULT Id([out, retval] VARIANT *id);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRGRecoContext)]
|
|
|
|
HRESULT RecoContext([out, retval] ISpeechRecoContext **context);
|
|
|
|
|
|
|
|
[propput, id(DISPID_SRGState)]
|
|
|
|
HRESULT State([in] SpeechGrammarState state);
|
|
|
|
[propget, id(DISPID_SRGState)]
|
|
|
|
HRESULT State([out, retval] SpeechGrammarState *state);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRGRules)]
|
|
|
|
HRESULT Rules([out, retval] ISpeechGrammarRules **rules);
|
|
|
|
|
|
|
|
[id(DISPID_SRGReset)]
|
|
|
|
HRESULT Reset([in, defaultvalue(0)] SpeechLanguageId language);
|
|
|
|
|
|
|
|
[id(DISPID_SRGCmdLoadFromFile)]
|
|
|
|
HRESULT CmdLoadFromFile([in] const BSTR filename, [in, defaultvalue(SLOStatic)] SpeechLoadOption option);
|
|
|
|
|
|
|
|
[id(DISPID_SRGCmdLoadFromObject)]
|
|
|
|
HRESULT CmdLoadFromObject([in]const BSTR classid, [in] const BSTR grammarname, [in, defaultvalue(SLOStatic)] SpeechLoadOption option);
|
|
|
|
|
|
|
|
[id(DISPID_SRGCmdLoadFromResource)]
|
2019-12-02 12:59:44 +00:00
|
|
|
HRESULT CmdLoadFromResource([in]long mod, [in] VARIANT name, [in] VARIANT type, [in] SpeechLanguageId language,
|
2019-10-16 23:37:19 +00:00
|
|
|
[in, defaultvalue(SLOStatic)] SpeechLoadOption option);
|
|
|
|
|
|
|
|
[id(DISPID_SRGCmdLoadFromMemory)]
|
|
|
|
HRESULT CmdLoadFromMemory([in] VARIANT data, [in, defaultvalue(SLOStatic)] SpeechLoadOption option);
|
|
|
|
|
|
|
|
[id(DISPID_SRGCmdLoadFromProprietaryGrammar)]
|
|
|
|
HRESULT CmdLoadFromProprietaryGrammar([in] const BSTR guid, [in] const BSTR string, [in] VARIANT data,
|
|
|
|
[in, defaultvalue(SLOStatic)] SpeechLoadOption option);
|
|
|
|
|
|
|
|
[id(DISPID_SRGCmdSetRuleState)]
|
|
|
|
HRESULT CmdSetRuleState([in] const BSTR name, [in] SpeechRuleState state);
|
|
|
|
|
|
|
|
[id(DISPID_SRGCmdSetRuleIdState)]
|
|
|
|
HRESULT CmdSetRuleIdState([in] long rule, [in] SpeechRuleState State);
|
|
|
|
|
|
|
|
[id(DISPID_SRGDictationLoad)]
|
|
|
|
HRESULT DictationLoad([in, defaultvalue("")] const BSTR topic, [in, defaultvalue(SLOStatic)] SpeechLoadOption option);
|
|
|
|
|
|
|
|
[id(DISPID_SRGDictationUnload)]
|
|
|
|
HRESULT DictationUnload(void);
|
|
|
|
|
|
|
|
[id(DISPID_SRGDictationSetState)]
|
|
|
|
HRESULT DictationSetState([in] SpeechRuleState State);
|
|
|
|
|
|
|
|
[id(DISPID_SRGSetWordSequenceData)]
|
|
|
|
HRESULT SetWordSequenceData([in] const BSTR text, [in] long length, [in] ISpeechTextSelectionInformation *info);
|
|
|
|
|
|
|
|
[id(DISPID_SRGSetTextSelection)]
|
|
|
|
HRESULT SetTextSelection([in] ISpeechTextSelectionInformation *info);
|
|
|
|
|
|
|
|
[id(DISPID_SRGIsPronounceable)]
|
|
|
|
HRESULT IsPronounceable([in] const BSTR word, [out, retval] SpeechWordPronounceable *pronounceable);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(580aa49d-7e1e-4809-b8e2-57da806104b8),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechRecoContext : IDispatch
|
|
|
|
{
|
|
|
|
[propget, id(DISPID_SRCRecognizer)]
|
|
|
|
HRESULT Recognizer([out,retval] ISpeechRecognizer **recognizer);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRCAudioInInterferenceStatus)]
|
|
|
|
HRESULT AudioInputInterferenceStatus([out,retval] SpeechInterference *interference);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRCRequestedUIType)]
|
|
|
|
HRESULT RequestedUIType([out,retval] BSTR *type );
|
|
|
|
|
|
|
|
[propputref, id(DISPID_SRCVoice)]
|
|
|
|
HRESULT Voice([in] ISpeechVoice *voice);
|
|
|
|
[propget, id(DISPID_SRCVoice)]
|
|
|
|
HRESULT Voice([out,retval] ISpeechVoice **voice);
|
|
|
|
|
|
|
|
[propput, hidden, id(DISPID_SRAllowVoiceFormatMatchingOnNextSet)]
|
|
|
|
HRESULT AllowVoiceFormatMatchingOnNextSet([in] VARIANT_BOOL allow);
|
|
|
|
[propget, hidden, id(DISPID_SRAllowVoiceFormatMatchingOnNextSet)]
|
|
|
|
HRESULT AllowVoiceFormatMatchingOnNextSet([out,retval] VARIANT_BOOL *allow);
|
|
|
|
|
|
|
|
[propput, id(DISPID_SRCVoicePurgeEvent)]
|
|
|
|
HRESULT VoicePurgeEvent([in] SpeechRecoEvents interest);
|
|
|
|
[propget, id(DISPID_SRCVoicePurgeEvent)]
|
|
|
|
HRESULT VoicePurgeEvent([out,retval] SpeechRecoEvents *interest);
|
|
|
|
|
|
|
|
[propput, id(DISPID_SRCEventInterests)]
|
|
|
|
HRESULT EventInterests([in] SpeechRecoEvents interest);
|
|
|
|
[propget, id(DISPID_SRCEventInterests)]
|
|
|
|
HRESULT EventInterests([out,retval] SpeechRecoEvents *interest);
|
|
|
|
|
|
|
|
[propput, id(DISPID_SRCCmdMaxAlternates)]
|
|
|
|
HRESULT CmdMaxAlternates([in] long alternates);
|
|
|
|
[propget, id(DISPID_SRCCmdMaxAlternates)]
|
|
|
|
HRESULT CmdMaxAlternates([out,retval] long *alternates);
|
|
|
|
|
|
|
|
[propput, id(DISPID_SRCState)]
|
|
|
|
HRESULT State([in] SpeechRecoContextState state);
|
|
|
|
[propget, id(DISPID_SRCState)]
|
|
|
|
HRESULT State([out,retval] SpeechRecoContextState *state);
|
|
|
|
|
|
|
|
[propput, id(DISPID_SRCRetainedAudio)]
|
|
|
|
HRESULT RetainedAudio([in] SpeechRetainedAudioOptions option);
|
|
|
|
[propget, id(DISPID_SRCRetainedAudio)]
|
|
|
|
HRESULT RetainedAudio([out,retval] SpeechRetainedAudioOptions *option);
|
|
|
|
|
|
|
|
[propputref, id(DISPID_SRCRetainedAudioFormat)]
|
|
|
|
HRESULT RetainedAudioFormat([in] ISpeechAudioFormat *format);
|
|
|
|
[propget, id(DISPID_SRCRetainedAudioFormat)]
|
|
|
|
HRESULT RetainedAudioFormat([out,retval] ISpeechAudioFormat **format);
|
|
|
|
|
|
|
|
[id(DISPID_SRCPause)]
|
|
|
|
HRESULT Pause(void);
|
|
|
|
|
|
|
|
[id(DISPID_SRCResume)]
|
|
|
|
HRESULT Resume(void);
|
|
|
|
|
|
|
|
[id(DISPID_SRCCreateGrammar)]
|
|
|
|
HRESULT CreateGrammar([in, defaultvalue(0)] VARIANT id, [out,retval] ISpeechRecoGrammar **grammar);
|
|
|
|
|
|
|
|
[id(DISPID_SRCCreateResultFromMemory)]
|
|
|
|
HRESULT CreateResultFromMemory([in] VARIANT *block, [out,retval] ISpeechRecoResult **result);
|
|
|
|
|
|
|
|
[id(DISPID_SRCBookmark)]
|
|
|
|
HRESULT Bookmark([in] SpeechBookmarkOptions options, [in] VARIANT pos, [in] VARIANT bookmark);
|
|
|
|
|
|
|
|
[id(DISPID_SRCSetAdaptationData)]
|
|
|
|
HRESULT SetAdaptationData([in] BSTR adaptation);
|
|
|
|
}
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechRecognizer
|
|
|
|
{
|
|
|
|
DISPID_SRRecognizer = 1,
|
|
|
|
DISPID_SRAllowAudioInputFormatChangesOnNextSet,
|
|
|
|
DISPID_SRAudioInput,
|
|
|
|
DISPID_SRAudioInputStream,
|
|
|
|
DISPID_SRIsShared,
|
|
|
|
DISPID_SRState,
|
|
|
|
DISPID_SRStatus,
|
|
|
|
DISPID_SRProfile,
|
|
|
|
DISPID_SREmulateRecognition,
|
|
|
|
DISPID_SRCreateRecoContext,
|
|
|
|
DISPID_SRGetFormat,
|
|
|
|
DISPID_SRSetPropertyNumber,
|
|
|
|
DISPID_SRGetPropertyNumber,
|
|
|
|
DISPID_SRSetPropertyString,
|
|
|
|
DISPID_SRGetPropertyString,
|
|
|
|
DISPID_SRIsUISupported,
|
|
|
|
DISPID_SRDisplayUI,
|
|
|
|
DISPID_SRGetRecognizers,
|
|
|
|
DISPID_SVGetAudioInputs,
|
|
|
|
DISPID_SVGetProfiles
|
|
|
|
} DISPID_SpeechRecognizer;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(2d5f1c0c-bd75-4b08-9478-3b11fea2586c),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechRecognizer : IDispatch
|
|
|
|
{
|
|
|
|
[propputref, id(DISPID_SRRecognizer)]
|
|
|
|
HRESULT Recognizer([in]ISpeechObjectToken *recognizer);
|
|
|
|
[propget, id(DISPID_SRRecognizer)]
|
|
|
|
HRESULT Recognizer([out,retval]ISpeechObjectToken **recognizer);
|
|
|
|
|
|
|
|
[propput, hidden, id(DISPID_SRAllowAudioInputFormatChangesOnNextSet)]
|
|
|
|
HRESULT AllowAudioInputFormatChangesOnNextSet([in] VARIANT_BOOL allow);
|
|
|
|
[propget, hidden, id(DISPID_SRAllowAudioInputFormatChangesOnNextSet)]
|
|
|
|
HRESULT AllowAudioInputFormatChangesOnNextSet([out,retval] VARIANT_BOOL *allow);
|
|
|
|
|
|
|
|
[propputref, id(DISPID_SRAudioInput)]
|
|
|
|
HRESULT AudioInput([in,defaultvalue(0)] ISpeechObjectToken *input);
|
|
|
|
[propget, id(DISPID_SRAudioInput)]
|
|
|
|
HRESULT AudioInput([out,retval] ISpeechObjectToken **input);
|
|
|
|
|
|
|
|
[propputref, id(DISPID_SRAudioInputStream)]
|
|
|
|
HRESULT AudioInputStream([in,defaultvalue(0)] ISpeechBaseStream *input);
|
|
|
|
[propget, id(DISPID_SRAudioInputStream)]
|
|
|
|
HRESULT AudioInputStream([out,retval] ISpeechBaseStream **input);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRIsShared)]
|
|
|
|
HRESULT IsShared([out,retval] VARIANT_BOOL *shared);
|
|
|
|
|
|
|
|
[propput, id(DISPID_SRState)]
|
|
|
|
HRESULT State([in] SpeechRecognizerState state);
|
|
|
|
[propget, id(DISPID_SRState)]
|
|
|
|
HRESULT State([out,retval] SpeechRecognizerState *state);
|
|
|
|
|
|
|
|
[propget, id(DISPID_SRStatus)]
|
2019-11-27 14:26:33 +00:00
|
|
|
HRESULT Status([out,retval] ISpeechRecognizerStatus **status);
|
2019-10-16 23:37:19 +00:00
|
|
|
|
|
|
|
[propputref, id(DISPID_SRProfile)]
|
|
|
|
HRESULT Profile([in,defaultvalue(0)] ISpeechObjectToken *profile);
|
|
|
|
[propget, id(DISPID_SRProfile)]
|
|
|
|
HRESULT Profile([out,retval] ISpeechObjectToken **profile);
|
|
|
|
|
|
|
|
[id(DISPID_SREmulateRecognition)]
|
|
|
|
HRESULT EmulateRecognition([in] VARIANT elements, [in, defaultvalue(NULL)] VARIANT *attributes,
|
|
|
|
[in, defaultvalue(0)] long id);
|
|
|
|
|
|
|
|
[id(DISPID_SRCreateRecoContext)]
|
|
|
|
HRESULT CreateRecoContext([out,retval] ISpeechRecoContext **ncontext);
|
|
|
|
|
|
|
|
[id(DISPID_SRGetFormat)]
|
|
|
|
HRESULT GetFormat([in] SpeechFormatType speechtype, [out,retval] ISpeechAudioFormat **audioformat);
|
|
|
|
|
|
|
|
[hidden, id(DISPID_SRSetPropertyNumber)]
|
|
|
|
HRESULT SetPropertyNumber([in] const BSTR name, [in] long value, [out,retval] VARIANT_BOOL *supported);
|
|
|
|
|
|
|
|
[hidden, id(DISPID_SRGetPropertyNumber)]
|
|
|
|
HRESULT GetPropertyNumber([in] const BSTR name, [in,out] long *value, [out,retval] VARIANT_BOOL *supported);
|
|
|
|
|
|
|
|
[hidden, id(DISPID_SRSetPropertyString)]
|
|
|
|
HRESULT SetPropertyString([in] const BSTR name, [in] const BSTR value, [out,retval] VARIANT_BOOL *supported);
|
|
|
|
|
|
|
|
[hidden, id(DISPID_SRGetPropertyString)]
|
|
|
|
HRESULT GetPropertyString([in] const BSTR name, [in,out] BSTR *value, [out,retval] VARIANT_BOOL *supported);
|
|
|
|
|
|
|
|
[id(DISPID_SRIsUISupported)]
|
|
|
|
HRESULT IsUISupported([in] const BSTR type, [in, defaultvalue(NULL)] const VARIANT *data,
|
|
|
|
[out,retval] VARIANT_BOOL *supported);
|
|
|
|
|
|
|
|
[id(DISPID_SRDisplayUI)]
|
|
|
|
HRESULT DisplayUI( [in] long hWnd, [in] BSTR title, [in] const BSTR type, [in, defaultvalue(NULL)] const VARIANT *data);
|
|
|
|
|
|
|
|
[id(DISPID_SRGetRecognizers)]
|
|
|
|
HRESULT GetRecognizers([in, defaultvalue("")] BSTR required, [in, defaultvalue("")] BSTR optional,
|
|
|
|
[out,retval] ISpeechObjectTokens **tokens);
|
|
|
|
|
|
|
|
[id(DISPID_SVGetAudioInputs)]
|
|
|
|
HRESULT GetAudioInputs([in, defaultvalue("")] BSTR required, [in, defaultvalue("")] BSTR optional,
|
|
|
|
[out,retval] ISpeechObjectTokens **tokens);
|
|
|
|
|
|
|
|
[id(DISPID_SVGetProfiles)]
|
|
|
|
HRESULT GetProfiles([in, defaultvalue("")] BSTR required, [in, defaultvalue("")] BSTR optional,
|
|
|
|
[out,retval] ISpeechObjectTokens **tokens);
|
|
|
|
|
|
|
|
}
|
2019-11-18 02:18:40 +00:00
|
|
|
|
|
|
|
typedef enum SpeechStreamFileMode
|
|
|
|
{
|
|
|
|
SSFMOpenForRead = SPFM_OPEN_READONLY,
|
|
|
|
SSFMOpenReadWrite = SPFM_OPEN_READWRITE,
|
|
|
|
SSFMCreate = SPFM_CREATE,
|
|
|
|
SSFMCreateForWrite = SPFM_CREATE_ALWAYS,
|
|
|
|
} SpeechStreamFileMode;
|
|
|
|
|
|
|
|
typedef [hidden] enum DISPID_SpeechFileStream
|
|
|
|
{
|
|
|
|
DISPID_SFSOpen = 100,
|
|
|
|
DISPID_SFSClose
|
|
|
|
} DISPID_SpeechFileStream;
|
|
|
|
|
|
|
|
[
|
|
|
|
object,
|
|
|
|
uuid(af67f125-ab39-4e93-b4a2-cc2e66e182a7),
|
|
|
|
dual,
|
|
|
|
pointer_default(unique)
|
|
|
|
]
|
|
|
|
interface ISpeechFileStream : ISpeechBaseStream
|
|
|
|
{
|
|
|
|
[id(DISPID_SFSOpen)]
|
|
|
|
HRESULT Open([in] BSTR filename, [in, defaultvalue(SSFMOpenForRead)] SpeechStreamFileMode mode,
|
|
|
|
[in, defaultvalue(0)] VARIANT_BOOL events);
|
|
|
|
[id(DISPID_SFSClose)]
|
|
|
|
HRESULT Close(void);
|
|
|
|
};
|