Several improvements in audio effects volume control.

- Fixed crash when deleting an effect chained before an effect having volume control
- Changed EFFECT_FLAG_VOLUME_CTRL to implicitely include EFFECT_FLAG_VOLUME_IND
(not need to set both in effect descriptor).
- Volume control changes from one effect to another if needed according to effect enable state
- EFFECT_CMD_SET_VOLUME is only sent when their is an actual change in volume

Change-Id: Ieebaf09157e2627366023569d95516646e03e26c
diff --git a/include/media/EffectApi.h b/include/media/EffectApi.h
index 9f3d0b6..8c120e5 100644
--- a/include/media/EffectApi.h
+++ b/include/media/EffectApi.h
@@ -455,7 +455,7 @@
 //--------------------------------------------------------------------------------------------------
 // description:
 //  Set and get volume. Used by audio framework to delegate volume control to effect engine.
-//  The effect implementation must set EFFECT_FLAG_VOLUME_IND and/or EFFECT_FLAG_VOLUME_CTRL flag in
+//  The effect implementation must set EFFECT_FLAG_VOLUME_IND or EFFECT_FLAG_VOLUME_CTRL flag in
 //  its descriptor to receive this command before every call to process() function
 //  If EFFECT_FLAG_VOLUME_CTRL flag is set in the effect descriptor, the effect engine must return
 //  the volume that should be applied before the effect is processed. The overall volume (the volume