internal static unsafe SoundWave Invoke(UObject WorldContextObject, EAudioRecordingExportType ExportType, string Name, string Path, SoundSubmix SubmixToRecord, SoundWave ExistingSoundWaveToOverwrite) { long *p = stackalloc long[] { 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L }; byte *b = (byte *)p; *((IntPtr *)(b + 0)) = WorldContextObject; *(b + 8) = (byte)ExportType; var Name_handle = GCHandle.Alloc(Name, GCHandleType.Pinned); *(IntPtr *)(b + 16) = Name_handle.AddrOfPinnedObject(); *(int *)(b + IntPtr.Size + 16) = Name.Length; *(int *)(b + IntPtr.Size + 4 + 16) = Name.Length; var Path_handle = GCHandle.Alloc(Path, GCHandleType.Pinned); *(IntPtr *)(b + 32) = Path_handle.AddrOfPinnedObject(); *(int *)(b + IntPtr.Size + 32) = Path.Length; *(int *)(b + IntPtr.Size + 4 + 32) = Path.Length; *((IntPtr *)(b + 48)) = SubmixToRecord; *((IntPtr *)(b + 56)) = ExistingSoundWaveToOverwrite; Main.GetProcessEvent(AudioMixerBlueprintLibrary.DefaultObject, StopRecordingOutput_ptr, new IntPtr(p));; Name_handle.Free(); Path_handle.Free(); return(*((IntPtr *)(b + 64))); } }
internal static unsafe void Invoke(IntPtr obj, SoundSubmix Submix, float SendLevel) { long *p = stackalloc long[] { 0L, 0L, 0L }; byte *b = (byte *)p; *((IntPtr *)(b + 0)) = Submix; *((float *)(b + 8)) = SendLevel; Main.GetProcessEvent(obj, SetSubmixSend_ptr, new IntPtr(p));; } }
internal static unsafe void Invoke(UObject WorldContextObject, SoundSubmix SubmixToPause) { long *p = stackalloc long[] { 0L, 0L, 0L }; byte *b = (byte *)p; *((IntPtr *)(b + 0)) = WorldContextObject; *((IntPtr *)(b + 8)) = SubmixToPause; Main.GetProcessEvent(AudioMixerBlueprintLibrary.DefaultObject, ResumeRecordingOutput_ptr, new IntPtr(p));; } }
internal static unsafe void Invoke(UObject WorldContextObject, float ExpectedDuration, SoundSubmix SubmixToRecord) { long *p = stackalloc long[] { 0L, 0L, 0L, 0L }; byte *b = (byte *)p; *((IntPtr *)(b + 0)) = WorldContextObject; *((float *)(b + 8)) = ExpectedDuration; *((IntPtr *)(b + 16)) = SubmixToRecord; Main.GetProcessEvent(AudioMixerBlueprintLibrary.DefaultObject, StartRecordingOutput_ptr, new IntPtr(p));; } }
///<summary>Sets how much audio the sound should send to the given submix.</summary> public void SetSubmixSend(SoundSubmix Submix, float SendLevel) => SynthComponent_methods.SetSubmixSend_method.Invoke(ObjPointer, Submix, SendLevel);
///<summary>Stop recording audio. Path can be absolute, or relative (to the /Saved/BouncedWavFiles folder). By leaving the Submix To Record field blank, you can record the master output of the game.</summary> public static SoundWave StopRecordingOutput(UObject WorldContextObject, EAudioRecordingExportType ExportType, string Name, string Path, SoundSubmix SubmixToRecord, SoundWave ExistingSoundWaveToOverwrite) => AudioMixerBlueprintLibrary_methods.StopRecordingOutput_method.Invoke(WorldContextObject, ExportType, Name, Path, SubmixToRecord, ExistingSoundWaveToOverwrite);
///<summary>Start recording audio. By leaving the Submix To Record field blank, you can record the master output of the game.</summary> public static void StartRecordingOutput(UObject WorldContextObject, float ExpectedDuration, SoundSubmix SubmixToRecord) => AudioMixerBlueprintLibrary_methods.StartRecordingOutput_method.Invoke(WorldContextObject, ExpectedDuration, SubmixToRecord);
///<summary>Resume recording audio after pausing. By leaving the Submix To Record field blank, you can record the master output of the game.</summary> public static void ResumeRecordingOutput(UObject WorldContextObject, SoundSubmix SubmixToPause) => AudioMixerBlueprintLibrary_methods.ResumeRecordingOutput_method.Invoke(WorldContextObject, SubmixToPause);