mirror of
https://github.com/amerkoleci/Vortice.Win32.git
synced 2026-01-15 00:26:03 +08:00
Improve XAudio2 bindings and add X3DAudio support.
This commit is contained in:
@@ -137,12 +137,12 @@ public unsafe partial struct IXAudio2 : IXAudio2.Interface, INativeGuid
|
||||
/// <include file='../XAudio2.xml' path='doc/member[@name="IXAudio2::CreateMasteringVoice"]/*' />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(7)]
|
||||
public HResult CreateMasteringVoice(IXAudio2MasteringVoice** ppMasteringVoice, uint InputChannels, uint InputSampleRate, uint Flags, ushort* szDeviceId, EffectChain* pEffectChain, Media.Audio.AudioStreamCategory* StreamCategory)
|
||||
public HResult CreateMasteringVoice(IXAudio2MasteringVoice** ppMasteringVoice, uint InputChannels, uint InputSampleRate, uint Flags, ushort* szDeviceId, EffectChain* pEffectChain, Media.Audio.AudioStreamCategory StreamCategory)
|
||||
{
|
||||
#if NET6_0_OR_GREATER
|
||||
return ((delegate* unmanaged<IXAudio2*, IXAudio2MasteringVoice**, uint, uint, uint, ushort*, EffectChain*, Media.Audio.AudioStreamCategory*, int>)(lpVtbl[7]))((IXAudio2*)Unsafe.AsPointer(ref this), ppMasteringVoice, InputChannels, InputSampleRate, Flags, szDeviceId, pEffectChain, StreamCategory);
|
||||
return ((delegate* unmanaged<IXAudio2*, IXAudio2MasteringVoice**, uint, uint, uint, ushort*, EffectChain*, Media.Audio.AudioStreamCategory, int>)(lpVtbl[7]))((IXAudio2*)Unsafe.AsPointer(ref this), ppMasteringVoice, InputChannels, InputSampleRate, Flags, szDeviceId, pEffectChain, StreamCategory);
|
||||
#else
|
||||
return ((delegate* unmanaged[Stdcall]<IXAudio2*, IXAudio2MasteringVoice**, uint, uint, uint, ushort*, EffectChain*, Media.Audio.AudioStreamCategory*, int>)(lpVtbl[7]))((IXAudio2*)Unsafe.AsPointer(ref this), ppMasteringVoice, InputChannels, InputSampleRate, Flags, szDeviceId, pEffectChain, StreamCategory);
|
||||
return ((delegate* unmanaged[Stdcall]<IXAudio2*, IXAudio2MasteringVoice**, uint, uint, uint, ushort*, EffectChain*, Media.Audio.AudioStreamCategory, int>)(lpVtbl[7]))((IXAudio2*)Unsafe.AsPointer(ref this), ppMasteringVoice, InputChannels, InputSampleRate, Flags, szDeviceId, pEffectChain, StreamCategory);
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -197,7 +197,7 @@ public unsafe partial struct IXAudio2 : IXAudio2.Interface, INativeGuid
|
||||
/// <include file='../XAudio2.xml' path='doc/member[@name="IXAudio2::SetDebugConfiguration"]/*' />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(12)]
|
||||
public void SetDebugConfiguration(DebugConfiguration* pDebugConfiguration, void* pReserved)
|
||||
public void SetDebugConfiguration(DebugConfiguration* pDebugConfiguration, void* pReserved = null)
|
||||
{
|
||||
#if NET6_0_OR_GREATER
|
||||
((delegate* unmanaged<IXAudio2*, DebugConfiguration*, void*, void>)(lpVtbl[12]))((IXAudio2*)Unsafe.AsPointer(ref this), pDebugConfiguration, pReserved);
|
||||
@@ -221,7 +221,7 @@ public unsafe partial struct IXAudio2 : IXAudio2.Interface, INativeGuid
|
||||
HResult CreateSubmixVoice(IXAudio2SubmixVoice** ppSubmixVoice, uint InputChannels, uint InputSampleRate, uint Flags, uint ProcessingStage, VoiceSends* pSendList, EffectChain* pEffectChain);
|
||||
|
||||
[VtblIndex(7)]
|
||||
HResult CreateMasteringVoice(IXAudio2MasteringVoice** ppMasteringVoice, uint InputChannels, uint InputSampleRate, uint Flags, ushort* szDeviceId, EffectChain* pEffectChain, Media.Audio.AudioStreamCategory* StreamCategory);
|
||||
HResult CreateMasteringVoice(IXAudio2MasteringVoice** ppMasteringVoice, uint InputChannels, uint InputSampleRate, uint Flags, ushort* szDeviceId, EffectChain* pEffectChain, Media.Audio.AudioStreamCategory StreamCategory);
|
||||
|
||||
[VtblIndex(8)]
|
||||
HResult StartEngine();
|
||||
@@ -236,7 +236,7 @@ public unsafe partial struct IXAudio2 : IXAudio2.Interface, INativeGuid
|
||||
void GetPerformanceData(PerformanceData* pPerfData);
|
||||
|
||||
[VtblIndex(12)]
|
||||
void SetDebugConfiguration(DebugConfiguration* pDebugConfiguration, void* pReserved);
|
||||
void SetDebugConfiguration(DebugConfiguration* pDebugConfiguration, void* pReserved = null);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user