rem: if (time > fLastDataAvailableTime || !fEnabled)
add: if (!fEnabled) return false;  #if 1 if (time < (fLastDataAvailableTime - duration_for_frames(fMixBufferFrameRate, fMixBufferFrameCount)) || (time + duration_for_frames(fMixBufferFrameRate, debugMixBufferFrames)) > fLastDataAvailableTime) ERROR("MixerInput::GetMixerChannelInfo: reading wrong data, have %Ld to %Ld, reading from %Ld to %Ld\n", fLastDataAvailableTime - duration_for_frames(fMixBufferFrameRate, fMixBufferFrameCount), fLastDataAvailableTime, time, time + duration_for_frames(fMixBufferFrameRate, debugMixBufferFrames)); #endif  if (time > fLastDataAvailableTime)
context: MixerInput::GetMixerChannelInfo(int mixer_channel, int64 framepos, bigtime_t time, const float **buffer, uint32 *sample_offset, int *type, float *gain){	ASSERT(fMixBuffer); // this function should not be called if we don't have a mix buffer!	ASSERT(mixer_channel >= 0 && mixer_channel < fMixerChannelCount);	if (time > fLastDataAvailableTime || !fEnabled)		return false;		int32 offset = framepos % fMixBufferFrameCount;	if (mixer_channel == 0) PRINT(3, "GetMixerChannelInfo: frames %ld to %ld\n", offset, offset + debugMixBufferFrames - 1);	*buffer = reinterpret_cast<float *>(reinterpret_cast<char *>(fMixerChannelInfo[mixer_channel].buffer_base) + (offset * sizeof(float) * fInputChannelCount));	*sample_offset = sizeof(float) * fInputChannelCount;	*type = fMixerChannelInfo[mixer_channel].destination_type;	*gain = fMixerChannelInfo[mixer_channel].destination_gain;	return true;}