Remove All Ads from XDA
Honor 9 Lite

[REQUEST] Waze Module to allow use of Old Voice Packs

273 posts
Thanks Meter: 51
 
By Valiante, Senior Member on 31st July 2017, 10:20 AM
Post Reply Email Thread
Waze uses celebrity voices for navigation occasionally but they are only available for a limited time.

This was the previous method of getting the voices to work once they were removed from the app: https://www.reddit.com/r/waze/commen..._pack_archive/

It seems the old method of downloading a voice then replacing the .mp3 files in the folder now either result in no audio at all or just a glitchy experience.

It would be great to have a module that allows users to replace the voices with one of the old ones.
Here's a list of celebrity recordings in the new .mp3 format vs the reddit archive that uses .bin files: http://www.mikeyip.com/2016/04/celebrity-for-waze.html

Anyone willing to help out the community and make a simple module to do this? I know a lot of people would appreciate it!
The Following User Says Thank You to Valiante For This Useful Post: [ View ] Gift Valiante Ad-Free
 
 
22nd September 2017, 09:30 PM |#2  
Junior Member
Thanks Meter: 0
 
More
Bump
26th December 2017, 09:56 AM |#3  
Junior Member
Thanks Meter: 2
 
More
How to get Waze celebrity and other voices back onto your Waze app
Hey, Merry Christmas everybody! I finally cracked the code - I hacked the waze celebrity voices back onto my Waze app!
As most of you have figured out, Waze recently disabled the ability to use whatever voices that you copy into the "sound" folder. With older versions you could do so, but now they just won't play when you choose the folder you dumped the voices into. Instead, you'll be greeted with the frustrating sound of silence anytime you choose that voice in settings. Add to this the annoying fact that new celebrity voices are updated onto your voices menu as a promotional thing, only to be automatically deleted after a certain amount of time, and you'll see why I was this close to downgrading my Waze version just to be able to get whatever voice when I could get it! However, after ages of poking at this I finally figured it out: it's just a simple file flag change.

SHORT/GEEK VERSION
*I'm assuming you're rooted.
*Download whatever celebrity voices you want (the folders and their mp3s) into a desired location on your phone for copying and/or backup
*Using the Waze app, download a useless foreign voice and make a note of the name
*Copy all the mp3s of your desired celebrity voice
*/data/data/com.waze/waze/sound/[The useless foreign voice folder]/Paste (overwrite) the desired celebrity voice mp3s over the mp3s already there
*Long press any mp3 you just pasted in/Select all/3-dot menu icon/"Change SE context"/"Enter context manually"
*Manually type in:
Code:
u:object_r:app_data_file:s0:c512,c768
*Press OK
*Change all mp3 permissions to "rw-------" (0600)
*Rejoice!


