Notices


Reply
Thread Tools
kazuki's Avatar
Posts: 115 | Thanked: 18 times | Joined on Jan 2010
#71
quick question. i got the poi to turn on/off, but i couldn't get the poi menu that u can choose categories in ovi maps as shown on screenshot. how do u get that?
 

The Following User Says Thank You to kazuki For This Useful Post:
Posts: 137 | Thanked: 150 times | Joined on Jan 2010
#72
I found a slight problem with the python server: it doesn't set any cache control headers so "/Turn Left" gets cached

Also, some roads are called <streetname>/<road number> and the slash turns it into a path for the server.

Edit: at least I think that is what's happening. debugging this stuff is a real pain.

Last edited by CormacB; 2011-01-13 at 20:18.
 

The Following 2 Users Say Thank You to CormacB For This Useful Post:
kazuki's Avatar
Posts: 115 | Thanked: 18 times | Joined on Jan 2010
#73
ok, i found out i was using an older version of the index file. got the poi menu working now. it seems for me, i'm only able to turn get poi to show after some routing, then after that it stays on. but if i don't do routing, the POIs never show up.
 

The Following User Says Thank You to kazuki For This Useful Post:
Posts: 208 | Thanked: 91 times | Joined on Jun 2010
#74
Originally Posted by Blaizzen View Post
Edit: Should mention its only English for now, to change the language, search for "//show manuvours" in the html file to see the speech part and change the words accordingly.
This should be still better then Sygic's rubbish. The voice only says left and right and it can't even get that right, its told me to turn the wrong way multiple times in the past even though the route on the map says otherwise.
 

The Following User Says Thank You to jaimex2 For This Useful Post:
Posts: 1,203 | Thanked: 3,027 times | Joined on Dec 2010
#75
Love this one:
Code:
case 1:
text2say = ("no idea good luck");
break;
The only thing I'd say at the moment, based only on the video uploaded to youtube, not knowing the speed of the vehicle/scale of map was it announced the turning a bit early. Looking at the current conversation though I see your looking into this information. What about moving the sayvoice call from ShowSelectedManeuver to updatePosition, calling the function when the dist goes below a predetermined or speed determined value. Several hundred yards may be OK at 30mph but not at 70..ish on a motorway. Getting ahead of myself I know but knowing the speed opens up more functions such as camera alerts.

Ok, deep breath. Sorry about the length of this post, documenting findings as I go. I've been looking into pre-recorded messages, taking Nokia/Ovi Maps voices as a starting point as there already in MapLoader, last time I checked.

Nokia Maps voices are linked to here (some missing though - no Surfer ):
http://diabo.110mb.com/symbian/nokiamaps.html#voices

I've downloaded the ~3MB English (GB I think, don't really matter). There may be new versions as this has no speed related guidance. Not tried any since last version for N95-1, so maybe they don't use these anymore or they use TTS. Any one know?

As I think I've said previously, and as you have discovered, each maneuver is created by stringing together a number of predefined statements. In ShowSelectedManeuver() in the latest posted version, you make use aManeuver.getIconIndex() to create the text to be passed to eSpeak. If you download one of the voices and have a look inside the archive you will find a file called config.xml and a folder containing a number of PCM wav files without an extension. They play in VLC but it misses of the last bit of each file for some reason ("You've reached your destina.."). iTunes is fine if you set extension.

The config.xml simply tells what files are linked with each maneuver action. Handily it also has some comments. Taken from part way through:
Code:
<maneuver val="END">
	    <soundfile val="english\english_male\g5ann_001"/>		<!-- you have reached your destination -->
	</maneuver>
	<maneuver val="ROUNDABOUT">
	    <soundfile val="english\english_male\g5mod_005"/>		<!-- at the roundabout -->
	    <roundaboutexit val="1">
				<soundfile val="english\english_male\g5ext_001e"/>		<!-- take the first exit -->
	    </roundaboutexit>
	    <roundaboutexit val="2">
				<soundfile val="english\english_male\g5ext_002e"/>		<!-- take the second exit -->
	    </roundaboutexit>
	    <roundaboutexit val="3">
				<soundfile val="english\english_male\g5ext_003e"/>		<!-- take the third exit -->
	    </roundaboutexit>
As you can see, if it the maneuver value is END it simply references to g5ann_001. If your at a roundabout and need the second exit, you would play g5mod_005 followed by g5ext_002e. <maneuver val=XXX> seems to tie in with Maneuver's this._action, roundaboutexit I presume with this._turn.

