Don't bother storing the loop points in the source

This commit is contained in:
Chris Robinson 2010-05-24 01:07:13 -07:00
parent 9ac6b4c2c8
commit 8cfac7c6b8
3 changed files with 4 additions and 10 deletions

View File

@ -932,7 +932,6 @@ static void MixSomeSources(ALCcontext *ALContext, float (*DryBuffer)[OUTPUTCHANN
ALuint DataPosInt, DataPosFrac;
ALuint Channels, Bytes;
ALuint Frequency;
ALuint LoopStart, LoopEnd;
resampler_t Resampler;
ALuint BuffersPlayed;
ALboolean Looping;
@ -993,8 +992,6 @@ next_source:
DataPosInt = ALSource->position;
DataPosFrac = ALSource->position_fraction;
Looping = ALSource->bLooping;
LoopStart = ALSource->LoopStart;
LoopEnd = ALSource->LoopEnd;
/* Compute 18.14 fixed point step */
Pitch = (ALSource->Params.Pitch*Frequency) / DeviceFreq;
@ -1033,6 +1030,8 @@ next_source:
while(State == AL_PLAYING && j < SamplesToDo)
{
ALuint LoopStart = 0;
ALuint LoopEnd = 0;
ALuint DataSize = 0;
ALbuffer *ALBuffer;
ALfloat *Data;
@ -1044,6 +1043,8 @@ next_source:
Data = ALBuffer->data;
DataSize = ALBuffer->size;
DataSize /= Channels * Bytes;
LoopStart = ALBuffer->LoopStart;
LoopEnd = ALBuffer->LoopEnd;
}
if(DataPosInt >= DataSize)
goto skipmix;

View File

@ -78,10 +78,6 @@ typedef struct ALsource
ALint lOffset;
ALint lOffsetType;
// Only valid for static sources types
ALint LoopStart;
ALint LoopEnd;
// Source Type (Static, Streaming, or Undetermined)
ALint lSourceType;

View File

@ -564,9 +564,6 @@ AL_API ALvoid AL_APIENTRY alSourcei(ALuint source,ALenum eParam,ALint lValue)
Source->queue = BufferListItem;
Source->BuffersInQueue = 1;
Source->LoopStart = buffer->LoopStart;
Source->LoopEnd = buffer->LoopEnd;
// Increment reference counter for buffer
buffer->refcount++;
}