Android – Ecualizador usePreset no funciona (Sin cambios en el efecto de sonido)

Estoy trabajando en la aplicación de radio streaming. Todo está funcionando bien, excepto que el cambio del efecto del ecualizador no afecta al sonido.

Cambiar el efecto del ecualizador llamando a usePreset (preset) no hace cambios en los efectos de sonido.

Aunque no hay error, por qué usePreset no cambia los efectos de sonido.

He probado en samsung galaxy sII con 4.0.3.

public void startPlayer() { // // Check whether we can acquire the audio focus // to start the player // if (!requestAudioFocus()) { return; } if (null != mAudioPlayer) { if (mAudioPlayer.isPlaying()) { mAudioPlayer.stop(); } mAudioPlayer.reset(); } else { mAudioPlayer = new MediaPlayer(); mAudioPlayer.reset(); } try { notifyProgressUpdate(PLAYER_INITIALIZING); try { mEqualizer = new Equalizer(0, mAudioPlayer.getAudioSessionId()); mEqualizer.setEnabled(true); Log.d(TAG, "Audio Session ID " + mAudioPlayer.getAudioSessionId() + "Equalizer " + mEqualizer + " Preset " + mEqualizer.getCurrentPreset()); } catch (Exception ex) { mEqualizer = null; } mAudioPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mAudioPlayer.setDataSource(mCurrentTrack.getStreamURL()); // // Add the Listener to track the player status // mAudioPlayer.setOnCompletionListener(this); mAudioPlayer.setOnBufferingUpdateListener(this); mAudioPlayer.setOnPreparedListener(this); mAudioPlayer.setOnInfoListener(this); mAudioPlayer.setOnErrorListener(this); notifyProgressUpdate(PLAYER_BUFFERING); mAudioPlayer.prepareAsync(); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (SecurityException e) { e.printStackTrace(); } catch (IllegalStateException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } //Get the available presets from the equalizer public String[] getEqualizerPresets() { String[] presets = null; short noOfPresets = -1; if (null != mEqualizer) { noOfPresets = mEqualizer.getNumberOfPresets(); presets = new String[noOfPresets]; for (short index = 0; index < noOfPresets; index++) { presets[index] = mEqualizer.getPresetName(index); } } return presets; } //Set the user preferred presets public void setEqualizerPreset(int position) { if (null != mEqualizer) { Log.d(TAG, "setting equlizer effects " + position); Log.d(TAG, "Equalizer " + mEqualizer + " set Preset " + position); mEqualizer.usePreset((short)position); Log.d(TAG, "Equalizer " + mEqualizer + " current Preset " + mEqualizer.getCurrentPreset()); } } 

Aprecie su ayuda para identificar el problema.

EDITAR Este problema no se ha resuelto todavía. No encontré ningún código de ejemplo que explicara el uso del Preset del ecualizador.

Cualquier referencia al ejemplo de código que utilice la opción Preset bienvenido.

Este es un código fuente completo para el ecualizador, espero que esto te ayude

Tengo el mismo problema. Cuando lo cargue en el emulador producir un error que realmente no sé por qué, siempre dice … audiofx.Equalizer. Y audiofx.AudioEffect. o algo similar. Pero he descubierto que si tienes otro reproductor multimedia como n7player en mi caso, intenta cerrarlo e intentar de nuevo tu reproductor multimedia. En mi caso funciona, pero creo que tiene que ser un método para conseguir un ecualizador que esté activo.

  • Cómo jugar mp3 + g en mediaplayer android
  • Android - Reproducir mp3 directamente desde el flujo de entrada sin escribir en archivos temporales
  • Android muestra flujo de vídeo en MediaPlayer y codifica con MediaCodec
  • Android: reproducir sonido en el botón de clic - Excepción de puntero nulo
  • ¿Establecer el tiempo de espera de MediaPlayer?
  • Reproducir un sonido de res / raw
  • Advertencia de MediaPlayer de Android: Debería tener el controlador de subtítulos ya establecido
  • Recepción de flujo de vídeo desde una cámara IP en android
  • Control de medios de pantalla de bloqueo para reproductor multimedia personalizado
  • Reproducción de un video después de que un video en TextureView de Android tenga problemas
  • Android MediaPlayer: Reproduce recursos de audio en RAW basado en URI
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.