Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Muting the Google voice recognition beep sound

I have a test app that uses Google voice in a continuous manner and it plays the beep sound every time Google recognition service is called. I am trying to get rid of the beep sound. I have read threads of muting the music stream but that would not work for me.

I am trying to find the beep file location so I could just go and delete it from the system. I followed this thread, but I cannot see the file in 5.0 system file.

like image 268
con_9 Avatar asked Jun 09 '16 19:06

con_9


People also ask

How do I disable Google Assistant Ding?

Open Android Settings > Accessibility > slide OFF Switch Access > device will vibrate.

How do you mute the beep sound on Speechrecognizer?

If you just want to mute the beep sound for speech recognizer, you just have to mute the AudioManager. STREAM_MUSIC .


2 Answers

Assuming you don't want to mute all streams because you are interested in playing your own sound, this might be a solution for you: Use the Audio Focus API.

So you would have something like this:

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);

I have not tested, whether the Google App (which plays the beep sound) adheres to this request, but generally it should work and its worth giving it a try.

Another option would be to directly mute all sounds coming from the Google App (which includes the Google voice recognition beep sound). The advantage of this method is that there is no interference with any other streaming audio. The following is a link for further detail. Do note, however, that this requires root access: https://android.stackexchange.com/questions/128588/how-do-i-disable-the-google-voice-typing-voice-search-ding-sound.

like image 163
REG1 Avatar answered Sep 27 '22 20:09

REG1


You can use audio manager to control the sounds

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

before you start recognizing call

 audioManager.setStreamMute(AudioManager.STREAM_MUSIC, true);

and after recognition is complete call

audioManager.setStreamMute(AudioManager.STREAM_MUSIC, false);
like image 22
NIPHIN Avatar answered Sep 27 '22 21:09

NIPHIN