One of iMovie '09's more intriguing new features is the ability to easily create an animated travel map. Choose your map style from the Maps & Backgrounds browser, specify how long you'd like the animation to last, apply an optional video effect, and set the start and end points, and you're done. The end result is a very professional looking animated map, showing the progress of your journey.
One problem with this feature is that there's a limited list of places available to use as the start and end points for the journey--and unlike iPhoto '09, there's no obvious way to add a location within iMovie. The other issue is that you can't fix any mistakes that may exist in the location file--a typo in a location's name, or a location that appears in the incorrect position.
The inability to customize the list of locations leaves you with only one apparent solution to starting a journey at a location that's not in the list--choose a point close to your desired starting point, then set a different display name for it. However, this may not always be possible, and really, wouldn't it be better if you could simply teach iMovie '09 about additional locations, or fix mistakes in already-existing locations?
With a little bit of file editing, you can do just that. This hint will require modifying a file within the iMovie '09 application bundle, but it won't require anything more complex than TextEdit. To start, quit iMovie if it's running, and switch to the Finder. Control-click on the iMovie file in the Applications folder and select Show Package Contents from the pop-up menu.
In the new window that opens, navigate into Contents -> Resources. In that folder, you'll find a file named WorldLocations.txt; this is where iMovie stores its location information. Hold down the Option key and drag this file to a safe location--that will make a copy of the file, just in case things go horribly wrong. (They shouldn't; this is a pretty simple operation.)
Next, open the file in a pure text editor that supports Tabs--TextEdit, in plain text more, works great for this. One you open the file, you'll see a whole bunch of entries, one row per location. Each row consists of (up to) four data fields, separated with Tabs: place, region, country, and latitude/longitude. For instance, the entry for Beverly Hills, California, looks like this:
Beverly Hills California U.S.A. 34.075162,-118.398632
To add your own locations to this file, you simply need to duplicate this syntax for each location. You don't need to worry about sorting the file; you can add the new lines wherever you like.
As an example, I wanted to add Boulder, Colorado, to the list, as that's the town where I grew up, and it's still involved in a fair number of my family's video projects. As you can see in the image at right, it's not included in the default iMovie '09 location list.
In TextEdit, I went to the end of the file, and added a line. On the new line, I added the first three (obvious) fields--Boulder, Colorado, and U.S.A.--pressing Tab after each one. (Don't press Tab multiple times to make entries line up with others in the list; just one tab between fields.)
But where do you come up with the longitude and latitude (in decimal, not degrees) for a given location? There are probably a couple hundred sites that do just that, but this one is my favorite, due to its uncluttered interface and easy operation. Just scroll the map around, changing the zoom level as needed, then click on the desired location. The latitude and longitude, in decimal form, will then appear in the boxes at right. Copy the latitude, paste it into TextEdit, type a comma (,), then copy and paste the longitude. So the full line for Boulder, Colorado, looks like this in the WorldLocations.txt file:
Boulder Colorado U.S.A. 40.016958,-105.249023
Add additional locations as desired, then save the file--make sure you leave a blank line at the end of the file, as existed in the original. Once saved, close the file and launch iMovie.
Add a travel map to your project, double-click the map to bring up the Inspector, then click on Start Location (or End Location) and you'll see that your newly-added locations show up in the list.
The main downside to this method is that if Apple ever modifies this file--to fix, for example, typos and inaccurate locations--your customizations will be overwritten.
One semi-solution to that problem is to keep your own file of custom locations, in the same format as Apple's file. If the locations file is overwritten in a future update, you can simply open your file, copy all your custom locations, and paste them into iMovie's file. While not automatic, it's not a lot of work, and shouldn't have to be repeated too often. Hopefully a future iMovie update will make it much easier to add your own locations, and/or fix mistakes in existing locations.
This story, "Add New Locations to IMovie '09" was originally published by Macworld.