Lines Matching refs:pReverb
196 reverb_object_t *pReverb; in Reverb_Process() local
210 pReverb = (reverb_object_t*) &pRvbModule->context; in Reverb_Process()
212 if (pReverb->mState == REVERB_STATE_UNINITIALIZED) { in Reverb_Process()
215 if (pReverb->mState == REVERB_STATE_INITIALIZED) { in Reverb_Process()
220 if (pReverb->m_bBypass != 0) { in Reverb_Process()
242 if (pReverb->m_nNextRoom != pReverb->m_nCurrentRoom) { in Reverb_Process()
243 ReverbUpdateRoom(pReverb, true); in Reverb_Process()
251 if (numSamples > (uint32_t) pReverb->m_nUpdatePeriodInSamples) { in Reverb_Process()
252 processedSamples = (uint32_t) pReverb->m_nUpdatePeriodInSamples; in Reverb_Process()
258 pReverb->m_nUpdateCounter += (int16_t) processedSamples; in Reverb_Process()
260 if (pReverb->m_nUpdateCounter >= pReverb->m_nUpdatePeriodInSamples) { in Reverb_Process()
262 pReverb->m_nUpdateCounter -= pReverb->m_nUpdatePeriodInSamples; in Reverb_Process()
263 ReverbUpdateXfade(pReverb, pReverb->m_nUpdatePeriodInSamples); in Reverb_Process()
267 Reverb(pReverb, processedSamples, pDst, pSrc); in Reverb_Process()
270 if (pReverb->m_Aux) { in Reverb_Process()
285 reverb_object_t *pReverb; in Reverb_Command() local
293 pReverb = (reverb_object_t*) &pRvbModule->context; in Reverb_Command()
302 *(int *) pReplyData = Reverb_Init(pRvbModule, pReverb->m_Aux, pReverb->m_Preset); in Reverb_Command()
322 Reverb_Reset(pReverb, false); in Reverb_Command()
334 rep->status = Reverb_getParameter(pReverb, *(int32_t *)rep->data, &rep->vsize, in Reverb_Command()
346 *(int *)pReplyData = Reverb_setParameter(pReverb, *(int32_t *)cmd->data, in Reverb_Command()
353 if (pReverb->mState != REVERB_STATE_INITIALIZED) { in Reverb_Command()
356 pReverb->mState = REVERB_STATE_ACTIVE; in Reverb_Command()
364 if (pReverb->mState != REVERB_STATE_ACTIVE) { in Reverb_Command()
367 pReverb->mState = REVERB_STATE_INITIALIZED; in Reverb_Command()
405 reverb_object_t *pReverb; in Reverb_GetDescriptor() local
413 pReverb = (reverb_object_t*) &pRvbModule->context; in Reverb_GetDescriptor()
415 if (pReverb->m_Aux) { in Reverb_GetDescriptor()
416 if (pReverb->m_Preset) { in Reverb_GetDescriptor()
422 if (pReverb->m_Preset) { in Reverb_GetDescriptor()
515 reverb_object_t *pReverb = &pRvbModule->context; in Reverb_setConfig() local
529 if ((pReverb->m_Aux && (pConfig->inputCfg.channels != AUDIO_CHANNEL_OUT_MONO)) || in Reverb_setConfig()
530 (!pReverb->m_Aux && (pConfig->inputCfg.channels != AUDIO_CHANNEL_OUT_STEREO))) { in Reverb_setConfig()
537 pReverb->m_nSamplingRate = pRvbModule->config.outputCfg.samplingRate; in Reverb_setConfig()
539 switch (pReverb->m_nSamplingRate) { in Reverb_setConfig()
541 pReverb->m_nUpdatePeriodInBits = 5; in Reverb_setConfig()
543 pReverb->m_nCosWT_5KHz = -23170; in Reverb_setConfig()
546 pReverb->m_nUpdatePeriodInBits = 6; in Reverb_setConfig()
548 pReverb->m_nCosWT_5KHz = -12540; in Reverb_setConfig()
551 pReverb->m_nUpdatePeriodInBits = 7; in Reverb_setConfig()
553 pReverb->m_nCosWT_5KHz = 4768; in Reverb_setConfig()
556 pReverb->m_nUpdatePeriodInBits = 7; in Reverb_setConfig()
558 pReverb->m_nCosWT_5KHz = 18205; in Reverb_setConfig()
561 pReverb->m_nUpdatePeriodInBits = 8; in Reverb_setConfig()
563 pReverb->m_nCosWT_5KHz = 24799; in Reverb_setConfig()
566 pReverb->m_nUpdatePeriodInBits = 8; in Reverb_setConfig()
568 pReverb->m_nCosWT_5KHz = 25997; in Reverb_setConfig()
571 ALOGV("Reverb_setConfig invalid sampling rate %d", pReverb->m_nSamplingRate); in Reverb_setConfig()
578 pReverb->m_nBufferMask = (int32_t) (bufferSizeInSamples - 1); in Reverb_setConfig()
580 updatePeriodInSamples = (int32_t) (0x1L << pReverb->m_nUpdatePeriodInBits); in Reverb_setConfig()
585 pReverb->m_nUpdatePeriodInSamples = (int32_t) updatePeriodInSamples; in Reverb_setConfig()
588 * (double) pReverb->m_nSamplingRate); in Reverb_setConfig()
591 pReverb->m_nPhaseIncrement in Reverb_setConfig()
596 ReverbReadInPresets(pReverb); in Reverb_setConfig()
599 pReverb->m_bUseNoise = true; in Reverb_setConfig()
602 pReverb->m_bBypass = 0; in Reverb_setConfig()
604 pReverb->m_nNextRoom = 1; in Reverb_setConfig()
606 pReverb->m_nNoise = (int16_t) 0xABCD; in Reverb_setConfig()
609 Reverb_Reset(pReverb, init); in Reverb_setConfig()
653 void Reverb_Reset(reverb_object_t *pReverb, bool init) { in Reverb_Reset() argument
654 int bufferSizeInSamples = (int32_t) (pReverb->m_nBufferMask + 1); in Reverb_Reset()
664 maxApSamples = ((int32_t) (MAX_AP_TIME * pReverb->m_nSamplingRate) >> 16); in Reverb_Reset()
665 maxDelaySamples = ((int32_t) (MAX_DELAY_TIME * pReverb->m_nSamplingRate) in Reverb_Reset()
667 maxEarlySamples = ((int32_t) (MAX_EARLY_TIME * pReverb->m_nSamplingRate) in Reverb_Reset()
677 pReverb->m_nEarly0in = (delay1In + maxDelaySamples + GUARD); in Reverb_Reset()
678 pReverb->m_nEarly1in = (pReverb->m_nEarly0in + maxEarlySamples + GUARD); in Reverb_Reset()
680 pReverb->m_sAp0.m_zApIn = AP0_IN; in Reverb_Reset()
682 pReverb->m_zD0In = delay0In; in Reverb_Reset()
684 pReverb->m_sAp1.m_zApIn = ap1In; in Reverb_Reset()
686 pReverb->m_zD1In = delay1In; in Reverb_Reset()
688 pReverb->m_zOutLpfL = 0; in Reverb_Reset()
689 pReverb->m_zOutLpfR = 0; in Reverb_Reset()
691 pReverb->m_nRevFbkR = 0; in Reverb_Reset()
692 pReverb->m_nRevFbkL = 0; in Reverb_Reset()
695 pReverb->m_nBaseIndex = 0; in Reverb_Reset()
699 pReverb->m_nDelayLine[i] = 0; in Reverb_Reset()
702 ReverbUpdateRoom(pReverb, init); in Reverb_Reset()
704 pReverb->m_nUpdateCounter = 0; in Reverb_Reset()
706 pReverb->m_nPhase = -32768; in Reverb_Reset()
708 pReverb->m_nSin = 0; in Reverb_Reset()
709 pReverb->m_nCos = 0; in Reverb_Reset()
710 pReverb->m_nSinIncrement = 0; in Reverb_Reset()
711 pReverb->m_nCosIncrement = 0; in Reverb_Reset()
714 nOffset = ReverbCalculateNoise(pReverb); in Reverb_Reset()
716 pReverb->m_zD1Cross = pReverb->m_nDelay1Out - pReverb->m_nMaxExcursion in Reverb_Reset()
719 nOffset = ReverbCalculateNoise(pReverb); in Reverb_Reset()
721 pReverb->m_zD0Cross = pReverb->m_nDelay0Out - pReverb->m_nMaxExcursion in Reverb_Reset()
724 nOffset = ReverbCalculateNoise(pReverb); in Reverb_Reset()
726 pReverb->m_zD0Self = pReverb->m_nDelay0Out - pReverb->m_nMaxExcursion in Reverb_Reset()
729 nOffset = ReverbCalculateNoise(pReverb); in Reverb_Reset()
731 pReverb->m_zD1Self = pReverb->m_nDelay1Out - pReverb->m_nMaxExcursion in Reverb_Reset()
756 int Reverb_getParameter(reverb_object_t *pReverb, int32_t param, uint32_t *pSize, in Reverb_getParameter() argument
766 if (pReverb->m_Preset) { in Reverb_getParameter()
773 if (pReverb->m_bBypass != 0) { in Reverb_getParameter()
776 *pValue16 = (int16_t)(pReverb->m_nNextRoom + 1); in Reverb_getParameter()
816 *pValue32 = (int32_t) pReverb->m_bBypass; in Reverb_getParameter()
825 temp = (pReverb->m_nRoomLpfFwd << 15) in Reverb_getParameter()
826 / (32767 - pReverb->m_nRoomLpfFbk); in Reverb_getParameter()
829 …in %d, m_nRoomLpfFwd %d, m_nRoomLpfFbk %d", *pValue16, temp, pReverb->m_nRoomLpfFwd, pReverb->m_nR… in Reverb_getParameter()
843 temp = MULT_EG1_EG1(pReverb->m_nRoomLpfFbk, pReverb->m_nRoomLpfFbk); in Reverb_getParameter()
845 temp2 = MULT_EG1_EG1(pReverb->m_nRoomLpfFbk, pReverb->m_nCosWT_5KHz) in Reverb_getParameter()
852 temp = ((32767 - pReverb->m_nRoomLpfFbk) << 15) / temp; in Reverb_getParameter()
854 …F_LEVEL, gain %d, m_nRoomLpfFwd %d, m_nRoomLpfFbk %d", temp, pReverb->m_nRoomLpfFwd, pReverb->m_nR… in Reverb_getParameter()
866 temp = (pReverb->m_nRvbLpfFwd << 15) / (32767 - pReverb->m_nRvbLpfFbk); in Reverb_getParameter()
870 temp = (-6000 * pReverb->m_nLateDelay) / temp; in Reverb_getParameter()
873 *pValue32 = (temp * 1000) / pReverb->m_nSamplingRate; in Reverb_getParameter()
892 if (pReverb->m_nRvbLpfFbk == 0) { in Reverb_getParameter()
896 temp = MULT_EG1_EG1(pReverb->m_nRvbLpfFbk, pReverb->m_nRvbLpfFbk); in Reverb_getParameter()
897 temp2 = MULT_EG1_EG1(pReverb->m_nRvbLpfFbk, pReverb->m_nCosWT_5KHz) in Reverb_getParameter()
901 temp = (pReverb->m_nRvbLpfFwd << 15) / temp; in Reverb_getParameter()
903 temp2 = (pReverb->m_nRvbLpfFwd << 15) / (32767 in Reverb_getParameter()
904 - pReverb->m_nRvbLpfFbk); in Reverb_getParameter()
927 *pValue16 = Effects_Linear16ToMillibels(pReverb->m_nEarlyGain); in Reverb_getParameter()
938 *pValue32 = (pReverb->m_nEarlyDelay * 1000) / pReverb->m_nSamplingRate; in Reverb_getParameter()
940 … ALOGV("get REVERB_PARAM_REFLECTIONS_DELAY, samples %d, ms %d", pReverb->m_nEarlyDelay, *pValue32); in Reverb_getParameter()
950 *pValue16 = Effects_Linear16ToMillibels(pReverb->m_nLateGain << 2); in Reverb_getParameter()
962 *pValue32 = (pReverb->m_nLateDelay * 1000) / pReverb->m_nSamplingRate; in Reverb_getParameter()
964 … ALOGV("get REVERB_PARAM_REVERB_DELAY, samples %d, ms %d", pReverb->m_nLateDelay, *pValue32); in Reverb_getParameter()
973 temp = (int16_t) ((1000 * (pReverb->m_sAp0.m_nApGain - AP0_GAIN_BASE)) in Reverb_getParameter()
982 … ALOGV("get REVERB_PARAM_DIFFUSION, %d, AP0 gain %d", *pValue16, pReverb->m_sAp0.m_nApGain); in Reverb_getParameter()
992 temp = ((pReverb->m_sAp0.m_zApOut - pReverb->m_sAp0.m_zApIn) << 16) in Reverb_getParameter()
993 / pReverb->m_nSamplingRate; in Reverb_getParameter()
1004 …t REVERB_PARAM_DENSITY, %d, AP0 delay smps %d", *pValue16, pReverb->m_sAp0.m_zApOut - pReverb->m_s… in Reverb_getParameter()
1015 pReverb, param, *(int *)pValue); in Reverb_getParameter()
1039 int Reverb_setParameter(reverb_object_t *pReverb, int32_t param, uint32_t size, in Reverb_setParameter() argument
1053 pReverb, param, *(int16_t *)pValue, *(int32_t *)pValue); in Reverb_setParameter()
1055 if (pReverb->m_Preset) { in Reverb_setParameter()
1066 pReverb->m_bBypass = 1; in Reverb_setParameter()
1068 pReverb->m_bBypass = 0; in Reverb_setParameter()
1069 pReverb->m_nNextRoom = value16 - 1; in Reverb_setParameter()
1110 pPreset = &pReverb->m_sPreset.m_sPreset[pReverb->m_nNextRoom]; in Reverb_setParameter()
1114 pReverb->m_bBypass = (uint16_t)value32; in Reverb_setParameter()
1128 pReverb->m_nRoomLpfFwd in Reverb_setParameter()
1129 = MULT_EG1_EG1(temp, (32767 - pReverb->m_nRoomLpfFbk)); in Reverb_setParameter()
1131 …VEL, gain %d, new m_nRoomLpfFwd %d, m_nRoomLpfFbk %d", temp, pReverb->m_nRoomLpfFwd, pReverb->m_nR… in Reverb_setParameter()
1150 temp2 = (pReverb->m_nRoomLpfFwd << 15) / (32767 in Reverb_setParameter()
1151 - pReverb->m_nRoomLpfFbk); in Reverb_setParameter()
1153 pReverb->m_nRoomLpfFbk = 0; in Reverb_setParameter()
1166 * ((int64_t) pReverb->m_nCosWT_5KHz - (int64_t) dG2)) in Reverb_setParameter()
1175 …M_ROOM_HF_LEVEL, dG2 %d, b %d, delta %d, m_nCosWT_5KHz %d", dG2, b, delta, pReverb->m_nCosWT_5KHz); in Reverb_setParameter()
1177 pReverb->m_nRoomLpfFbk = (b - Effects_Sqrt(delta) * 181) >> 1; in Reverb_setParameter()
1180 temp2, pReverb->m_nRoomLpfFbk, pReverb->m_nRoomLpfFwd); in Reverb_setParameter()
1182 pReverb->m_nRoomLpfFwd in Reverb_setParameter()
1183 = MULT_EG1_EG1(temp2, (32767 - pReverb->m_nRoomLpfFbk)); in Reverb_setParameter()
1184 ALOGV("REVERB_PARAM_ROOM_HF_LEVEL, new m_nRoomLpfFwd %d", pReverb->m_nRoomLpfFwd); in Reverb_setParameter()
1195 value32 = (value32 * pReverb->m_nSamplingRate) / 1000; in Reverb_setParameter()
1201 averageDelay = pReverb->m_nLateDelay - pReverb->m_nMaxExcursion; in Reverb_setParameter()
1202 averageDelay += ((pReverb->m_sAp0.m_zApOut - pReverb->m_sAp0.m_zApIn) in Reverb_setParameter()
1203 + (pReverb->m_sAp1.m_zApOut - pReverb->m_sAp1.m_zApIn)) >> 1; in Reverb_setParameter()
1212 temp -= Effects_Linear16ToMillibels(pReverb->m_nLateGain) + 900; in Reverb_setParameter()
1216 pReverb->m_nRvbLpfFwd in Reverb_setParameter()
1217 = MULT_EG1_EG1(temp, (32767 - pReverb->m_nRvbLpfFbk)); in Reverb_setParameter()
1219 …vbLpfFbk %d, reverb gain %d", temp, pReverb->m_nRvbLpfFwd, pReverb->m_nRvbLpfFbk, Effects_Linear16… in Reverb_setParameter()
1235 temp2 = (pReverb->m_nRvbLpfFwd << 15) / (32767 - pReverb->m_nRvbLpfFbk); in Reverb_setParameter()
1238 pReverb->m_nRvbLpfFbk = 0; in Reverb_setParameter()
1263 * ((int64_t) pReverb->m_nCosWT_5KHz - (int64_t) dG2)) in Reverb_setParameter()
1271 pReverb->m_nRvbLpfFbk = (b - Effects_Sqrt(delta) * 181) >> 1; in Reverb_setParameter()
1277 …HF_RATIO, gain %d, m_nRvbLpfFbk %d, m_nRvbLpfFwd %d", temp2, pReverb->m_nRvbLpfFbk, pReverb->m_nRv… in Reverb_setParameter()
1279 pReverb->m_nRvbLpfFwd in Reverb_setParameter()
1280 = MULT_EG1_EG1(temp2, (32767 - pReverb->m_nRvbLpfFbk)); in Reverb_setParameter()
1295 pReverb->m_sEarlyL.m_nGain[i] in Reverb_setParameter()
1297 pReverb->m_sEarlyR.m_nGain[i] in Reverb_setParameter()
1300 pReverb->m_nEarlyGain = value16; in Reverb_setParameter()
1301 ALOGV("REVERB_PARAM_REFLECTIONS_LEVEL, m_nEarlyGain %d", pReverb->m_nEarlyGain); in Reverb_setParameter()
1315 maxSamples = (int32_t) (MAX_EARLY_TIME * pReverb->m_nSamplingRate) in Reverb_setParameter()
1317 temp = (temp * pReverb->m_nSamplingRate) >> 16; in Reverb_setParameter()
1320 * pReverb->m_nSamplingRate) >> 16); in Reverb_setParameter()
1323 pReverb->m_sEarlyL.m_zDelay[i] = pReverb->m_nEarly0in + temp2; in Reverb_setParameter()
1325 * pReverb->m_nSamplingRate) >> 16); in Reverb_setParameter()
1328 pReverb->m_sEarlyR.m_zDelay[i] = pReverb->m_nEarly1in + temp2; in Reverb_setParameter()
1330 pReverb->m_nEarlyDelay = temp; in Reverb_setParameter()
1332 …ALOGV("REVERB_PARAM_REFLECTIONS_DELAY, m_nEarlyDelay smps %d max smp delay %d", pReverb->m_nEarlyD… in Reverb_setParameter()
1345 pReverb->m_nLateGain = Effects_MillibelsToLinear16(value16) >> 2; in Reverb_setParameter()
1347 ALOGV("REVERB_PARAM_REVERB_LEVEL, m_nLateGain %d", pReverb->m_nLateGain); in Reverb_setParameter()
1361 maxSamples = (int32_t) (MAX_DELAY_TIME * pReverb->m_nSamplingRate) in Reverb_setParameter()
1363 temp = (temp * pReverb->m_nSamplingRate) >> 16; in Reverb_setParameter()
1364 if ((temp + pReverb->m_nMaxExcursion) > maxSamples) { in Reverb_setParameter()
1365 temp = maxSamples - pReverb->m_nMaxExcursion; in Reverb_setParameter()
1367 if (temp < pReverb->m_nMaxExcursion) { in Reverb_setParameter()
1368 temp = pReverb->m_nMaxExcursion; in Reverb_setParameter()
1371 temp -= pReverb->m_nLateDelay; in Reverb_setParameter()
1372 pReverb->m_nDelay0Out += temp; in Reverb_setParameter()
1373 pReverb->m_nDelay1Out += temp; in Reverb_setParameter()
1374 pReverb->m_nLateDelay += temp; in Reverb_setParameter()
1376 …ALOGV("REVERB_PARAM_REVERB_DELAY, m_nLateDelay smps %d max smp delay %d", pReverb->m_nLateDelay, m… in Reverb_setParameter()
1390 pReverb->m_sAp0.m_nApGain = AP0_GAIN_BASE + ((int32_t) value16 in Reverb_setParameter()
1392 pReverb->m_sAp1.m_nApGain = AP1_GAIN_BASE + ((int32_t) value16 in Reverb_setParameter()
1395 …PARAM_DIFFUSION, m_sAp0.m_nApGain %d m_sAp1.m_nApGain %d", pReverb->m_sAp0.m_nApGain, pReverb->m_s… in Reverb_setParameter()
1408 maxSamples = (int32_t) (MAX_AP_TIME * pReverb->m_nSamplingRate) >> 16; in Reverb_setParameter()
1412 temp = (temp * pReverb->m_nSamplingRate) >> 16; in Reverb_setParameter()
1415 pReverb->m_sAp0.m_zApOut = (uint16_t) (pReverb->m_sAp0.m_zApIn + temp); in Reverb_setParameter()
1421 temp = (temp * pReverb->m_nSamplingRate) >> 16; in Reverb_setParameter()
1424 pReverb->m_sAp1.m_zApOut = (uint16_t) (pReverb->m_sAp1.m_zApIn + temp); in Reverb_setParameter()
1455 static int ReverbUpdateXfade(reverb_object_t *pReverb, int nNumSamplesToAdd) { in ReverbUpdateXfade() argument
1460 if (pReverb->m_nXfadeCounter >= pReverb->m_nXfadeInterval) { in ReverbUpdateXfade()
1462 pReverb->m_nXfadeCounter = 0; in ReverbUpdateXfade()
1466 if (pReverb->m_nPhaseIncrement > 0) { in ReverbUpdateXfade()
1468 pReverb->m_nSin = 32767; in ReverbUpdateXfade()
1469 pReverb->m_nCos = 0; in ReverbUpdateXfade()
1472 pReverb->m_nPhase = 32767; in ReverbUpdateXfade()
1475 nOffset = ReverbCalculateNoise(pReverb); in ReverbUpdateXfade()
1477 pReverb->m_zD1Cross = pReverb->m_nDelay1Out in ReverbUpdateXfade()
1478 - pReverb->m_nMaxExcursion + nOffset; in ReverbUpdateXfade()
1480 nOffset = ReverbCalculateNoise(pReverb); in ReverbUpdateXfade()
1482 pReverb->m_zD0Cross = pReverb->m_nDelay0Out in ReverbUpdateXfade()
1483 - pReverb->m_nMaxExcursion - nOffset; in ReverbUpdateXfade()
1486 pReverb->m_nSin = 0; in ReverbUpdateXfade()
1487 pReverb->m_nCos = 32767; in ReverbUpdateXfade()
1490 pReverb->m_nPhase = -32768; in ReverbUpdateXfade()
1493 nOffset = ReverbCalculateNoise(pReverb); in ReverbUpdateXfade()
1495 pReverb->m_zD0Self = pReverb->m_nDelay0Out in ReverbUpdateXfade()
1496 - pReverb->m_nMaxExcursion - nOffset; in ReverbUpdateXfade()
1498 nOffset = ReverbCalculateNoise(pReverb); in ReverbUpdateXfade()
1500 pReverb->m_zD1Self = pReverb->m_nDelay1Out in ReverbUpdateXfade()
1501 - pReverb->m_nMaxExcursion + nOffset; in ReverbUpdateXfade()
1508 pReverb->m_nPhaseIncrement = -pReverb->m_nPhaseIncrement; in ReverbUpdateXfade()
1513 pReverb->m_nPhase += pReverb->m_nPhaseIncrement; in ReverbUpdateXfade()
1516 ReverbCalculateSinCos(pReverb->m_nPhase, &tempSin, &tempCos); in ReverbUpdateXfade()
1520 pReverb->m_nSinIncrement = (tempSin - pReverb->m_nSin) in ReverbUpdateXfade()
1521 >> pReverb->m_nUpdatePeriodInBits; in ReverbUpdateXfade()
1524 pReverb->m_nCosIncrement = (tempCos - pReverb->m_nCos) in ReverbUpdateXfade()
1525 >> pReverb->m_nUpdatePeriodInBits; in ReverbUpdateXfade()
1528 pReverb->m_nXfadeCounter += (uint16_t) nNumSamplesToAdd; in ReverbUpdateXfade()
1552 static uint16_t ReverbCalculateNoise(reverb_object_t *pReverb) { in ReverbCalculateNoise() argument
1553 int16_t nNoise = pReverb->m_nNoise; in ReverbCalculateNoise()
1556 if (pReverb->m_bUseNoise) { in ReverbCalculateNoise()
1562 pReverb->m_nNoise = nNoise; in ReverbCalculateNoise()
1564 return (pReverb->m_nMaxExcursion & nNoise); in ReverbCalculateNoise()
1643 static int Reverb(reverb_object_t *pReverb, int nNumSamplesToAdd, in Reverb() argument
1662 nBase = pReverb->m_nBaseIndex; in Reverb()
1667 if (!pReverb->m_Aux) { in Reverb()
1671 nAddr = CIRCULAR(nBase, pReverb->m_nEarly0in, pReverb->m_nBufferMask); in Reverb()
1672 pReverb->m_nDelayLine[nAddr] = (short) nApIn; in Reverb()
1676 nApIn = SATURATE(nApIn + pReverb->m_nRevFbkR); in Reverb()
1677 nApIn = MULT_EG1_EG1(nApIn, pReverb->m_nLateGain); in Reverb()
1682 = CIRCULAR(nBase, pReverb->m_sAp0.m_zApOut, pReverb->m_nBufferMask); in Reverb()
1683 nDelayOut0 = pReverb->m_nDelayLine[nAddr]; in Reverb()
1686 nTemp1 = MULT_EG1_EG1(nApIn, pReverb->m_sAp0.m_nApGain); in Reverb()
1690 nTemp1 = MULT_EG1_EG1(nApOut, pReverb->m_sAp0.m_nApGain); in Reverb()
1695 = CIRCULAR(nBase, pReverb->m_sAp0.m_zApIn, pReverb->m_nBufferMask); in Reverb()
1696 pReverb->m_nDelayLine[nAddr] = (short) nTemp1; in Reverb()
1699 nAddr = CIRCULAR(nBase, pReverb->m_zD0In, pReverb->m_nBufferMask); in Reverb()
1700 pReverb->m_nDelayLine[nAddr] = (short) nApOut; in Reverb()
1707 nAddr = CIRCULAR(nBase, pReverb->m_nEarly1in, pReverb->m_nBufferMask); in Reverb()
1708 pReverb->m_nDelayLine[nAddr] = (short) nApIn; in Reverb()
1712 nApIn = SATURATE(nApIn + pReverb->m_nRevFbkL); in Reverb()
1713 nApIn = MULT_EG1_EG1(nApIn, pReverb->m_nLateGain); in Reverb()
1717 = CIRCULAR(nBase, pReverb->m_sAp1.m_zApOut, pReverb->m_nBufferMask); in Reverb()
1718 nDelayOut1 = pReverb->m_nDelayLine[nAddr]; in Reverb()
1721 nTemp1 = MULT_EG1_EG1(nApIn, pReverb->m_sAp1.m_nApGain); in Reverb()
1725 nTemp1 = MULT_EG1_EG1(nApOut, pReverb->m_sAp1.m_nApGain); in Reverb()
1730 = CIRCULAR(nBase, pReverb->m_sAp1.m_zApIn, pReverb->m_nBufferMask); in Reverb()
1731 pReverb->m_nDelayLine[nAddr] = (short) nTemp1; in Reverb()
1734 nAddr = CIRCULAR(nBase, pReverb->m_zD1In, pReverb->m_nBufferMask); in Reverb()
1735 pReverb->m_nDelayLine[nAddr] = (short) nApOut; in Reverb()
1741 nAddr = CIRCULAR(nBase, pReverb->m_zD0Self, pReverb->m_nBufferMask); in Reverb()
1742 nDelayOut0 = pReverb->m_nDelayLine[nAddr]; in Reverb()
1745 nTemp1 = MULT_EG1_EG1(nDelayOut0, pReverb->m_nSin); in Reverb()
1748 nAddr = CIRCULAR(nBase, pReverb->m_zD1Cross, pReverb->m_nBufferMask); in Reverb()
1749 nDelayOut0 = pReverb->m_nDelayLine[nAddr]; in Reverb()
1752 nTemp2 = MULT_EG1_EG1(nDelayOut0, pReverb->m_nCos); in Reverb()
1761 nAddr = CIRCULAR(nBase, pReverb->m_zD1Self, pReverb->m_nBufferMask); in Reverb()
1762 nDelayOut1 = pReverb->m_nDelayLine[nAddr]; in Reverb()
1765 nTemp1 = MULT_EG1_EG1(nDelayOut1, pReverb->m_nSin); in Reverb()
1768 nAddr = CIRCULAR(nBase, pReverb->m_zD0Cross, pReverb->m_nBufferMask); in Reverb()
1769 nDelayOut1 = pReverb->m_nDelayLine[nAddr]; in Reverb()
1772 nTemp2 = MULT_EG1_EG1(nDelayOut1, pReverb->m_nCos); in Reverb()
1790 nTemp1 = MULT_EG1_EG1(nDelayOut0, pReverb->m_nRvbLpfFwd); in Reverb()
1792 nTemp2 = MULT_EG1_EG1(pReverb->m_nRevFbkL, pReverb->m_nRvbLpfFbk); in Reverb()
1796 pReverb->m_nRevFbkL = (short) SATURATE(nTemp1 + nTemp2); in Reverb()
1799 nTemp1 = MULT_EG1_EG1(nDelayOut1, pReverb->m_nRvbLpfFwd); in Reverb()
1801 nTemp2 = MULT_EG1_EG1(pReverb->m_nRevFbkR, pReverb->m_nRvbLpfFbk); in Reverb()
1805 pReverb->m_nRevFbkR = (short) SATURATE(nTemp1 + nTemp2); in Reverb()
1815 = CIRCULAR(nBase, pReverb->m_sEarlyL.m_zDelay[j], pReverb->m_nBufferMask); in Reverb()
1817 nTemp1 = pReverb->m_nDelayLine[nAddr]; in Reverb()
1821 nTemp1 = MULT_EG1_EG1(nTemp1, pReverb->m_sEarlyL.m_nGain[j]); in Reverb()
1829 nTemp1 = MULT_EG1_EG1(nDelayOut0, pReverb->m_nRoomLpfFwd); in Reverb()
1832 nTemp2 = MULT_EG1_EG1(pReverb->m_zOutLpfL, pReverb->m_nRoomLpfFbk); in Reverb()
1836 pReverb->m_zOutLpfL = (short) SATURATE(nTemp1 + nTemp2); in Reverb()
1840 *pOutputBuffer++ = (short) SATURATE(tempValue+pReverb->m_zOutLpfL); in Reverb()
1850 = CIRCULAR(nBase, pReverb->m_sEarlyR.m_zDelay[j], pReverb->m_nBufferMask); in Reverb()
1851 nTemp1 = pReverb->m_nDelayLine[nAddr]; in Reverb()
1854 nTemp1 = MULT_EG1_EG1(nTemp1, pReverb->m_sEarlyR.m_nGain[j]); in Reverb()
1861 nTemp1 = MULT_EG1_EG1(nDelayOut1, pReverb->m_nRoomLpfFwd); in Reverb()
1863 nTemp2 = MULT_EG1_EG1(pReverb->m_zOutLpfR, pReverb->m_nRoomLpfFbk); in Reverb()
1867 pReverb->m_zOutLpfR = (short) SATURATE(nTemp1 + nTemp2); in Reverb()
1871 *pOutputBuffer++ = (short) SATURATE(tempValue + pReverb->m_zOutLpfR); in Reverb()
1878 pReverb->m_nSin += pReverb->m_nSinIncrement; in Reverb()
1879 pReverb->m_nCos += pReverb->m_nCosIncrement; in Reverb()
1884 pReverb->m_nBaseIndex = nBase; in Reverb()
1905 static int ReverbUpdateRoom(reverb_object_t *pReverb, bool fullUpdate) { in ReverbUpdateRoom() argument
1913 &pReverb->m_sPreset.m_sPreset[pReverb->m_nNextRoom]; in ReverbUpdateRoom()
1916 pReverb->m_nRvbLpfFwd = pPreset->m_nRvbLpfFwd; in ReverbUpdateRoom()
1917 pReverb->m_nRvbLpfFbk = pPreset->m_nRvbLpfFbk; in ReverbUpdateRoom()
1919 pReverb->m_nEarlyGain = pPreset->m_nEarlyGain; in ReverbUpdateRoom()
1921 pReverb->m_nLateGain = pPreset->m_nLateGain; in ReverbUpdateRoom()
1922 pReverb->m_nRoomLpfFbk = pPreset->m_nRoomLpfFbk; in ReverbUpdateRoom()
1923 pReverb->m_nRoomLpfFwd = pPreset->m_nRoomLpfFwd; in ReverbUpdateRoom()
1928 pReverb->m_sEarlyL.m_nGain[i] in ReverbUpdateRoom()
1930 pReverb->m_sEarlyR.m_nGain[i] in ReverbUpdateRoom()
1934 pReverb->m_nMaxExcursion = pPreset->m_nMaxExcursion; in ReverbUpdateRoom()
1936 pReverb->m_sAp0.m_nApGain = pPreset->m_nAp0_ApGain; in ReverbUpdateRoom()
1937 pReverb->m_sAp1.m_nApGain = pPreset->m_nAp1_ApGain; in ReverbUpdateRoom()
1940 earlyDelay = ((int) pPreset->m_nEarlyDelay * pReverb->m_nSamplingRate) in ReverbUpdateRoom()
1942 pReverb->m_nEarlyDelay = earlyDelay; in ReverbUpdateRoom()
1943 maxSamples = (int32_t) (MAX_EARLY_TIME * pReverb->m_nSamplingRate) in ReverbUpdateRoom()
1948 * pReverb->m_nSamplingRate) >> 16); in ReverbUpdateRoom()
1951 pReverb->m_sEarlyL.m_zDelay[i] = pReverb->m_nEarly0in + temp; in ReverbUpdateRoom()
1954 * pReverb->m_nSamplingRate) >> 16); in ReverbUpdateRoom()
1957 pReverb->m_sEarlyR.m_zDelay[i] = pReverb->m_nEarly1in + temp; in ReverbUpdateRoom()
1960 maxSamples = (int32_t) (MAX_DELAY_TIME * pReverb->m_nSamplingRate) in ReverbUpdateRoom()
1964 temp = (pPreset->m_nLateDelay * pReverb->m_nSamplingRate) >> 16; in ReverbUpdateRoom()
1965 if ((temp + pReverb->m_nMaxExcursion) > maxSamples) { in ReverbUpdateRoom()
1966 temp = maxSamples - pReverb->m_nMaxExcursion; in ReverbUpdateRoom()
1968 temp -= pReverb->m_nLateDelay; in ReverbUpdateRoom()
1969 pReverb->m_nDelay0Out += temp; in ReverbUpdateRoom()
1970 pReverb->m_nDelay1Out += temp; in ReverbUpdateRoom()
1971 pReverb->m_nLateDelay += temp; in ReverbUpdateRoom()
1973 maxSamples = (int32_t) (MAX_AP_TIME * pReverb->m_nSamplingRate) >> 16; in ReverbUpdateRoom()
1977 temp = (temp * pReverb->m_nSamplingRate) >> 16; in ReverbUpdateRoom()
1980 pReverb->m_sAp0.m_zApOut = (uint16_t) (pReverb->m_sAp0.m_zApIn + temp); in ReverbUpdateRoom()
1985 temp = (temp * pReverb->m_nSamplingRate) >> 16; in ReverbUpdateRoom()
1988 pReverb->m_sAp1.m_zApOut = (uint16_t) (pReverb->m_sAp1.m_zApIn + temp); in ReverbUpdateRoom()
1995 temp = (temp * pReverb->m_nSamplingRate) >> 16; in ReverbUpdateRoom()
1996 pReverb->m_nXfadeInterval = (uint16_t) temp; in ReverbUpdateRoom()
1998 pReverb->m_nXfadeCounter = pReverb->m_nXfadeInterval + 1; // force update on first iteration in ReverbUpdateRoom()
2000 pReverb->m_nCurrentRoom = pReverb->m_nNextRoom; in ReverbUpdateRoom()
2017 static int ReverbReadInPresets(reverb_object_t *pReverb) { in ReverbReadInPresets() argument
2024 reverb_preset_t *pPreset = &pReverb->m_sPreset.m_sPreset[preset]; in ReverbReadInPresets()