zenilib
0.5.3.0
|
#include "config.h"
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <assert.h>
#include "alMain.h"
#include "alSource.h"
#include "alBuffer.h"
#include "alListener.h"
#include "alAuxEffectSlot.h"
#include "alu.h"
#include "bs2b.h"
#include "mixer_defs.h"
Go to the source code of this file.
Macros | |
#define | DECL_TEMPLATE(T, func) |
Variables | |
ALfloat | ConeScale = 1.0f |
ALfloat | ZScale = 1.0f |
#define DECL_TEMPLATE | ( | T, | |
func | |||
) |
|
static |
Definition at line 108 of file ALu.c.
Referenced by CalcListenerParams().
|
static |
Definition at line 115 of file ALu.c.
Referenced by aluNormalize(), and CalcSourceParams().
Definition at line 1176 of file ALu.c.
References ALCcontext_struct::ActiveSourceCount, ALCcontext_struct::ActiveSources, AL_PLAYING, AL_STOPPED, ALC_FALSE, ALCdevice_struct::Connected, ALCdevice_struct::ContextList, and ALCcontext_struct::next.
Referenced by alcCreateContext(), alsa_available_samples(), alsa_capture_samples(), alsa_start_capture(), ALSANoMMapProc(), ALSAProc(), DSoundAvailableSamples(), DSoundPlaybackProc(), DSoundStartCapture(), DSoundStopCapture(), MMDevApiProc(), OSSCaptureProc(), OSSProc(), sndio_proc(), SolarisProc(), and WaveProc().
Definition at line 133 of file ALu.c.
Referenced by CalcListenerParams(), and CalcSourceParams().
Definition at line 970 of file ALu.c.
References ALCcontext_struct::ActiveEffectSlotCount, ALCcontext_struct::ActiveEffectSlots, ALCcontext_struct::ActiveSourceCount, ALCcontext_struct::ActiveSources, AL_FALSE, AL_PLAYING, ALCdevice_Lock, ALCdevice_Unlock, ALeffectState_Process, ALeffectState_Update, ALsource_Update, ALCdevice_struct::Bs2b, bs2b_cross_feed(), BUFFERSIZE, CalcListenerParams(), ALeffectslot::ClickRemoval, ALCdevice_struct::ContextList, ALCdevice_struct::DefaultSlot, ALCcontext_struct::DeferUpdates, DevFmtByte, DevFmtFloat, DevFmtInt, DevFmtMono, DevFmtShort, DevFmtStereo, DevFmtUByte, DevFmtUInt, DevFmtUShort, ALCdevice_struct::FmtChans, ALCdevice_struct::FmtType, FrontCenter, FrontLeft, FrontRight, i, ALCcontext_struct::Listener, MaxChannels, memset, minu(), MixSource(), ALCcontext_struct::next, NULL, RestoreFPUMode(), SetMixerFPUMode(), and ALCcontext_struct::UpdateSources.
Referenced by alcRenderSamplesSOFT(), ALSANoMMapProc(), ALSAProc(), ca_callback(), DSoundPlaybackProc(), MMDevApiProc(), NullProc(), opensl_callback(), OSSProc(), pa_callback(), PlaybackThreadProc(), sndio_proc(), SolarisProc(), and WaveProc().
Definition at line 121 of file ALu.c.
References aluDotproduct().
Referenced by CalcListenerParams(), and CalcSourceParams().
|
static |
Definition at line 145 of file ALu.c.
References aluCrossproduct(), aluMatrixVector(), aluNormalize(), ALlistener::Forward, ALlistener::Matrix, ALlistener::Params, ALlistener::Position, ALlistener::Up, and ALlistener::Velocity.
Referenced by aluMixData().
ALvoid CalcNonAttnSourceParams | ( | ALsource * | ALSource, |
const ALCcontext * | ALContext | ||
) |
Definition at line 193 of file ALu.c.
References AL_EFFECT_NULL, AL_FALSE, BackCenter, BackLeft, BackRight, ALbufferlistitem::buffer, BUFFERSIZE, clampf(), DirectParams::ClickRemoval, FILTER::coeff, ComputeAngleGains(), HrtfState::Counter, ALCdevice_struct::DefaultSlot, HrtfParams::Delay, DevFmtStereo, ALCcontext_struct::Device, DEVICE_WIDE_STEREO, ALsource::Direct, ALsource::DirectChannels, ALsource::DirectGain, ALsource::DirectGainHF, ALsource::DryMix, ALeffectslot::effect, F_PI, fastf2i(), ALCdevice_struct::Flags, ALbuffer::FmtChannels, ALCdevice_struct::FmtChans, FmtMono, FmtQuad, FmtRear, FmtStereo, FmtX51, FmtX61, FmtX71, FRACTIONBITS, FRACTIONONE, ALbuffer::Frequency, ALCdevice_struct::Frequency, FrontCenter, FrontLeft, FrontRight, ALlistener::Gain, ALsource::Gain, ALsource::GainHF, DirectParams::Gains, GetHrtfIrSize(), GetLerpedHrtfCoeffs(), HRIR_LENGTH, DirectParams::Hrtf, ALsource::Hrtf, ALCdevice_struct::Hrtf, i, DirectParams::iirFilter, HrtfParams::IrSize, lerp(), LFE, ALCcontext_struct::Listener, LOWPASSFREQREF, lpCoeffCalc(), MAX_SENDS, MaxChannels, ALsource::MaxGain, ALsource::MinGain, mini(), ALbufferlistitem::next, NULL, ALCdevice_struct::NumAuxSends, ALCdevice_struct::NumChan, DirectParams::OutBuffer, DirectParams::Params, ALsource::Params, DirectParams::PendingClicks, ALsource::Pitch, ALsource::queue, ALsource::Resample, ALsource::Resampler, ResamplerPadding, ResamplerPrePadding, SelectDirectMixer(), SelectHrtfMixer(), SelectResampler(), SelectSendMixer(), ALsource::Send, SideLeft, SideRight, ALsource::Slot, ALCdevice_struct::Speaker2Chan, DirectParams::State, ALsource::Step, ALeffect::type, and ALsource::WetMix.
Referenced by alSourceQueueBuffers(), and SetSourceiv().
ALvoid CalcSourceParams | ( | ALsource * | ALSource, |
const ALCcontext * | ALContext | ||
) |
Definition at line 470 of file ALu.c.
References AIRABSORBGAINHF, ALsource::AirAbsorptionFactor, ALeffect::AirAbsorptionGainHF, AL_EFFECT_NULL, AL_FALSE, AL_TRUE, aluDotproduct(), aluMatrixVector(), aluNormalize(), ALeffectslot::AuxSendAuto, ALbufferlistitem::buffer, BUFFERSIZE, CalcHrtfDelta(), clampf(), DirectParams::ClickRemoval, FILTER::coeff, ComputeAngleGains(), ConeScale, HrtfState::Counter, ALeffect::DecayTime, ALCdevice_struct::DefaultSlot, HrtfParams::Delay, HrtfParams::DelayStep, ALCcontext_struct::Device, HrtfParams::Dir, ALsource::Direct, ALsource::DirectGain, ALsource::DirectGainHF, DisableDistance, ALsource::DistanceModel, ALCcontext_struct::DistanceModel, ALsource::DopplerFactor, ALCcontext_struct::DopplerFactor, ALCcontext_struct::DopplerVelocity, ALsource::DryGainHFAuto, ALsource::DryMix, ALeffectslot::effect, ExponentDistance, ExponentDistanceClamped, F_PI, fastf2i(), FLT_EPSILON, FRACTIONBITS, FRACTIONONE, ALbuffer::Frequency, ALCdevice_struct::Frequency, ALlistener::Gain, HrtfParams::Gain, ALsource::Gain, ALsource::GainHF, DirectParams::Gains, GetHrtfIrSize(), GetLerpedHrtfCoeffs(), GetMovingHrtfCoeffs(), ALsource::HeadRelative, DirectParams::Hrtf, ALsource::Hrtf, ALCdevice_struct::Hrtf, i, DirectParams::iirFilter, ALsource::InnerAngle, InverseDistance, InverseDistanceClamped, HrtfParams::IrSize, IsReverbEffect(), j, lerp(), LinearDistance, LinearDistanceClamped, ALCcontext_struct::Listener, LOWPASSFREQREF, lpCoeffCalc(), ALlistener::Matrix, MAX_SENDS, MaxChannels, ALsource::MaxDistance, maxf(), ALsource::MaxGain, ALlistener::MetersPerUnit, ALsource::MinGain, mini(), HrtfState::Moving, ALbufferlistitem::next, NULL, ALCdevice_struct::NumAuxSends, ALCdevice_struct::NumChan, ALsource::Orientation, DirectParams::OutBuffer, ALsource::OuterAngle, ALsource::OuterGain, ALsource::OuterGainHF, ALlistener::Params, DirectParams::Params, ALsource::Params, DirectParams::PendingClicks, ALsource::Pitch, ALsource::Position, ALsource::queue, ALsource::RefDistance, ALsource::Resample, ALsource::Resampler, ResamplerPadding, ResamplerPrePadding, ALeffect::Reverb, ALsource::RollOffFactor, ALeffect::RoomRolloffFactor, ALsource::RoomRolloffFactor, SelectDirectMixer(), SelectHrtfMixer(), SelectResampler(), SelectSendMixer(), ALsource::Send, ALsource::Slot, ALCcontext_struct::SourceDistanceModel, ALCdevice_struct::Speaker2Chan, ALCcontext_struct::SpeedOfSound, SPEEDOFSOUNDMETRESPERSEC, DirectParams::State, ALsource::Step, ALeffect::type, ALlistener::Velocity, ALsource::Velocity, ALsource::WetGainAuto, ALsource::WetGainHFAuto, ALsource::WetMix, and ZScale.
Referenced by alSourceQueueBuffers(), and SetSourceiv().
|
static |
Definition at line 87 of file ALu.c.
References CPU_CAP_SSE, CPUCapFlags, MixDirect_C(), and MixDirect_SSE().
Referenced by CalcNonAttnSourceParams(), and CalcSourceParams().
|
static |
Definition at line 73 of file ALu.c.
References CPU_CAP_NEON, CPU_CAP_SSE, CPUCapFlags, MixDirect_Hrtf_C(), MixDirect_Hrtf_Neon(), and MixDirect_Hrtf_SSE().
Referenced by CalcNonAttnSourceParams(), and CalcSourceParams().
|
static |
Definition at line 52 of file ALu.c.
References CubicResampler, FRACTIONONE, LinearResampler, PointResampler, Resample_copy32_C(), Resample_cubic32_C(), Resample_lerp32_C(), Resample_point32_C(), and ResamplerMax.
Referenced by CalcNonAttnSourceParams(), and CalcSourceParams().
|
static |
Definition at line 97 of file ALu.c.
References CPU_CAP_SSE, CPUCapFlags, MixSend_C(), and MixSend_SSE().
Referenced by CalcNonAttnSourceParams(), and CalcSourceParams().
ALfloat ConeScale = 1.0f |
Definition at line 46 of file ALu.c.
Referenced by alc_init(), and CalcSourceParams().
ALfloat ZScale = 1.0f |
Definition at line 49 of file ALu.c.
Referenced by alc_init(), and CalcSourceParams().