The Google Assistant only started rolling out to Android 6.0+ smartphone users in March of this year, and only in select regions. We would expect Google to have worked out most of the kinks, but it appears that there may still be some lingering issues. Some users have reported to us that, on occasion, voice output from assistant is not working. Thankfully, XDA Senior Member muena90 spent hours researching the problem  and was able to fix it on his OnePlus 3T. For reference, he was running AOSPA 7.3.0 and was on the Google App version 7.12.24.21. The problem, as he discovered, came down to audio codecs.

Audio codecs are necessary for your device to decode certain audio stream types. Different sound files use different algorithms to store audio data, and audio codecs are needed to read this data. When muena90 discovered that Google Assistant was not speaking to him, he found errors in his device's logs related to audio codecs.

He took a logcat which is simply a capture of the system logs on the device. Looking at these can be helpful no matter what you are having issues with, and it's probably the first thing a developer will ask for if you are reporting a bug. Muena90 discovered through the logcat (shown below) that the MMParser-Extractor (related to Qualcomm processing of audio) threw an error every time the assistant's voice was supposed to speak—such as when asking it to read the weather.

Once muena90 saw these, he did a few Google searches and found that MMParser-Extractor was related to audio codecs but found not much else. They however discovered that the mm.enable.qcom_parser build prop parameter actually houses the default audio codec that the device should use.

Originally the value it had was "2097151" which apparently is an incompatible audio codec to read the audio data sent by the Google Assistant app. Instead, they decided then to Google a recommended build prop file, taking the suggested audio codec instead and replacing their own with the new one. Taking things from random build prop files online is not usually recommended, but in this case it was probably the best solution to fix the issue.

How to Fix Google Assistant Voice Output

The next step requires you to edit the build prop file (you'll need root access). We recommend using a simple build prop editor such as the one below. It's simple with a nice UI and gets the job done.

Once in the build prop app, insert the value "3183219" under the "mm.enable.qcom_parser" parameter, replacing the old numeric value. Then, reboot your phone.

So what's happening with the Google Assistant?

Presumably the number under the "mm.enable.qcom_parser" is referencing a specific audio codec set built into Android. This seems to be the default audio codec for a lot of applications, and the Google Assistant does not expect to use it. Simply downloading and analyzing a recommended build prop was the right answer here as the user was on a custom ROM which did not seem to have a common configuration as regards audio codecs.

It is noteworthy however that the Google Assistant seems to be the only affected application by this codec. Changing the number seems to change the actual range of supported codecs on the device, allowing the Google Assistant to output audio correctly.

When running into issues like these, sometimes a simple logcat is enough to find the problem without the hours of Googling that also were required for this job. If you ever run into the issue, simply changing your build prop file may be enough to fix it and be on your way.