AudioGroupEcho ( group[,delayMs#][,feedback#] )
Parameters
|
group - mixing group: 0: SFX (default for LoadSound/Load3DSound) 1: Music (default for non-MIDI PlayMusic) 2: UI 3: Ambience delayMs# (optional) - echo delay from 1 to 2000 ms; 250 (default) feedback# (optional) - repeat feedback from 0 to 0.95; 0.35 (default) |
Description
|
Configures the shared echo effect of a mixing group. Groups are 0=SFX, 1=Music, 2=UI and 3=Ambience. LoadSound/Load3DSound default to SFX; non-MIDI PlayMusic defaults to Music. Group processing includes dry sound and shared wet returns. Configures one shared echo per group. Returns are wet-only and preserve the source speaker matrix. Set SoundEcho/ChannelEcho to feed them. Delay changes use native FXEcho behavior and can bend/smear repeats; they are not transparent time stretching. Existing history continues after sources stop and is discarded with AudioGroupClearEffects. Call InitAudioEffects before the first WAV/Ogg playback. Configuration commands return 1 on success or 0 on failure; use AudioLastError for the reason. Finite numeric values and valid handles are required in Debug and Release. Queries preserve errors unless the query itself fails. Audio effects process decoded WAV and mono/stereo Ogg at an internal 48 kHz. MIDI uses a separate backend. Sound defaults are copied to independent playing channels. Runtime pause freezes sources, tails and transition time; pausing one channel leaves shared tails running. Event waits service transitions and release completed source resources without ChannelPlaying polling. Lightweight completed handles are retained until program shutdown. The interactive Audio Playground sample demonstrates the whole effects family together. Requires Extended mode. See also: SoundEcho, ChannelEcho, AudioGroupClearEffects. |
Example
; AudioGroupEcho example. Compile in Extended mode; media ships with Audio Playground. AppTitle "AudioGroupEcho" If Not InitAudioEffects() Then RuntimeError AudioLastError$() Graphics 680,240,0,2 SetBuffer BackBuffer() sound = LoadSound("../../../samples/audio/media/pulse.wav") If sound = 0 Then RuntimeError "The installed audio sample media is missing." SoundVolume sound,0.25 RequireAudio AudioMasterMeter(True) RequireAudio AudioGroupMeter(0,True) message$ = "AudioGroupEcho" RequireAudio AudioGroupEcho(0,400,0.45) RequireAudio SoundEcho(sound,0.6) channel = PlaySound(sound) If channel = 0 Then RuntimeError "Unable to play the example sound." started = MilliSecs() While KeyDown(1) = False And MilliSecs()-started < 5000 Cls Text 20,20,message Text 20,50,"Group 0 peak: " + AudioGroupPeak(0) + " RMS: " + AudioGroupRMS(0) Text 20,80,"Master peak: " + AudioMasterPeak() + " RMS: " + AudioMasterRMS() Text 20,120,"Listen for five seconds, or press Escape to finish." Flip Wend StopChannel channel For group = 0 To 3 RequireAudio AudioGroupClearEffects(group) Next Delay 60 FreeSound sound EndGraphics End Function RequireAudio(success) If Not success Then RuntimeError AudioLastError$() End Function
Index