Further more, the file also contains information relating to distances at which to play certain files as a min/max range, handy.

As we now have a way of sending requests to a python script, it opens up more options for audio playback. To make use of the Ovi Maps voice files the data being transmitted would have to change but it would allow it to handle translations better as you only have to provide the config.xml with the translation.

Python or even JS side of it would be to parse the XML file on start-up to populate an array matching that of the Maneuver's actions to the correct soundfile. You could then either send each the path to each voice file one at a time or together to python to play. Depends on how fast the XMLHttpRequest()'s are handled vs time taken to split a url request in python.

Theres no reason why the commands can't be pre-recorded for clarity/translation and the street names via TTS by optionally appending something like "onto xxx street" to the command in the native translation.

I personally like the pre-recorded option as it gives the user the option of providing their own translations, be it because the prefer any combination of female/male/old/young/regional accent/posh or celebrity impressions such as Yoda's: Hmm Turn left you must.

Traffic/ Speed Cams idea:
this._mapModel.createLayer is used during routing to display the information. No reason why, with the correct code these couldn't be added. Don't see no reason why Speed Cams couldn't just be POIs. http://www.scdb.info/en/plugin-google-earth/ provides a .kmz file I've used before with RoadRunner.

Anyway, that's it for today. 6 days straight of 5am starts, on the go for 18.5 hours a day kinda takes its toll.
 

The Following 13 Users Say Thank You to Android_808 For This Useful Post:
oz87's Avatar
Posts: 90 | Thanked: 14 times | Joined on Mar 2010 @ Lebanon
#76
guys is this still under progress or can we use it?
sorry but i don't understand the process!
 

The Following User Says Thank You to oz87 For This Useful Post:
Tiboric's Avatar
Posts: 433 | Thanked: 312 times | Joined on Nov 2009 @ U.K
#77
WOW guy's how did I miss this thread. your doing some awesome work.
only used ovi maps once and that was enough now for me.
but you look like your making some real head way in making it useful.

KUTGW
 

The Following User Says Thank You to Tiboric For This Useful Post:
Posts: 2,829 | Thanked: 1,459 times | Joined on Dec 2009 @ Finland
#78
Originally Posted by oz87 View Post
guys is this still under progress or can we use it?
sorry but i don't understand the process!
So you read thread and you still do not understand? Pretty helpless situation. Maybe you should ask yourself question: "If I have to ask this question then am I really the kind of person who manages do stuff introduced here"

I bet that this will be hack/progress that never ends. It could be that devels here manage to do actually decent voice guidance "addon" to ovi maps but I would advice to take it easy now and enjoy just seeing this stuff happen.
__________________
TMO links: [iSpy] - [Power search] - [Most thanked] - [Cordia - Maemo5 UI on top MeeGo Core] - [CommunitySSU]
 

The Following User Says Thank You to slender For This Useful Post:
oz87's Avatar
Posts: 90 | Thanked: 14 times | Joined on Mar 2010 @ Lebanon
#79
lool ur right but not all of us are familiar with devels work and the process i saw the html attachment and the voice links and yesterday's update so i thought its cooked already...sorry for being a noob i think!
 

The Following 2 Users Say Thank You to oz87 For This Useful Post:
Posts: 1,994 | Thanked: 3,342 times | Joined on Jun 2010 @ N900: Battery low. N950: torx 4 re-used once and fine; SIM port torn apart
#80
Quick reply...
I haven't thought that I would say this:
Ovi Maps are in some aspects better than Modrana

They can do offline routing (Modrana still cannot), they pronounce it turn-by-turn (Modrana can do it, but requires Internet for routing), they use vector data (though Satellite is obviously not vector), they can show 3D buildings (good for showing off Eiffel Tower; not practical), they have ability to show tilted map (Modrana is going to).

So, Modrana will soon catch up.
Ovi cannot log your tracks (can it?), Ovi uses proprietary vector data, while Modrana can use OpenStreetMap.

Fundamental difference: Ovi uses HTML, while Modrana uses Python, and I would prefer XUL.

Some cold water: you need prior written permission of Nokia gate5 GmbH to disclose, copy or duplicate unpublished proprietary information inside index.html
 
Reply


 
Forum Jump


All times are GMT. The time now is 00:29.