📄 speechlib_tlb.pas
字号:
ISpeechLexiconWords = interface;
ISpeechLexiconWordsDisp = dispinterface;
ISpeechLexiconWord = interface;
ISpeechLexiconWordDisp = dispinterface;
ISpeechLexiconPronunciations = interface;
ISpeechLexiconPronunciationsDisp = dispinterface;
ISpeechLexiconPronunciation = interface;
ISpeechLexiconPronunciationDisp = dispinterface;
ISpeechPhraseInfoBuilder = interface;
ISpeechPhraseInfoBuilderDisp = dispinterface;
ISpeechPhoneConverter = interface;
ISpeechPhoneConverterDisp = dispinterface;
ISpNotifySink = interface;
ISpNotifyTranslator = interface;
ISpDataKey = interface;
ISpObjectTokenCategory = interface;
IEnumSpObjectTokens = interface;
ISpObjectToken = interface;
IServiceProvider = interface;
ISpResourceManager = interface;
ISequentialStream = interface;
IStream = interface;
ISpStreamFormat = interface;
ISpStreamFormatConverter = interface;
ISpNotifySource = interface;
ISpEventSource = interface;
ISpEventSink = interface;
ISpObjectWithToken = interface;
ISpAudio = interface;
ISpMMSysAudio = interface;
ISpStream = interface;
ISpVoice = interface;
ISpRecoContext = interface;
ISpProperties = interface;
ISpRecognizer = interface;
ISpPhrase = interface;
ISpGrammarBuilder = interface;
ISpRecoGrammar = interface;
ISpRecoResult = interface;
ISpPhraseAlt = interface;
ISpLexicon = interface;
ISpPhoneConverter = interface;
// *********************************************************************//
// Declaration of CoClasses defined in Type Library
// (NOTE: Here we map each CoClass to its Default Interface)
// *********************************************************************//
SpNotifyTranslator = ISpNotifyTranslator;
SpObjectTokenCategory = ISpeechObjectTokenCategory;
SpObjectToken = ISpeechObjectToken;
SpResourceManager = ISpResourceManager;
SpStreamFormatConverter = ISpStreamFormatConverter;
SpMMAudioEnum = IEnumSpObjectTokens;
SpMMAudioIn = ISpeechMMSysAudio;
SpMMAudioOut = ISpeechMMSysAudio;
SpRecPlayAudio = ISpObjectWithToken;
SpStream = ISpStream;
SpVoice = ISpeechVoice;
SpSharedRecoContext = ISpeechRecoContext;
SpInprocRecognizer = ISpeechRecognizer;
SpSharedRecognizer = ISpeechRecognizer;
SpLexicon = ISpeechLexicon;
SpUnCompressedLexicon = ISpeechLexicon;
SpCompressedLexicon = ISpLexicon;
SpPhoneConverter = ISpeechPhoneConverter;
SpNullPhoneConverter = ISpPhoneConverter;
SpTextSelectionInformation = ISpeechTextSelectionInformation;
SpPhraseInfoBuilder = ISpeechPhraseInfoBuilder;
SpAudioFormat = ISpeechAudioFormat;
SpWaveFormatEx = ISpeechWaveFormatEx;
SpInProcRecoContext = ISpeechRecoContext;
SpCustomStream = ISpeechCustomStream;
SpFileStream = ISpeechFileStream;
SpMemoryStream = ISpeechMemoryStream;
// *********************************************************************//
// Declaration of structures, unions and aliases.
// *********************************************************************//
wireHWND = ^_RemotableHandle;
PUserType10 = ^SPPHRASERULE; {*}
PUserType11 = ^SPPHRASEPROPERTY; {*}
PUserType15 = ^SPWORDPRONUNCIATION; {*}
PUserType16 = ^SPWORD; {*}
POleVariant1 = ^OleVariant; {*}
PPPrivateAlias1 = ^Pointer; {*}
PWord1 = ^Word; {*}
PPUserType1 = ^ISpDataKey; {*}
PByte1 = ^Byte; {*}
PUINT1 = ^LongWord; {*}
PPWord1 = ^PWord1; {*}
PPUserType2 = ^ISpObjectTokenCategory; {*}
PUserType1 = ^TGUID; {*}
PUserType2 = ^WaveFormatEx; {*}
PPUserType3 = ^PUserType2; {*}
PUserType3 = ^SPEVENT; {*}
PPUserType4 = ^ISpObjectToken; {*}
PUserType4 = ^SPAUDIOBUFFERINFO; {*}
PPUserType5 = ^IStream; {*}
PUserType5 = ^SPAUDIOOPTIONS; {*}
PUserType6 = ^SPSERIALIZEDRESULT; {*}
PUserType7 = ^SPCONTEXTSTATE; {*}
PUserType8 = ^SPPHRASE; {*}
PUserType9 = ^SPSERIALIZEDPHRASE; {*}
PUserType12 = ^SPBINARYGRAMMAR; {*}
PUserType13 = ^SPTEXTSELECTIONINFO; {*}
PUserType14 = ^SPPROPERTYINFO; {*}
PPUserType6 = ^ISpPhrase; {*}
__MIDL_IWinTypes_0009 = record
case Integer of
0: (hInproc: Integer);
1: (hRemote: Integer);
end;
_RemotableHandle = packed record
fContext: Integer;
u: __MIDL_IWinTypes_0009;
end;
UINT_PTR = LongWord;
LONG_PTR = Integer;
_LARGE_INTEGER = packed record
QuadPart: Int64;
end;
_ULARGE_INTEGER = packed record
QuadPart: Largeuint;
end;
_FILETIME = packed record
dwLowDateTime: LongWord;
dwHighDateTime: LongWord;
end;
tagSTATSTG = packed record
pwcsName: PWideChar;
type_: LongWord;
cbSize: _ULARGE_INTEGER;
mtime: _FILETIME;
ctime: _FILETIME;
atime: _FILETIME;
grfMode: LongWord;
grfLocksSupported: LongWord;
clsid: TGUID;
grfStateBits: LongWord;
reserved: LongWord;
end;
WaveFormatEx = packed record
wFormatTag: Word;
nChannels: Word;
nSamplesPerSec: LongWord;
nAvgBytesPerSec: LongWord;
nBlockAlign: Word;
wBitsPerSample: Word;
cbSize: Word;
end;
SPEVENT = packed record
eEventId: Word;
elParamType: Word;
ulStreamNum: LongWord;
ullAudioStreamOffset: Largeuint;
wParam: UINT_PTR;
lParam: LONG_PTR;
end;
SPEVENTSOURCEINFO = packed record
ullEventInterest: Largeuint;
ullQueuedInterest: Largeuint;
ulCount: LongWord;
end;
SPAUDIOSTATE = _SPAUDIOSTATE;
SPAUDIOSTATUS = packed record
cbFreeBuffSpace: Integer;
cbNonBlockingIO: LongWord;
State: _SPAUDIOSTATE;
CurSeekPos: Largeuint;
CurDevicePos: Largeuint;
dwReserved1: LongWord;
dwReserved2: LongWord;
end;
SPAUDIOBUFFERINFO = packed record
ulMsMinNotification: LongWord;
ulMsBufferSize: LongWord;
ulMsEventBias: LongWord;
end;
SPVOICESTATUS = packed record
ulCurrentStream: LongWord;
ulLastStreamQueued: LongWord;
hrLastResult: HResult;
dwRunningState: LongWord;
ulInputWordPos: LongWord;
ulInputWordLen: LongWord;
ulInputSentPos: LongWord;
ulInputSentLen: LongWord;
lBookmarkId: Integer;
PhonemeId: Word;
VisemeId: SPVISEMES;
dwReserved1: LongWord;
dwReserved2: LongWord;
end;
SPRECOGNIZERSTATUS = packed record
AudioStatus: SPAUDIOSTATUS;
ullRecognitionStreamPos: Largeuint;
ulStreamNumber: LongWord;
ulNumActive: LongWord;
ClsidEngine: TGUID;
cLangIDs: LongWord;
aLangID: array[0..19] of Word;
dwReserved1: LongWord;
dwReserved2: LongWord;
end;
SPSTREAMFORMATTYPE = SPWAVEFORMATTYPE;
SPPHRASERULE = packed record
pszName: ^Word;
ulId: LongWord;
ulFirstElement: LongWord;
ulCountOfElements: LongWord;
pNextSibling: PUserType10;
pFirstChild: PUserType10;
SREngineConfidence: Single;
Confidence: Shortint;
end;
SPPHRASEELEMENT = packed record
ulAudioTimeOffset: LongWord;
ulAudioSizeTime: LongWord;
ulAudioStreamOffset: LongWord;
ulAudioSizeBytes: LongWord;
ulRetainedStreamOffset: LongWord;
ulRetainedSizeBytes: LongWord;
pszDisplayText: ^Word;
pszLexicalForm: ^Word;
pszPronunciation: ^Word;
bDisplayAttributes: Byte;
RequiredConfidence: Shortint;
ActualConfidence: Shortint;
reserved: Byte;
SREngineConfidence: Single;
end;
SPPHRASEREPLACEMENT = packed record
bDisplayAttributes: Byte;
pszReplacementText: ^Word;
ulFirstElement: LongWord;
ulCountOfElements: LongWord;
end;
SPSERIALIZEDPHRASE = packed record
ulSerializedSize: LongWord;
end;
tagSPPROPERTYINFO = packed record
pszName: ^Word;
ulId: LongWord;
pszValue: ^Word;
vValue: OleVariant;
end;
SPPROPERTYINFO = tagSPPROPERTYINFO;
SPBINARYGRAMMAR = packed record
ulTotalSerializedSize: LongWord;
end;
tagSPTEXTSELECTIONINFO = packed record
ulStartActiveOffset: LongWord;
cchActiveChars: LongWord;
ulStartSelection: LongWord;
cchSelection: LongWord;
end;
SPTEXTSELECTIONINFO = tagSPTEXTSELECTIONINFO;
SPRECOCONTEXTSTATUS = packed record
eInterference: SPINTERFERENCE;
szRequestTypeOfUI: array[0..254] of Word;
dwReserved1: LongWord;
dwReserved2: LongWord;
end;
SPSERIALIZEDRESULT = packed record
ulSerializedSize: LongWord;
end;
SPRECORESULTTIMES = packed record
ftStreamTime: _FILETIME;
ullLength: Largeuint;
dwTickCount: LongWord;
ullStart: Largeuint;
end;
SPWORDPRONUNCIATION = packed record
pNextWordPronunciation: PUserType15;
eLexiconType: SPLEXICONTYPE;
LangId: Word;
wReserved: Word;
ePartOfSpeech: SPPARTOFSPEECH;
szPronunciation: array[0..0] of Word;
end;
SPWORD = packed record
pNextWord: PUserType16;
LangId: Word;
wReserved: Word;
eWordType: SPWORDTYPE;
pszWord: ^Word;
pFirstWordPronunciation: ^SPWORDPRONUNCIATION;
end;
SPPHRASEPROPERTY = packed record
pszName: ^Word;
ulId: LongWord;
pszValue: ^Word;
vValue: OleVariant;
ulFirstElement: LongWord;
ulCountOfElements: LongWord;
pNextSibling: PUserType11;
pFirstChild: PUserType11;
SREngineConfidence: Single;
Confidence: Shortint;
end;
SPPHRASE = packed record
cbSize: LongWord;
LangId: Word;
wReserved: Word;
ullGrammarID: Largeuint;
ftStartTime: Largeuint;
ullAudioStreamPosition: Largeuint;
ulAudioSizeBytes: LongWord;
ulRetainedSizeBytes: LongWord;
ulAudioSizeTime: LongWord;
Rule: SPPHRASERULE;
pProperties: ^SPPHRASEPROPERTY;
pElements: ^SPPHRASEELEMENT;
cReplacements: LongWord;
pReplacements: ^SPPHRASEREPLACEMENT;
SREngineID: TGUID;
ulSREnginePrivateDataSize: LongWord;
pSREnginePrivateData: ^Byte;
end;
SPWORDPRONUNCIATIONLIST = packed record
ulSize: LongWord;
pvBuffer: ^Byte;
pFirstWordPronunciation: ^SPWORDPRONUNCIATION;
end;
SPWORDLIST = packed record
ulSize: LongWord;
pvBuffer: ^Byte;
pFirstWord: ^SPWORD;
end;
// *********************************************************************//
// Interface: ISpeechDataKey
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {CE17C09B-4EFA-44D5-A4C9-59D9585AB0CD}
// *********************************************************************//
ISpeechDataKey = interface(IDispatch)
['{CE17C09B-4EFA-44D5-A4C9-59D9585AB0CD}']
procedure SetBinaryValue(const ValueName: WideString; Value: OleVariant); safecall;
function GetBinaryValue(const ValueName: WideString): OleVariant; safecall;
procedure SetStringValue(const ValueName: WideString; const Value: WideString); safecall;
function GetStringValue
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -