Estoy tratando de configurar los AudioEffect
parámetros AudioEffect::setParameter
, pero da un error de compilación en Android Studio.
Aquí está mi código:
import android.media.audiofx.Equalizer;
...
private Equalizer mEqualizer = null;
mEqualizer = new Equalizer(0, mMediaPlayer.getAudioSessionId());
mEqualizer.setParameter(0,0);
Esto funcionó en mi antiguo proyecto Eclipse; ahora estoy usando un nuevo proyecto AS, pero da un error: no se puede encontrar el método de símbolo setParameter (int, int)
También intenté llamar setParameter()
por objeto AudioEffect:
import android.media.audiofx.AudioEffect;
AudioEffect effect = null;
effect = new AudioEffect(AudioEffect.EFFECT_TYPE_EQUALIZER,
AudioEffect.EFFECT_TYPE_NULL,
0,
0);
effect.setParameter(0,0);
Entonces obtén el mismo error.
A continuación, se muestran los códigos fuente del SDK de Android:
android-sdk \ android-23 \ android \ media \ audiofx \ Equalizer.java:
public class Equalizer extends AudioEffect {
android-sdk \ android-23 \ android \ media \ audiofx \ AudioEffect.java:
public class AudioEffect {
...
public int setParameter(int param, int value) throws IllegalStateException {
byte[] p = intToByteArray(param);
byte[] v = intToByteArray(value);
return setParameter(p, v);
}
¿Alguien sabe por qué no puedo llamar a este método en Android Studio? (pero funciona en Eclipse).
Android Studio versión 2.1.2 Usando Android SDK 23 (también probé SDK 22 y 21, el mismo error).
Según la documentación , no hay ningún método setParameters
en la clase AudioEffect
, ni tampoco puedo ver el tipo EFFECT_TYPE_NULL
. También revisé mi sdk. Debes estar usando un código desactualizado. Refactorice al SDK más reciente. AudioManager tiene un método setParamters (String keyValuePairs) . Puede ser de tu utilidad.
Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.
En caso de infracción, por favor [email protected] Eliminar
Déjame decir algunas palabras