diff options
Diffstat (limited to 'media/libeffects/lvm')
-rw-r--r-- | media/libeffects/lvm/lib/Bundle/src/LVM_Init.c | 7 | ||||
-rw-r--r-- | media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp | 22 | ||||
-rwxr-xr-x | media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp | 10 |
3 files changed, 24 insertions, 15 deletions
diff --git a/media/libeffects/lvm/lib/Bundle/src/LVM_Init.c b/media/libeffects/lvm/lib/Bundle/src/LVM_Init.c index 20370b7..542c3c8 100644 --- a/media/libeffects/lvm/lib/Bundle/src/LVM_Init.c +++ b/media/libeffects/lvm/lib/Bundle/src/LVM_Init.c @@ -961,6 +961,7 @@ LVM_ReturnStatus_en LVM_ClearAudioBuffers(LVM_Handle_t hInstance) LVM_InstParams_t InstParams; /* Instance parameters */ LVM_ControlParams_t Params; /* Control Parameters */ LVM_Instance_t *pInstance = (LVM_Instance_t *)hInstance; /* Pointer to Instance */ + LVM_HeadroomParams_t HeadroomParams; if(hInstance == LVM_NULL){ @@ -970,6 +971,9 @@ LVM_ReturnStatus_en LVM_ClearAudioBuffers(LVM_Handle_t hInstance) /* Save the control parameters */ /* coverity[unchecked_value] */ /* Do not check return value internal function calls */ LVM_GetControlParameters(hInstance, &Params); + /*Save the headroom parameters*/ + LVM_GetHeadroomParams(hInstance, &HeadroomParams); + /* Retrieve allocated buffers in memtab */ LVM_GetMemoryTable(hInstance, &MemTab, LVM_NULL); @@ -984,6 +988,9 @@ LVM_ReturnStatus_en LVM_ClearAudioBuffers(LVM_Handle_t hInstance) /* Restore control parameters */ /* coverity[unchecked_value] */ /* Do not check return value internal function calls */ LVM_SetControlParameters(hInstance, &Params); + /*Restore the headroom parameters*/ + LVM_SetHeadroomParams(hInstance, &HeadroomParams); + /* DC removal filter */ DC_2I_D16_TRC_WRA_01_Init(&pInstance->DC_RemovalInstance); diff --git a/media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp b/media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp index 40dffd4..d4be9fa 100644 --- a/media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp +++ b/media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp @@ -180,16 +180,16 @@ extern "C" int EffectQueryEffect(uint32_t index, effect_descriptor_t *pDescripto } if(index == LVM_BASS_BOOST){ ALOGV("\tEffectQueryEffect processing LVM_BASS_BOOST"); - memcpy(pDescriptor, &gBassBoostDescriptor, sizeof(effect_descriptor_t)); + *pDescriptor = gBassBoostDescriptor; }else if(index == LVM_VIRTUALIZER){ ALOGV("\tEffectQueryEffect processing LVM_VIRTUALIZER"); - memcpy(pDescriptor, &gVirtualizerDescriptor, sizeof(effect_descriptor_t)); + *pDescriptor = gVirtualizerDescriptor; } else if(index == LVM_EQUALIZER){ ALOGV("\tEffectQueryEffect processing LVM_EQUALIZER"); - memcpy(pDescriptor, &gEqualizerDescriptor, sizeof(effect_descriptor_t)); + *pDescriptor = gEqualizerDescriptor; } else if(index == LVM_VOLUME){ ALOGV("\tEffectQueryEffect processing LVM_VOLUME"); - memcpy(pDescriptor, &gVolumeDescriptor, sizeof(effect_descriptor_t)); + *pDescriptor = gVolumeDescriptor; } ALOGV("\tEffectQueryEffect end\n"); return 0; @@ -494,7 +494,7 @@ extern "C" int EffectGetDescriptor(const effect_uuid_t *uuid, return -EINVAL; } - memcpy(pDescriptor, desc, sizeof(effect_descriptor_t)); + *pDescriptor = *desc; return 0; } /* end EffectGetDescriptor */ @@ -698,10 +698,10 @@ int LvmBundle_init(EffectContext *pContext){ /* Set the headroom parameters */ HeadroomBandDef[0].Limit_Low = 20; HeadroomBandDef[0].Limit_High = 4999; - HeadroomBandDef[0].Headroom_Offset = 3; + HeadroomBandDef[0].Headroom_Offset = 0; HeadroomBandDef[1].Limit_Low = 5000; HeadroomBandDef[1].Limit_High = 24000; - HeadroomBandDef[1].Headroom_Offset = 4; + HeadroomBandDef[1].Headroom_Offset = 0; HeadroomParams.pHeadroomDefinition = &HeadroomBandDef[0]; HeadroomParams.Headroom_OperatingMode = LVM_HEADROOM_ON; HeadroomParams.NHeadroomBands = 2; @@ -965,7 +965,7 @@ int Effect_setConfig(EffectContext *pContext, effect_config_t *pConfig){ || pConfig->outputCfg.accessMode == EFFECT_BUFFER_ACCESS_ACCUMULATE); CHECK_ARG(pConfig->inputCfg.format == AUDIO_FORMAT_PCM_16_BIT); - memcpy(&pContext->config, pConfig, sizeof(effect_config_t)); + pContext->config = *pConfig; switch (pConfig->inputCfg.samplingRate) { case 8000: @@ -1011,6 +1011,8 @@ int Effect_setConfig(EffectContext *pContext, effect_config_t *pConfig){ LVM_ERROR_CHECK(LvmStatus, "LVM_GetControlParameters", "Effect_setConfig") if(LvmStatus != LVM_SUCCESS) return -EINVAL; + ActiveParams.SampleRate = SampleRate; + LvmStatus = LVM_SetControlParameters(pContext->pBundledContext->hInstance, &ActiveParams); LVM_ERROR_CHECK(LvmStatus, "LVM_SetControlParameters", "Effect_setConfig") @@ -1041,7 +1043,7 @@ int Effect_setConfig(EffectContext *pContext, effect_config_t *pConfig){ void Effect_getConfig(EffectContext *pContext, effect_config_t *pConfig) { - memcpy(pConfig, &pContext->config, sizeof(effect_config_t)); + *pConfig = pContext->config; } /* end Effect_getConfig */ //---------------------------------------------------------------------------- @@ -3272,7 +3274,7 @@ int Effect_getDescriptor(effect_handle_t self, return -EINVAL; } - memcpy(pDescriptor, desc, sizeof(effect_descriptor_t)); + *pDescriptor = *desc; return 0; } /* end Effect_getDescriptor */ diff --git a/media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp b/media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp index 9599dcc..941d651 100755 --- a/media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp +++ b/media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp @@ -206,7 +206,7 @@ extern "C" int EffectQueryEffect(uint32_t index, ALOGV("\tLVM_ERROR : EffectQueryEffect index out of range %d", index); return -ENOENT; } - memcpy(pDescriptor, gDescriptors[index], sizeof(effect_descriptor_t)); + *pDescriptor = *gDescriptors[index]; ALOGV("\tEffectQueryEffect end\n"); return 0; } /* end EffectQueryEffect */ @@ -330,7 +330,7 @@ extern "C" int EffectGetDescriptor(const effect_uuid_t *uuid, for (i = 0; i < length; i++) { if (memcmp(uuid, &gDescriptors[i]->uuid, sizeof(effect_uuid_t)) == 0) { - memcpy(pDescriptor, gDescriptors[i], sizeof(effect_descriptor_t)); + *pDescriptor = *gDescriptors[i]; ALOGV("EffectGetDescriptor - UUID matched Reverb type %d, UUID = %x", i, gDescriptors[i]->uuid.timeLow); return 0; @@ -645,7 +645,7 @@ int Reverb_setConfig(ReverbContext *pContext, effect_config_t *pConfig){ } //ALOGV("\tReverb_setConfig calling memcpy"); - memcpy(&pContext->config, pConfig, sizeof(effect_config_t)); + pContext->config = *pConfig; switch (pConfig->inputCfg.samplingRate) { @@ -715,7 +715,7 @@ int Reverb_setConfig(ReverbContext *pContext, effect_config_t *pConfig){ void Reverb_getConfig(ReverbContext *pContext, effect_config_t *pConfig) { - memcpy(pConfig, &pContext->config, sizeof(effect_config_t)); + *pConfig = pContext->config; } /* end Reverb_getConfig */ //---------------------------------------------------------------------------- @@ -2157,7 +2157,7 @@ int Reverb_getDescriptor(effect_handle_t self, } } - memcpy(pDescriptor, desc, sizeof(effect_descriptor_t)); + *pDescriptor = *desc; return 0; } /* end Reverb_getDescriptor */ |