• Home
  • Raw
  • Download

Lines Matching refs:pWTVoice

55 static EAS_I32 WT_UpdatePhaseInc (S_WT_VOICE *pWTVoice, const S_ARTICULATION *pArt, S_SYNTH_CHANNEL…
56 static EAS_I32 WT_UpdateGain (S_SYNTH_VOICE *pVoice, S_WT_VOICE *pWTVoice, const S_ARTICULATION *pA…
57 static void WT_UpdateEG1 (S_WT_VOICE *pWTVoice, const S_ENVELOPE *pEnv);
58 static void WT_UpdateEG2 (S_WT_VOICE *pWTVoice, const S_ENVELOPE *pEnv);
66 static void WT_UpdateFilter (S_WT_VOICE *pWTVoice, S_WT_INT_FRAME *pIntFrame, const S_ARTICULATION …
165 S_WT_VOICE *pWTVoice; in WT_ReleaseVoice() local
176 pWTVoice = &pVoiceMgr->wtVoices[voiceNum]; in WT_ReleaseVoice()
177 pArticulation = &pSynth->pEAS->pArticulations[pWTVoice->artIndex]; in WT_ReleaseVoice()
180 pWTVoice->eg1State = eEnvelopeStateRelease; in WT_ReleaseVoice()
181 pWTVoice->eg1Increment = pArticulation->eg1.releaseTime; in WT_ReleaseVoice()
190 pWTVoice->eg2State = eEnvelopeStateRelease; in WT_ReleaseVoice()
191 pWTVoice->eg2Increment = pArticulation->eg2.releaseTime; in WT_ReleaseVoice()
246 S_WT_VOICE *pWTVoice; in WT_SustainPedal() local
257 pWTVoice = &pVoiceMgr->wtVoices[voiceNum]; in WT_SustainPedal()
258 if (pWTVoice->eg1Value < pSynth->pEAS->pArticulations[pWTVoice->artIndex].eg1.sustainLevel) in WT_SustainPedal()
263 pWTVoice->eg1State = eEnvelopeStateDecay; in WT_SustainPedal()
309 S_WT_VOICE *pWTVoice; in WT_StartVoice() local
327 pWTVoice = &pVoiceMgr->wtVoices[voiceNum]; in WT_StartVoice()
340 pWTVoice->artIndex = pRegion->artIndex; in WT_StartVoice()
346 pArt = &pSynth->pEAS->pArticulations[pWTVoice->artIndex]; in WT_StartVoice()
349 pWTVoice->eg1State = eEnvelopeStateAttack; in WT_StartVoice()
350 pWTVoice->eg1Value = 0; in WT_StartVoice()
351 pWTVoice->eg1Increment = pArt->eg1.attackTime; in WT_StartVoice()
352 pWTVoice->eg2State = eEnvelopeStateAttack; in WT_StartVoice()
353 pWTVoice->eg2Value = 0; in WT_StartVoice()
354 pWTVoice->eg2Increment = pArt->eg2.attackTime; in WT_StartVoice()
357 pWTVoice->modLFO.lfoValue = 0; in WT_StartVoice()
358 pWTVoice->modLFO.lfoPhase = -pArt->lfoDelay; in WT_StartVoice()
372 EAS_CalcPanControl(pan, &pWTVoice->gainLeft, &pWTVoice->gainRight); in WT_StartVoice()
377 pWTVoice->filter.z1 = 0; in WT_StartVoice()
378 pWTVoice->filter.z2 = 0; in WT_StartVoice()
384 pWTVoice->phaseAccum = 4574296; in WT_StartVoice()
385 pWTVoice->loopStart = WT_NOISE_GENERATOR; in WT_StartVoice()
386 pWTVoice->loopEnd = 4574295; in WT_StartVoice()
395pWTVoice->phaseAccum = (EAS_U32) pSynth->pEAS->pSamples + pSynth->pEAS->pSampleOffsets[pRegion->wa… in WT_StartVoice()
397 pWTVoice->phaseAccum = pSynth->pEAS->pSampleOffsets[pRegion->waveIndex]; in WT_StartVoice()
399pWTVoice->phaseAccum = (EAS_U32) pSynth->pEAS->pSamples + pSynth->pEAS->pSampleOffsets[pRegion->wa… in WT_StartVoice()
404 pWTVoice->loopStart = pWTVoice->phaseAccum + pRegion->loopStart; in WT_StartVoice()
405 pWTVoice->loopEnd = pWTVoice->phaseAccum + pRegion->loopEnd - 1; in WT_StartVoice()
408pWTVoice->loopStart = pWTVoice->loopEnd = pWTVoice->phaseAccum + pSynth->pEAS->pSampleLen[pRegion-… in WT_StartVoice()
415 wtConfig.phaseAccum = pWTVoice->phaseAccum; in WT_StartVoice()
416 wtConfig.loopStart = pWTVoice->loopStart; in WT_StartVoice()
417 wtConfig.loopEnd = pWTVoice->loopEnd; in WT_StartVoice()
421 wtConfig.gainLeft = pWTVoice->gainLeft; in WT_StartVoice()
422 wtConfig.gainRight = pWTVoice->gainRight; in WT_StartVoice()
446 EAS_BOOL WT_CheckSampleEnd (S_WT_VOICE *pWTVoice, S_WT_INT_FRAME *pWTIntFrame, EAS_BOOL update) in WT_CheckSampleEnd() argument
455 …endPhaseFrac = pWTVoice->phaseFrac + (pWTIntFrame->frame.phaseIncrement << SYNTH_UPDATE_PERIOD_IN_… in WT_CheckSampleEnd()
456 endPhaseAccum = pWTVoice->phaseAccum + GET_PHASE_INT_PART(endPhaseFrac); in WT_CheckSampleEnd()
457 if (endPhaseAccum >= pWTVoice->loopEnd) in WT_CheckSampleEnd()
460 numSamples = (EAS_I32) (pWTVoice->loopEnd - pWTVoice->phaseAccum); in WT_CheckSampleEnd()
464 numSamples = (EAS_I32) ((numSamples << NUM_PHASE_FRAC_BITS) - pWTVoice->phaseFrac); in WT_CheckSampleEnd()
478 pWTVoice->phaseFrac = endPhaseFrac; in WT_CheckSampleEnd()
479 pWTVoice->phaseAccum = endPhaseAccum; in WT_CheckSampleEnd()
505 S_WT_VOICE *pWTVoice; in WT_UpdateVoice() local
519 pWTVoice = &pVoiceMgr->wtVoices[voiceNum]; in WT_UpdateVoice()
521 pArt = &pSynth->pEAS->pArticulations[pWTVoice->artIndex]; in WT_UpdateVoice()
526 WT_UpdateEG1(pWTVoice, &pArt->eg1); in WT_UpdateVoice()
527 WT_UpdateEG2(pWTVoice, &pArt->eg2); in WT_UpdateVoice()
530 WT_UpdateLFO(&pWTVoice->modLFO, pArt->lfoFreq); in WT_UpdateVoice()
535 WT_UpdateFilter(pWTVoice, &intFrame, pArt); in WT_UpdateVoice()
541 intFrame.frame.gainTarget = WT_UpdateGain(pVoice, pWTVoice, pArt, pChannel, pWTRegion->gain); in WT_UpdateVoice()
551 intFrame.frame.phaseIncrement = WT_UpdatePhaseInc(pWTVoice, pArt, pChannel, temp); in WT_UpdateVoice()
559 if ((pWTVoice->loopStart != WT_NOISE_GENERATOR) && (pWTVoice->loopStart == pWTVoice->loopEnd)) in WT_UpdateVoice()
560 done = WT_CheckSampleEnd(pWTVoice, &intFrame, (EAS_BOOL) (voiceNum >= NUM_PRIMARY_VOICES)); in WT_UpdateVoice()
570 WT_ProcessVoice(pWTVoice, &intFrame); in WT_UpdateVoice()
576 WT_ProcessVoice(pWTVoice, &intFrame); in WT_UpdateVoice()
583 if ((pVoice->voiceState != eVoiceStateStolen) && (pWTVoice->eg1State == eEnvelopeStateMuted)) in WT_UpdateVoice()
615 static EAS_I32 WT_UpdatePhaseInc (S_WT_VOICE *pWTVoice, const S_ARTICULATION *pArt, S_SYNTH_CHANNEL… in WT_UpdatePhaseInc() argument
628 temp = MULT_EG1_EG1(pWTVoice->modLFO.lfoValue, temp); in WT_UpdatePhaseInc()
637 (MULT_EG1_EG1(pWTVoice->eg2Value, pArt->eg2ToPitch)) + in WT_UpdatePhaseInc()
638 (MULT_EG1_EG1(pWTVoice->modLFO.lfoValue, pArt->lfoToPitch)); in WT_UpdatePhaseInc()
725 static EAS_I32 WT_UpdateGain (S_SYNTH_VOICE *pVoice, S_WT_VOICE *pWTVoice, const S_ARTICULATION *pA… in WT_UpdateGain() argument
748 lfoGain = MULT_EG1_EG1(pWTVoice->modLFO.lfoValue, pArt->lfoToGain); in WT_UpdateGain()
756 temp = (EAS_I16)MULT_EG1_EG1(temp, pWTVoice->eg1Value); in WT_UpdateGain()
780 static void WT_UpdateEG1 (S_WT_VOICE *pWTVoice, const S_ENVELOPE *pEnv) in WT_UpdateEG1() argument
784 switch (pWTVoice->eg1State) in WT_UpdateEG1()
787 temp = pWTVoice->eg1Value + pWTVoice->eg1Increment; in WT_UpdateEG1()
796 pWTVoice->eg1State = eEnvelopeStateDecay; in WT_UpdateEG1()
797 pWTVoice->eg1Increment = pEnv->decayTime; in WT_UpdateEG1()
804 temp = MULT_EG1_EG1(pWTVoice->eg1Value, pWTVoice->eg1Increment); in WT_UpdateEG1()
814 pWTVoice->eg1State = eEnvelopeStateSustain; in WT_UpdateEG1()
818 pWTVoice->eg1State = eEnvelopeStateMuted; in WT_UpdateEG1()
827 temp = MULT_EG1_EG1(pWTVoice->eg1Value, pWTVoice->eg1Increment); in WT_UpdateEG1()
833 pWTVoice->eg1State = eEnvelopeStateMuted; in WT_UpdateEG1()
853 pWTVoice->eg1Value = (EAS_I16) temp; in WT_UpdateEG1()
873 static void WT_UpdateEG2 (S_WT_VOICE *pWTVoice, const S_ENVELOPE *pEnv) in WT_UpdateEG2() argument
877 switch (pWTVoice->eg2State) in WT_UpdateEG2()
880 temp = pWTVoice->eg2Value + pWTVoice->eg2Increment; in WT_UpdateEG2()
889 pWTVoice->eg2State = eEnvelopeStateDecay; in WT_UpdateEG2()
891 pWTVoice->eg2Increment = pEnv->decayTime; in WT_UpdateEG2()
898 temp = pWTVoice->eg2Value -pWTVoice->eg2Increment; in WT_UpdateEG2()
907 pWTVoice->eg2State = eEnvelopeStateSustain; in WT_UpdateEG2()
915 temp = pWTVoice->eg2Value - pWTVoice->eg2Increment; in WT_UpdateEG2()
920 pWTVoice->eg2State = eEnvelopeStateMuted; in WT_UpdateEG2()
940 pWTVoice->eg2Value = (EAS_I16) temp; in WT_UpdateEG2()
1000 static void WT_UpdateFilter (S_WT_VOICE *pWTVoice, S_WT_INT_FRAME *pIntFrame, const S_ARTICULATION … in WT_UpdateFilter() argument
1012 cutoff = MULT_EG1_EG1(pWTVoice->eg2Value, pArt->eg2ToFc); in WT_UpdateFilter()