diff options
author | Xin Li <delphij@google.com> | 2022-06-27 23:38:34 +0000 |
---|---|---|
committer | Xin Li <delphij@google.com> | 2022-06-27 23:38:34 +0000 |
commit | 76858887c4db2a508f96e2865f742ff5edc9f646 (patch) | |
tree | e484fb25d9196aa2588717be3c7b9049efd2b240 | |
parent | bc685c9b6b3eca629b4dffb84cfb5c96aab6d9c2 (diff) | |
parent | 31eed4fa4342540355969e37340732152fb255d4 (diff) | |
download | sonivox-76858887c4db2a508f96e2865f742ff5edc9f646.tar.gz |
Merge tm-dev-plus-aosp-without-vendor@8763363temp_sam_242648940
Bug: 236760014
Merged-In: I61ac054c32525b8509baafd70840fbed0f1ab7c4
Change-Id: I4afc128626afd53768165344c07e64f55fc7dd87
-rw-r--r-- | arm-wt-22k/lib_src/eas_dlssynth.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/arm-wt-22k/lib_src/eas_dlssynth.c b/arm-wt-22k/lib_src/eas_dlssynth.c index 8606a29..a07262c 100644 --- a/arm-wt-22k/lib_src/eas_dlssynth.c +++ b/arm-wt-22k/lib_src/eas_dlssynth.c @@ -348,11 +348,24 @@ EAS_RESULT DLS_StartVoice (S_VOICE_MGR *pVoiceMgr, S_SYNTH *pSynth, S_SYNTH_VOIC pWTVoice->phaseAccum = (EAS_U32) pSynth->pDLS->pDLSSamples + pSynth->pDLS->pDLSSampleOffsets[pDLSRegion->wtRegion.waveIndex]; if (pDLSRegion->wtRegion.region.keyGroupAndFlags & REGION_FLAG_IS_LOOPED) { +#if defined (_8_BIT_SAMPLES) pWTVoice->loopStart = pWTVoice->phaseAccum + pDLSRegion->wtRegion.loopStart; pWTVoice->loopEnd = pWTVoice->phaseAccum + pDLSRegion->wtRegion.loopEnd - 1; +#else //_16_BIT_SAMPLES + pWTVoice->loopStart = pWTVoice->phaseAccum + (pDLSRegion->wtRegion.loopStart<<1); + pWTVoice->loopEnd = pWTVoice->phaseAccum + (pDLSRegion->wtRegion.loopEnd<<1) - 2; +#endif } else - pWTVoice->loopStart = pWTVoice->loopEnd = pWTVoice->phaseAccum + pSynth->pDLS->pDLSSampleLen[pDLSRegion->wtRegion.waveIndex] - 1; + { +#if defined (_8_BIT_SAMPLES) + pWTVoice->loopStart = pWTVoice->loopEnd = pWTVoice->phaseAccum + + pSynth->pDLS->pDLSSampleLen[pDLSRegion->wtRegion.waveIndex] - 1; +#else //_16_BIT_SAMPLES + pWTVoice->loopStart = pWTVoice->loopEnd = pWTVoice->phaseAccum + + pSynth->pDLS->pDLSSampleLen[pDLSRegion->wtRegion.waveIndex] - 2; +#endif + } return EAS_SUCCESS; } |