Root/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 | #region License /* FNA - XNA4 Reimplementation for Desktop Platforms * Copyright 2009-2016 Ethan Lee and the MonoGame Team * * Released under the Microsoft Public License. * See LICENSE for details. */ #endregion #region Using Statements using System; using System.Collections.Generic; using System.Collections.ObjectModel; #endregion namespace Microsoft.Xna.Framework.Audio { internal interface IALDevice { void Update(); void Dispose(); ReadOnlyCollection<RendererDetail> GetDevices(); ReadOnlyCollection<Microphone> GetCaptureDevices(); IALBuffer GenBuffer(); IALBuffer GenBuffer( byte [] data, uint sampleRate, uint channels, uint loopStart, uint loopEnd, bool isADPCM, uint formatParameter ); void DeleteBuffer(IALBuffer buffer); void SetBufferData( IALBuffer buffer, AudioChannels channels, byte [] data, int offset, int count, int sampleRate ); void SetBufferData( IALBuffer buffer, AudioChannels channels, float [] data, int offset, int count, int sampleRate ); IALSource GenSource(); IALSource GenSource(IALBuffer buffer); void StopAndDisposeSource(IALSource source); void PlaySource(IALSource source); void PauseSource(IALSource source); void ResumeSource(IALSource source); SoundState GetSourceState(IALSource source); void SetSourceVolume(IALSource source, float volume); void SetSourceLooped(IALSource source, bool looped); void SetSourcePan(IALSource source, float pan); void SetSourcePosition(IALSource source, Vector3 pos); void SetSourcePitch(IALSource source, float pitch, bool clamp); void SetSourceReverb(IALSource source, IALReverb reverb); void SetSourceLowPassFilter(IALSource source, float hfGain); void SetSourceHighPassFilter(IALSource source, float lfGain); void SetSourceBandPassFilter(IALSource source, float hfGain, float lfGain); void QueueSourceBuffer(IALSource source, IALBuffer buffer); void DequeueSourceBuffers( IALSource source, int buffersToDequeue, Queue<IALBuffer> errorCheck ); int CheckProcessedBuffers(IALSource source); void GetBufferData( IALSource source, IALBuffer[] buffer, float [] samples, AudioChannels channels ); IALReverb GenReverb(DSPParameter[] parameters); void DeleteReverb(IALReverb reverb); void CommitReverbChanges(IALReverb reverb); void SetReverbReflectionsDelay(IALReverb reverb, float value); void SetReverbDelay(IALReverb reverb, float value); void SetReverbPositionLeft(IALReverb reverb, float value); void SetReverbPositionRight(IALReverb reverb, float value); void SetReverbPositionLeftMatrix(IALReverb reverb, float value); void SetReverbPositionRightMatrix(IALReverb reverb, float value); void SetReverbEarlyDiffusion(IALReverb reverb, float value); void SetReverbLateDiffusion(IALReverb reverb, float value); void SetReverbLowEQGain(IALReverb reverb, float value); void SetReverbLowEQCutoff(IALReverb reverb, float value); void SetReverbHighEQGain(IALReverb reverb, float value); void SetReverbHighEQCutoff(IALReverb reverb, float value); void SetReverbRearDelay(IALReverb reverb, float value); void SetReverbRoomFilterFrequency(IALReverb reverb, float value); void SetReverbRoomFilterMain(IALReverb reverb, float value); void SetReverbRoomFilterHighFrequency(IALReverb reverb, float value); void SetReverbReflectionsGain(IALReverb reverb, float value); void SetReverbGain(IALReverb reverb, float value); void SetReverbDecayTime(IALReverb reverb, float value); void SetReverbDensity(IALReverb reverb, float value); void SetReverbRoomSize(IALReverb reverb, float value); void SetReverbWetDryMix(IALReverb reverb, float value); IntPtr StartDeviceCapture( string name, int sampleRate, int bufSize); void StopDeviceCapture(IntPtr handle); int CaptureSamples(IntPtr handle, IntPtr buffer, int count); bool CaptureHasSamples(IntPtr handle); } internal interface IALBuffer { TimeSpan Duration { get ; } } internal interface IALSource { } internal interface IALReverb { } } |