Silenciar el sonido de reconocimiento de voz de Google

Tengo una aplicación de prueba que utiliza la voz de Google de manera continua y reproduce el sonido de pitido cada vez que se llama al servicio de reconocimiento de Google. Estoy tratando de deshacerme del pitido. He leído los hilos de silenciar la corriente de la música pero eso no trabajaría para mí.

Estoy intentando encontrar la localización del archivo del pitido así que podría apenas ir y borrarlo del sistema. He seguido este hilo, pero no puedo ver el archivo en el archivo del sistema 5.0.

Suponiendo que no desea silenciar todas las secuencias porque está interesado en reproducir su propio sonido, esto podría ser una solución para usted: Utilice la API de enfoque de audio .

Así que usted tendría algo como esto:

AudioManager am = mContext.getSystemService(Context.AUDIO_SERVICE); ... // Request audio focus for playback int result = am.requestAudioFocus(afChangeListener, // Use the music stream. AudioManager.STREAM_MUSIC, // Request permanent focus. AudioManager.AUDIOFOCUS_GAIN); if (result == AudioManager.AUDIOFOCUS_REQUEST_GRANTED) { am.registerMediaButtonEventReceiver(RemoteControlReceiver); // Play your own sound (or play silence) } am.abandonAudioFocus(afChangeListener); 

No he probado, si la aplicación de Google (que reproduce el sonido de pitido) se adhiere a esta solicitud, pero por lo general debe funcionar y vale la pena darle una oportunidad.

Otra opción sería silenciar directamente todos los sonidos procedentes de la aplicación de Google (que incluye el sonido de reconocimiento de voz de Google). La ventaja de este método es que no hay interferencia con ningún otro audio de transmisión. El siguiente es un enlace para más detalles. Tenga en cuenta, sin embargo, que esto requiere acceso root: https://android.stackexchange.com/questions/128588/how-do-i-disable-the-google-voice-typing-voice-search-ding-sound .

La única solución que he encontrado para silenciar el pitido de reconocimiento de sonido es:

 audio = (AudioManager) getSystemService(Context.AUDIO_SERVICE); audio.setStreamVolume(AudioManager.STREAM_MUSIC, 0, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE); 

Antes de guardar el volumen, por ejemplo:

 AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); current_volume = audioManager.getStreamVolume(AudioManager.STREAM_MUSIC); 

Para volver a restaurar el nivel de volumen, como tenias:

 audio = (AudioManager) getSystemService(Context.AUDIO_SERVICE); audio.setStreamVolume(AudioManager.STREAM_MUSIC, audio.getStreamMaxVolume(AudioManager.STREAM_MUSIC), AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE); 

Espero que te ayude en algo

Puede utilizar el administrador de audio para controlar los sonidos

  AudioManager audioManager=(AudioManager)getSystemService(Context.AUDIO_SERVICE); 

Antes de empezar a reconocer la llamada

  audioManager.setStreamMute(AudioManager.STREAM_MUSIC, true); 

Y una vez completado el reconocimiento, llame al

 audioManager.setStreamMute(AudioManager.STREAM_MUSIC, false); 

Encontré otra solución que funciona bien para mí. Puse la corriente de audio del reproductor de medios a otra corriente, así que podría silenciar la corriente de la música. Espero que ayude a alguien más también.

 afd = context.getResources().openRawResourceFd(R.raw.duduuudududu2); mp.reset(); mp.setAudioStreamType(AudioManager.STREAM_ALARM); myAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC,0,0); try { mp.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getDeclaredLength()); mp.prepare(); } catch (IOException e) { e.printStackTrace(); } mp.start(); 
  • Reconocimiento de voz continua Android - Sin lagunas
  • Comparar voz wav en android o etiqueta de voz (comandos de voz) API
  • ¿Hay alguna manera de detectar si un teléfono Android es compatible con la integración de Voicemail en el registro de llamadas?
  • ¿Puede alguien dar código para la grabadora de voz como una aplicación en el teléfono Android?
  • Android SpeechRecognizer: stopListening () contra cancelar ()
  • ¿Reconoce RecognitionListener.onError () automáticamente SpeechRecognizer.cancel ()?
  • Cambiar voz durante la llamada telefónica de Android
  • ¿Cómo puedo utilizar el reconocimiento de voz sin el diálogo molesto en los teléfonos Android
  • Android compara dos sonidos para la correspondencia fonética
  • Guardar la entrada de audio del motor de reconocimiento de voz de Android Stock
  • Cómo desarrollar aplicaciones de reconocimiento de voz como tom de conversación
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.