184 lines
6.0 KiB
C#
184 lines
6.0 KiB
C#
using System;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Runtime.InteropServices;
|
|
|
|
namespace SpeechLib {
|
|
[ComImport]
|
|
[Guid("269316D8-57BD-11D2-9EEE-00C04F797396")]
|
|
[TypeLibType(4160)]
|
|
public interface ISpeechVoice {
|
|
[DispId(1)]
|
|
ISpeechVoiceStatus Status {
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(1)]
|
|
[return: MarshalAs(UnmanagedType.Interface)]
|
|
get;
|
|
}
|
|
|
|
[DispId(2)]
|
|
SpObjectToken Voice {
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(2)]
|
|
[return: MarshalAs(UnmanagedType.Interface)]
|
|
get;
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(2)]
|
|
[param: In]
|
|
[param: MarshalAs(UnmanagedType.Interface)]
|
|
set;
|
|
}
|
|
|
|
[DispId(3)]
|
|
SpObjectToken AudioOutput {
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(3)]
|
|
[return: MarshalAs(UnmanagedType.Interface)]
|
|
get;
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(3)]
|
|
[param: In]
|
|
[param: MarshalAs(UnmanagedType.Interface)]
|
|
set;
|
|
}
|
|
|
|
[DispId(4)]
|
|
ISpeechBaseStream AudioOutputStream {
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(4)]
|
|
[return: MarshalAs(UnmanagedType.Interface)]
|
|
get;
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(4)]
|
|
[param: In]
|
|
[param: MarshalAs(UnmanagedType.Interface)]
|
|
set;
|
|
}
|
|
|
|
[DispId(5)]
|
|
int Rate {
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(5)]
|
|
get;
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(5)]
|
|
[param: In]
|
|
set;
|
|
}
|
|
|
|
[DispId(6)]
|
|
int Volume {
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(6)]
|
|
get;
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(6)]
|
|
[param: In]
|
|
set;
|
|
}
|
|
|
|
[DispId(7)]
|
|
bool AllowAudioOutputFormatChangesOnNextSet {
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[TypeLibFunc(64)]
|
|
[DispId(7)]
|
|
get;
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[TypeLibFunc(64)]
|
|
[DispId(7)]
|
|
[param: In]
|
|
set;
|
|
}
|
|
|
|
[DispId(8)]
|
|
SpeechVoiceEvents EventInterests {
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(8)]
|
|
get;
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(8)]
|
|
[param: In]
|
|
set;
|
|
}
|
|
|
|
[DispId(9)]
|
|
SpeechVoicePriority Priority {
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(9)]
|
|
get;
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(9)]
|
|
[param: In]
|
|
set;
|
|
}
|
|
|
|
[DispId(10)]
|
|
SpeechVoiceEvents AlertBoundary {
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(10)]
|
|
get;
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(10)]
|
|
[param: In]
|
|
set;
|
|
}
|
|
|
|
[DispId(11)]
|
|
int SynchronousSpeakTimeout {
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(11)]
|
|
get;
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(11)]
|
|
[param: In]
|
|
set;
|
|
}
|
|
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(12)]
|
|
int Speak([In][MarshalAs(UnmanagedType.BStr)] string Text, [In] SpeechVoiceSpeakFlags Flags = SpeechVoiceSpeakFlags.SVSFDefault);
|
|
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(13)]
|
|
int SpeakStream([In][MarshalAs(UnmanagedType.Interface)] ISpeechBaseStream Stream, [In] SpeechVoiceSpeakFlags Flags = SpeechVoiceSpeakFlags.SVSFDefault);
|
|
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(14)]
|
|
void Pause();
|
|
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(15)]
|
|
void Resume();
|
|
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(16)]
|
|
int Skip([In][MarshalAs(UnmanagedType.BStr)] string Type, [In] int NumItems);
|
|
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(17)]
|
|
[return: MarshalAs(UnmanagedType.Interface)]
|
|
ISpeechObjectTokens GetVoices([In][MarshalAs(UnmanagedType.BStr)] string RequiredAttributes = "", [In][MarshalAs(UnmanagedType.BStr)] string OptionalAttributes = "");
|
|
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(18)]
|
|
[return: MarshalAs(UnmanagedType.Interface)]
|
|
ISpeechObjectTokens GetAudioOutputs([In][MarshalAs(UnmanagedType.BStr)] string RequiredAttributes = "", [In][MarshalAs(UnmanagedType.BStr)] string OptionalAttributes = "");
|
|
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(19)]
|
|
bool WaitUntilDone([In] int msTimeout);
|
|
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[TypeLibFunc(64)]
|
|
[DispId(20)]
|
|
nint SpeakCompleteEvent();
|
|
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(21)]
|
|
bool IsUISupported([In][MarshalAs(UnmanagedType.BStr)] string TypeOfUI, [Optional][In][MarshalAs(UnmanagedType.Struct)] ref object ExtraData);
|
|
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(22)]
|
|
void DisplayUI([In] int hWndParent, [In][MarshalAs(UnmanagedType.BStr)] string Title, [In][MarshalAs(UnmanagedType.BStr)] string TypeOfUI, [Optional][In][MarshalAs(UnmanagedType.Struct)] ref object ExtraData);
|
|
}
|
|
}
|