THOROUGH/NON-GEEK VERSION:
*I recommend being rooted, since you have to be able to access, copy, and edit Waze system files with a root explorer app. How to root your phone is beyond the scope of this short tutorial. Good luck.
*Using Root Explorer, make a separate folder to hold your downloaded voices wherever you want in your file system (I just made a folder called "Celebrity Voices" within /data/data/com.waze/waze/sound, and Waze doesn't screw with it, but it will delete any other celebrity/promotional folders it wants from the "sound" folder on your next update).
*Download whatever celebrity voice you want onto your phone, and copy/paste it into the folder you just made.
*Now do the following: [your new folder]/long press any mp3 file/3-dot menu icon/"Change SE context". You should see a popup window that has something like this under the file name:
Code:
"Current value: u:object_r:app_data_file:s0" (This is why the files DON'T work)
*Now do the same in your Waze "sound" folder /data/data/com.waze/waze/sound/(Any currently working Waze voice folder like "eng_nathan" or whatever)/long press any mp3 file/3-dot menu icon/"Change SE context". Now you should see something like this:
Code:
"Current value: u:object_r:app_data_file:s0:c512,c768" (This is what the files have to be to work)
*Waze won't allow you to just make your own folders you can choose within the app voice menu, because it's not programmed to (this is why it won't screw with the folder you created- it doesn't know it's there!). So, you'll have to copy your desired voice files into an already existing voice folder that you know you won't use and paste them over its files- something like Serbian or another foreign language you don't speak and know you'll never need. Basically you're hijacking the folder Waze uses and replacing it with voices you want.
*First you have to go get those voices on your phone: Waze app/left swipe screen/gear symbol(preferences or settings)/Voice directions. Choose a voice you know you won't need (Example: I use "Deutsch - Mica" for my Arnold Schwarzenegger voice), and tap it to start downloading. This should take you back to the main screen where you'll see the red text showing you the download progress. Wait until it's finished.
*Now go back to your downloaded voice folder: Long press any mp3/Select all (a little square icon)/COPY
*Go into /data/data/com.waze/waze/sound/[the folder of your new Waze voice you just downloaded]/PASTE (choose "yes" if asked to overwrite existing files).
*Long press any mp3 you just copied over/Select all/3-dot menu icon/"Change SE context"/"Enter context manually"
*Manually type in:
Code:
u:object_r:app_data_file:s0:c512,c768
*Press ok. Watch the magic happen. Congrats, you just "hacked" your Waze voices. And also, you just earned a geek point. Score!
*Double check under the mp3 file names that the permissions are set to "rw-------". If not, do the following: Long press any mp3/Select all/3-dot menu icon/Permissions/Only check "Read" and "Write" next to Owner, and set all others to unchecked/Press OK.
*Now go to Waze and see if your celebrity of choice gives you directions.

NOTES:
*Highly recommended- make a text note somewhere on your phone to keep track of what voices are the same as the celebrity voice you hacked in. Download enough voices and you'll find yourself saying "Dammit, was C3P0 the "Gabriela" voice or the "Shahdan" voice?"
*Create a text file somewhere on your phone with the correct SE Context code pre-written into it so you can copy/paste it into any new voice's SE Context Manual entry line(cause that crap's just a pain in the butt to type out on a phone).
*Don't bother screwing with the SE Context of the files BEFORE you copy them into your Waze "sound" folder, because the copy/paste process breaks the changes and you'll just have to do it over again. This one took me a while to figure out.
*I personally never had to reset my phone- I found I could use my new voices immediately.
*Individual mileage may vary, and the folders may not be labeled exactly as written here. Use your imagination, and good luck.
*Don't worry if you change your mind about someday needing some foreign language as originally provided by Waze that you replaced with Morgan Freeman or something. Who knows, you might want to learn Spanish someday! You can always just delete that folder, go back into Waze, and download it as before, and it will start fresh. Just don't forget to back up Morgan...
*You can manipulate these voices in a sound editor and do whatever you want with them as long as the mp3 filenames stay exactly the same as before. If you're a sound geek this can be way fun.
*Anytime a new voice shows up on your phone, copy and paste it over into your personal celebrity voices folder and label its folder so you can identify it easily later on, because they'll just hijack it away from you when its promotional period is over. Just copy them into another foreign language folder as above and it's yours whenever you want.
*I have tried to find all the voices you can download from other websites, but I know there are others out there. I just received and nabbed Santa Claus ("Coca-Cola shill" version) and Liam Neeson (promotion for "The Commuter") on my phone as well. My all-time favorite: T-Pain...
*I am using:
Samsung Galaxy Note 4 running Lineage OS 14.1
Root Explorer 4.1.6
Waze 4.25.0.2


Merry Christmas, or whatever holiday you celebrate at this time of year!
Regzim
The Following User Says Thank You to Regzim For This Useful Post: [ View ] Gift Regzim Ad-Free
11th January 2018, 04:13 PM |#4  
Junior Member
Thanks Meter: 3
 
More
Hi Regzim

I used your method on a rooted phone (which is not mine!) running Kitkat and it worked like a charm.
My own phone isn't rooted and runs Nougat in which there is no access to Waze files. So, I'm looking for a method to use the voice recording feature in Waze on a rooted phone to use an old voice pack and then share it with my non-rooted phone (take a look at this thread)
Any idea?

P.S:
I'm testing a stupid workaround. I installed Waze in Bluestacks and tried to record prompts one by one using stereo mix. The problem is that there's a weird noise on the recordings in Waze. However, there's no noise when I used a voice recording app (Easy Voice Recorder) in Bluestacks.
Do you have any clue why it is so?

Thanks
12th January 2018, 03:24 AM |#5  
Junior Member
Thanks Meter: 2
 
More
Making this work on non-rooted phones...
Hi Sedhadi!
Awesome, I'm glad it worked- I was holding my breath wondering if this was a "my phone only" kind of thing or that maybe they changed the file flag differently for different phones or something.

Hmmm... making this work on a non-rooted phone? That's a tricky chestnut to crack. I think I've seen that thread before in my quest to figure this out, but it seems like most of those methods they mention are older pre-Waze update methods that don't take the SE context into account and are thus no longer useful to newer Waze versions...
I don't have time to sink my teeth into it thoroughly at the moment, but my mind immediately goes to ADB (Android Debug Bridge) push/pull. Basically it allows you to poke around and manipulate files in your phone through a terminal interface on your computer using command line prompts. I'm not sure off the top of my head whether you need to be rooted to use ADB as well. Ironically I don't have any non-rooted phones around to test this out on, so I can't help you there without a thorough web search. However, I couldn't find anything on how to change SE context using ADB, and since getting this to work hinges completely on the SE context, the prognosis doesn't look good. Do a search for "all things android se android commands" for now and see what you can find, but when I get some free time I'll poke around and check out what I can discover as far as method goes.
Also FWIW, there are some apps out there that root your phone for a limited time, so you may be able to get that going just long enough to manipulate the files as needed, but you'd have to work fast, and have Root Explorer ready to go. Disclaimer: some of the temp root apps can be adware bombs, so caveat emptor...

As for the weird sound, I'd need to hear it to be sure but I'm thinking it may be the normal "noise floor" problems (electronic interference, background noise, crappy mouthpiece, etc.) that come with recording anything using your phone's built-in microphone/mouthpiece. Is it a buzzing, a hiss, or what? For those reasons I'm not a big fan of the "record your own directions" function on Waze, as the sound quality mostly comes out pretty crappy in the end because of the technical limits of the mouthpiece.

Regzim

---------- Post added at 03:24 AM ---------- Previous post was at 03:21 AM ----------

P.S., just realized I didn't know what Bluestacks was until I looked it up- since it's an emulator, you might be getting weird noises because of your COMPUTER'S microphone/ audio input device. What kind of mic do you have?
Regzim
The Following User Says Thank You to Regzim For This Useful Post: [ View ] Gift Regzim Ad-Free
12th January 2018, 10:06 AM |#6  
Junior Member
Thanks Meter: 3
 
More
Hi Regzim

Thanks for taking the time to answer.
In that Reddit thread, it was suggested to replace a recorded voice files with a celebrity voice pack instead of doing so to a useless foreign voice. I tested that method and it worked and I could hear the prompts while navigating but the share button didn't activate (which means Waze realized I manipulated the files).
If we find a workaround (like changing SE context (which I tried to pull off on these files as well but failed)), then there will be no need to come up with a solution for non-root phones because we can share the celebrity voice as a recorded voice.

P.S: I didn't use any real mic. I used Stereo Mix (aka What You Hear) feature of Windows. I played the celebrity's voice in VLC and started recording in Waze in Bluestacks. So, no extra noise actually adds up to the source sound. But the result in Waze is awful.
It seems there's something wrong with Waze while recording.

Regards
Post Reply Subscribe to Thread

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes