View previous topic :: View next topic |
Author |
Message |
layingback Regular Visitor
Joined: Feb 12, 2009 Posts: 124
|
Posted: Sun Apr 18, 2010 10:09 am Post subject: |
|
|
Another, admittedly minor, effect of renaming that file is that, eg, "St. Leonards" is pronounced "S T Leonards" (as 3 words)!
Clearly some entries in cphoneme.dat are needed, but certainly not all. _________________ Go Premium X / Go 1005 |
|
Back to top |
|
|
layingback Regular Visitor
Joined: Feb 12, 2009 Posts: 124
|
Posted: Sun Apr 18, 2010 10:41 am Post subject: |
|
|
mikealder wrote: | geddit wrote: | Or have I missed the obvious. |
Quite possibly, the file you need to re-name is in the Western_Europe map folder and is called:
cphoneme.dat
Which you rename to:
cphoneme.old
The other part of the fix doesn't seem to apply to the European based devices as the file that MVL mentioned to add/ edit phrases in simply isn't present on a European machine - Renaming the file in the map folder though will make a noticable difference - Mike |
The first part is fine, but to the latter part, we do have roadnr.EnglishGb6.7lex, so if we had the full details of the US Hwy naming it could possibly be adapted to UK, by just adding it to this file?
I wonder if this is the entire code (ffom the linked posts): Code: | "(^|[ \t]+)US[ \-]*([0-9])([1-9][0-9])([^0-9])" = "\1 \s US \2_\3 \4"
"(^|[ \t]+)US[ \-]*([0-9])0([0-9])([^0-9])" = "\1 \s US \Nx \2 oh \Nx \3 \4"
"(^|[ \t]+)US[ \-]*([0-9][0-9]?)([^0-9])" = "\1 \s US \2 \3"
"(^|[ \t]+)HW[ \-]*([0-9])([1-9][0-9])([^0-9])" = "\1 Highway \2_\3 \4"
"(^|[ \t]+)HW[ \-]*([0-9])0([0-9])([^0-9])" = "\1 Highway \Nx \2 oh \Nx \3 \4"
"(^|[ \t]+)HW[ \-]*([0-9][0-9]?)([^0-9])" = "\1 Highway \2 \3"
"(^|[ \t]+)I[ \-]*([0-9])([1-9][0-9])([^0-9])" = "\1 Interstate \2_\3 \4"
"(^|[ \t]+)I[ \-]*([0-9])0([0-9])([^0-9])" = "\1 Interstate \Nx \2 oh \Nx \3 \4"
"(^|[ \t]+)I[ \-]*([0-9][0-9]?)([^0-9])" = "\1 Interstate \2 \3" |
If so then perhaps changing US to M, and HW and Highway to A, and I and Interstate to B might work... _________________ Go Premium X / Go 1005 |
|
Back to top |
|
|
mikealder Pocket GPS Moderator
Joined: Jan 14, 2005 Posts: 19638 Location: Blackpool , Lancs
|
Posted: Sun Apr 18, 2010 6:35 pm Post subject: |
|
|
layingback wrote: | The first part is fine, but to the latter part, we do have roadnr.EnglishGb6.7lex, |
6,7 would indicate a TomTom Go 910 TTS file which is very different in construction to the x20 and newer devices which employ considerably smaller TTS files, if you are trying to mess around with the files on a 910 I am doubtfull mvl's advice will be applicable as its for the later devices - Mike |
|
Back to top |
|
|
layingback Regular Visitor
Joined: Feb 12, 2009 Posts: 124
|
Posted: Mon Apr 19, 2010 11:57 am Post subject: |
|
|
I have those files from the Loquendo 7 upgrade to fix stutter days I believe.
There's no way to use the regular expression data in a .lex file. I tried creating a .rex file with the potentially correct M, A and B substitutions, but the problem is getting it loaded ;-)
I tried using Gb, GB and US variants of the \LoquendoTTS\data\roadnrEnglish{XX}.rex filename possibilities. Presumably US won't get loaded unless the current maps are US maps. But I couldn't get Gb or GB to work either. Without some way to "see" what gets loaded I can only presume that there is some change in the code required to load a \LoquendoTTS\data\roadnrEnglishGb.rex file.
Pity!
Note that I may not have been exhaustive on this test, my 720 refurb is a pain to reboot after a reset, and usually takes 2 or 3 tries, sometimes many more (marginal internal memory timing?), so I haven't tested every possibility, just the more likely ones (IMHO).
FWIW, Here's what I was trying for the file contents if anyone is interested: Code: | "(^|[ \t]+)M[ \-]*([0-9])([1-9][0-9])([^0-9])" = "\1 \s M \2_\3 \4"
"(^|[ \t]+)M[ \-]*([0-9])0([0-9])([^0-9])" = "\1 \s M \Nx \2 oh \Nx \3 \4"
"(^|[ \t]+)M[ \-]*([0-9][0-9]?)([^0-9])" = "\1 \s M \2 \3"
"(^|[ \t]+)A[ \-]*([0-9])([1-9][0-9])([^0-9])" = "\1 A \2_\3 \4"
"(^|[ \t]+)A[ \-]*([0-9])0([0-9])([^0-9])" = "\1 A \Nx \2 oh \Nx \3 \4"
"(^|[ \t]+)A[ \-]*([0-9][0-9]?)([^0-9])" = "\1 A \2 \3"
"(^|[ \t]+)B[ \-]*([0-9])([1-9][0-9])([^0-9])" = "\1 B \2_\3 \4"
"(^|[ \t]+)B[ \-]*([0-9])0([0-9])([^0-9])" = "\1 B \Nx \2 oh \Nx \3 \4"
"(^|[ \t]+)B[ \-]*([0-9][0-9]?)([^0-9])" = "\1 B \2 \3" |
_________________ Go Premium X / Go 1005 |
|
Back to top |
|
|
MARViN2003 Regular Visitor
Joined: Nov 27, 2005 Posts: 132 Location: Stroud, Gloucestershire
|
Posted: Tue May 11, 2010 5:58 pm Post subject: |
|
|
I've been trying to figure this out as well.
The Lequando7 files seem to use rex and lex files that are plain text now (rather then the ones with the bits dropped that they used for 6.7 - 6.9) which makes editing them easier.
First I think that the US abbreviation have a - after them (US-66 or I-66) which needs to be taken out of the file.
Code: |
"(^|[ \t]+)M*([0-9])([1-9][0-9])([^0-9])" = "\1 M \2_\3 \4"
"(^|[ \t]+)M*([0-9])0([0-9])([^0-9])" = "\1 M \2 0 \3 \4"
"(^|[ \t]+)M*([0-9][0-9]?)([^0-9])" = "\1 M \2 \3"
"(^|[ \t]+)A*([0-9])([1-9][0-9])([^0-9])" = "\1 A \2_\3 \4"
"(^|[ \t]+)A*([0-9])0([0-9])([^0-9])" = "\1 A \2 0 \3 \4"
"(^|[ \t]+)A*([0-9][0-9]?)([^0-9])" = "\1 A \2 \3"
"(^|[ \t]+)B*([0-9])([1-9][0-9])([^0-9])" = "\1 B \2_\3 \4"
"(^|[ \t]+)B*([0-9])0([0-9])([^0-9])" = "\1 B \2 0 \3 \4"
"(^|[ \t]+)B*([0-9][0-9]?)([^0-9])" = "\1 B \2 \3"
|
I'll experiment and see if I can find the filename.
I would think it should be roadnrEnglishGB.rex |
|
Back to top |
|
|
layingback Regular Visitor
Joined: Feb 12, 2009 Posts: 124
|
Posted: Fri May 14, 2010 9:42 am Post subject: |
|
|
Glad to see someone else having a go at this! Would be huge if ... :-)
The hyphen is not normally pronounced in USA by humans, so didn't worry initially about this for UK, but you could well be right, as I'm not sure of the exact format used when UK road numbers were originally substituted for US ones, way back in the early '90's. If we get it to work it will need some fine tuning anyway, as 3 digit road numbers are traditionally pronounced differently, we don't usually say A-four-nineteen, preferring A-four-one-nine, but I-195 would be I-one-ninety-five. Although we do say M-twenty-seven the same as they say I-ten. But we gotta get it to work first.
[ This would be soooo easy for TT ... ] _________________ Go Premium X / Go 1005 |
|
Back to top |
|
|
MARViN2003 Regular Visitor
Joined: Nov 27, 2005 Posts: 132 Location: Stroud, Gloucestershire
|
Posted: Fri May 14, 2010 3:59 pm Post subject: |
|
|
Getting the single number announcements going shouldn't be a problem once we get the thing reading the file! |
|
Back to top |
|
|
MARViN2003 Regular Visitor
Joined: Nov 27, 2005 Posts: 132 Location: Stroud, Gloucestershire
|
Posted: Fri May 14, 2010 4:35 pm Post subject: |
|
|
Getting closer - although she is saying 'After I300 yards' (I 3 zero zero) so I have managed to change what she is saying!
Here are the steps I took.
Turned on the log file for LoquendoTTS. This is in the \LoquendoTTS\default7.session file
Code: |
[b]"LogFile" = "/mnt/sdcard/LoqLog.txt"[/b]
|
In the log file I found that Loquendo was reporting Unable to open defaultEnglishGb configurator file "/mnt/movinand/LoquendoTTS/data/defaultEnglishGb.ycf"
Looking at the Loquando Data directory, the only .ycf file I had was a roadnrEnglishUS.ycf
Inside that it points to the roadnrEnglishUS.lex and roadnrEnglishUS.rex files.
So I copied the file and renamed if defaultEnglishGb.ycf
This was when I got the strange yardage pronouncements.
The log file is now saying it can't find defaultEnglishGb.lex so my next step is to make one of these... |
|
Back to top |
|
|
Trevor1234 Frequent Visitor
Joined: Apr 30, 2005 Posts: 810 Location: Milton Keynes
|
Posted: Sat May 15, 2010 6:09 pm Post subject: |
|
|
Well, I must admit that just renaming the cphoneme.dat to cphoneme.old as suggested makes one hell of a difference. So simple but very affective. Thanks _________________ Tomtom Go 720.
Navcore 9.510
Central and Western Europe v855.2884
GPS World Traffic cameras
Home 2.7
iPhone 3G |
|
Back to top |
|
|
MARViN2003 Regular Visitor
Joined: Nov 27, 2005 Posts: 132 Location: Stroud, Gloucestershire
|
Posted: Sun May 16, 2010 4:22 pm Post subject: Fixed: pronunciation of GB road numbers Loquendo 7 |
|
|
Right I've got it pretty much sorted after a few hours of head scratching and trial and error testing...
All single and double digit roads are pronounced as they were (A46 is A Forty-six)
All treble and quad digit roads are pronounced as separate digits (A4171 is A Four-One-Seven-One)
I had to make a total of 5 extra files and place them in the \LoquendoTTS\data directory:
defaultEnglishGb.lex
defaultEnglishGb.ycf
roadnrEnglishGb.ycf
roadnrEnglishGb.lex
roadnrEnglishGb.rex
Not all 5 files may be necessary, but I wanted to add them all as this stopped the errors for non-existent files in the error log. There was also an error in one entry of a .lex file which I also too k out.
for defaultEnglishGb.lex I just copied the SMSEnglishGb.lex file and renamed it
defaultEnglishGb.ycf and roadnrEnglishGb.ycf are identical and just tell Loquando where to find the lex and rex files for the road numbers.
Code: | "RegExp" = "roadnrEnglishGb.rex"
"lexicon" = "roadnrEnglishGb.lex" |
roadnrEnglishGb.lex lists pronounciations for road abbreviations, similar to the SMS lex file, I've changed some of mine from the original US version (ie br = bridge rather than branch). I can't post it as code here as some of the XML tags are disallowed in the forum code. PM me if you can't create it yourself.
and finally roadnrEnglishGb.rex which changes the pronunciaton of 3 and 4 digit A and B roads
Code: | "(^|[ \t]+)A[ \-]*([0-9])([0-9])([0-9])([^0-9])" = "\1 \s A \2_ \3_ \4_ \5"
"(^|[ \t]+)A[ \-]*([0-9])([0-9])([0-9])" = "\1 \s A \2_ \3_ \4"
"(^|[ \t]+)B[ \-]*([0-9])([0-9])([0-9])([^0-9])" = "\1 \s B \2_ \3_ \4_ \5"
"(^|[ \t]+)B[ \-]*([0-9])([0-9])([0-9])" = "\1 \s B \2_ \3_ \4"
"(^|[ \t]+)M[ \-]*([0-9])([0-9])([0-9])([^0-9])" = "\1 \s M \2_ \3_ \4_ \5"
"(^|[ \t]+)M[ \-]*([0-9])([0-9])([0-9])" = "\1 \s M \2_ \3_ \4 |
As you can see I was wrong about removing the - in each line of the code, it is necessary for some reason, and also the \s is required so that you get a full letter sound (rather then an a as in apple).
I also added the same code for Motorways, but it's up to you if you use that as well - I haven't tested that yet.
The only thing I may try and do is to get it saying A100 as A one hunderd rather than A one zero zero etc, but I'll have to work out the correct syntax for the replacement for hundreds... |
|
Back to top |
|
|
theripper Pocket GPS Verifier
Joined: Feb 07, 2006 Posts: 581 Location: Medway Towns, Kent
|
Posted: Sun May 16, 2010 5:00 pm Post subject: |
|
|
Excellent work MARViN2003, any possibility of zipping them up and creating a link so we can all try them? |
|
Back to top |
|
|
MARViN2003 Regular Visitor
Joined: Nov 27, 2005 Posts: 132 Location: Stroud, Gloucestershire
|
|
Back to top |
|
|
theripper Pocket GPS Verifier
Joined: Feb 07, 2006 Posts: 581 Location: Medway Towns, Kent
|
Posted: Sun May 16, 2010 5:26 pm Post subject: |
|
|
Thanks
will give it a try on my run tomorrow and try to get back to you with any issues that I notice. |
|
Back to top |
|
|
MARViN2003 Regular Visitor
Joined: Nov 27, 2005 Posts: 132 Location: Stroud, Gloucestershire
|
Posted: Sun May 16, 2010 6:41 pm Post subject: |
|
|
found one already,
For B4070 it said B four naught seventy.
Removing the ^ from the forth sets of (^[0-9]) fixed the seventy, it now says B four naught seven zero, but not sure where it is getting the naught from,
I wonder if this is why the US version had seconds zeroes replaced in there. I'll give it a try and post a fix if it works. |
|
Back to top |
|
|
MARViN2003 Regular Visitor
Joined: Nov 27, 2005 Posts: 132 Location: Stroud, Gloucestershire
|
Posted: Sun May 16, 2010 6:51 pm Post subject: |
|
|
That helped. Now says B four-zero-seven-zero as it should
I've updated the .zip file
Code: | "(^|[ \t]+)A[ \-]*([0-9])([1-9])([0-9])([0-9])" = "\1 \s A \2_ \3_ \4_ \5"
"(^|[ \t]+)A[ \-]*([0-9])0([0-9])([0-9])" = "\1 \s A \2_ zero \3_ \4"
"(^|[ \t]+)A[ \-]*([0-9])([0-9])([0-9])" = "\1 \s A \2_ \3_ \4"
"(^|[ \t]+)B[ \-]*([0-9])([1-9])([0-9])([0-9])" = "\1 \s B \2_ \3_ \4_ \5"
"(^|[ \t]+)B[ \-]*([0-9])0([0-9])([0-9])" = "\1 \s B \2_ zero \3_ \4"
"(^|[ \t]+)B[ \-]*([0-9])([0-9])([0-9])" = "\1 \s B \2_ \3_ \4"
"(^|[ \t]+)M[ \-]*([0-9])([0-9])([0-9])([0-9])" = "\1 \s M \2_ \3_ \4_ \5"
"(^|[ \t]+)M[ \-]*([0-9])([0-9])([0-9])" = "\1 \s M \2_ \3_ \4" |
|
|
Back to top |
|
|
|
Posted: Today Post subject: Pocket GPS Advertising |
|
|
We see you’re using an ad-blocker. We’re fine with that and won’t stop you visiting the site.
Have you considered making a donation towards website running costs?. Or you could disable your ad-blocker for this site. We think you’ll find our adverts are not overbearing!
|
|
Back to top |
|
|
|