54 lines
1.6 KiB
C#
54 lines
1.6 KiB
C#
using System;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Runtime.InteropServices;
|
|
|
|
namespace SpeechLib {
|
|
[ComImport]
|
|
[CoClass(typeof(SpAudioFormatClass))]
|
|
[Guid("E6E9C590-3E18-40E3-8299-061F98BDE7C7")]
|
|
public interface SpAudioFormat : ISpeechAudioFormat { }
|
|
|
|
[ComImport]
|
|
[Guid("9EF96870-E160-4792-820D-48CF0649E4EC")]
|
|
[ClassInterface((ClassInterfaceType)0)]
|
|
[TypeLibType(2)]
|
|
public class SpAudioFormatClass : ISpeechAudioFormat, SpAudioFormat {
|
|
[DispId(1)]
|
|
public virtual extern SpeechAudioFormatType Type {
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(1)]
|
|
get;
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(1)]
|
|
[param: In]
|
|
set;
|
|
}
|
|
|
|
[DispId(2)]
|
|
public virtual extern string Guid {
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(2)]
|
|
[TypeLibFunc(64)]
|
|
[return: MarshalAs(UnmanagedType.BStr)]
|
|
get;
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[TypeLibFunc(64)]
|
|
[DispId(2)]
|
|
[param: In]
|
|
[param: MarshalAs(UnmanagedType.BStr)]
|
|
set;
|
|
}
|
|
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(3)]
|
|
[TypeLibFunc(64)]
|
|
[return: MarshalAs(UnmanagedType.Interface)]
|
|
public virtual extern SpWaveFormatEx GetWaveFormatEx();
|
|
|
|
[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
|
|
[DispId(4)]
|
|
[TypeLibFunc(64)]
|
|
public virtual extern void SetWaveFormatEx([In][MarshalAs(UnmanagedType.Interface)] SpWaveFormatEx SpeechWaveFormatEx);
|
|
}
|
|
}
|