Pages

Monday 5 November 2007

Heads up: Nokia Multimedia Transfer v1.2

Thanks to comment poster Michele for pointing me to Nokia's updated version of NMT. Nokia is hard at work on this tool and it sounds like (I've yet to install it) it has some nice tweaks in it now.

Though it's also been pointed out that the old profiles, such as those offered here, are NOT compatible. So DON'T upgrade right now if you have an unsupported phone (check the list on Nokia's site).

Admittedly going back through the profiles is not high on my priorities right now... so don't expect to see a matching update from me for a couple of days.

There is an encouraging message in NMT's FAQ page, suggesting Nokia does know we want more phones - "We are continuing to increase the number of Nokia devices supported by Nokia Multimedia Transfer. Unfortunately, we will not be able to provide support for all Nokia devices, particularly those with limited capabilities." Essentially please be patient.

The update should be on auto-update otherwise at http://europe.nokia.com/mac

Tuesday 11 September 2007

Nokia Multimedia Transfer updated again

Here's a belated note that Nokia Multimedia Transfer has been updated to v1.1.1.

As far as profiles go, it now supports the Nokia XpressMusic 5700 phone.

The update isn't listed on the main website yet but can be downloaded through the app itself. I haven't noticed any other changes yet.

Monday 3 September 2007

Because you demand it: 6600

I have just updated my Nokia Multimedia Transfer profiles to include a 6600 profile.

Note that this is experimental and untested (I don't have a 6600, plus it's the only model in its class). For example you may have problems with audio video transcoding, for example, everything I read suggests the phone doesn't support MP3, so you're stuck with 3GP files (and I'm actually not sure if NMT will fall back that far. I'd like to know...

Download it here.

Friday 3 August 2007

Nokia Multimedia Transfer v1.1 Beta Profiles

Okay I have gone through and cleaned up the profiles for the new 1.1 Beta version of Nokia Multimedia Transfer. Because of added built-in support, I don't have as many profiles any more, so I'm bundling them into one file:

Nokia Multimedia Transfer currently has built-in support for (see Nokia's site for the full list):

  • All N-Series phones through N76 and N95
  • All E-Series phones through E90.

Update #1: As of v1.1.1, Nokia added support for the XpressMusic 5700.

Therefore where I previously had E6x profiles, these are no longer required.

I currently have profiles for download for:

S60 3rd Edition Feature Pack 1 phones:

  • 6110 Navigator
  • 6120 Classic
  • 6290
  • 5700 XpressMusic

(Thanks to Wayne for providing, testing and using the 6120 profile, which I've extended to the other S60 3rd Ed FP1 phones herein.)

S60 3rd Edition phones:

  • 3250
  • 5500 Sport

S60 2nd Edition phones:

  • 6630, 6680, 6681, 6682
  • 3230, 6260, 6620, 6670, 7610

These are all included in this single download file, which you should uncompress to Library/Application Support/Nokia Multimedia Transfer/Profiles in your home folder, and restart Nokia Multimedia Transfer.

New profiles, Plus Music Fixer required

Okay, more confirmation:

If you are using a custom profile and it is not superseded by one built-in to Nokia Multimedia Transfer (ie, you are not using an N-Series or E-Series phone) you will need an upgraded profile or your phone will stop working. I will get those profiles out by the weekend.

Likewise, Plus Music Fixer, in order to sync with Nokia Multimedia Transfer's fixed iTunes Plus files needs an update: here is a trivial experimental update that enables *.mp4 files (note that it will attempt to edit video movies as well so be careful, might throw some errors).

Plus Music Fixer v2.1.0 for S60 3rd Edition

Plus Music Fixer v2.1.0 for S60 2nd Edition

Thursday 2 August 2007

Confirmation: Nokia's Music FAQ

For peace of mind: I've found the following in Nokia's FAQs on the Nokia Multimedia Transfer site for the new Nokia Multimedia Transfer (which you should download here):

"4. Will Nokia Multimedia Transfer transfer iTunes Plus songs (iTunes tracks without digital rights management)?

Yes. Currently iTunes Plus files do not play on existing Nokia products, but are modified during transfer by Nokia Multimedia Transfer so that they do play. The modification process does not affect the audio data, so the original quality of the iTunes Plus songs is preserved (this is different to version 1.0).""

So it's confirmed to be lossless.

"7. Is music artwork transferred?

If you add your own album artwork to an album, it is included with the music files when transferred, but only the latest Nokia products will display this artwork. Artwork that is automatically downloaded from the iTunes Store is not transferred."

And the metadata, including artwork, is preserved, but will only display on the latest Nokia devices - to my knowledge, this would be the current generation of N-series only (eg, N95).

However if you don't have one of those phones and still want to see some metadata I will update Plus Music Fixer (it will require a change to support the .mp4 extension NMT applies, and some detection to make sure it doesn't try to edit videos).

WE WON! Nokia Multimedia Transfer v1.1 Beta

I notice today that Nokia has released v1.1 Beta of its Nokia Multimedia Transfer application for Mac OS X (renamed - previously just Nokia Media Transfer).

And it's got some great new stuff buried under the hood... and this deserves some big text:

Nokia Multimedia Transfer now directly supports iTunes Plus files!*

Thus making my Plus Music Fixer redundant for Mac users, as well as my profile hacks -- Windows users, I suggest you keep an eye on any updates to Music Manager/PC Suite because this means at least part of Nokia is aware of the problem.

It also fixes up some of the profiles, especially for those phones that do not have a camera, such as the E61.

GOTCHAS:

  1. The name change to Nokia Multimedia Transfer means any custom profiles you may have used will need to be moved once you upgrade because a new Application Support/Nokia Multimedia Transfer folder has been created instead (your mileage may vary: the update might be nice and rename it instead of creating a new one).
  2. While NMT now handles the iTunes Plus case, it still forces a transcode as a means of avoiding the issue. However it appears to convert the music losslessly and with much of the metadata intact, which is awesome!
  3. NMT caches the transcoded songs, so you need to keep enough disk space free while it transfers.
  4. The metadata, while fully preserved, is in iTunes format and many phones don't read that. Plus Music Fixer v2.0 can still be used to resolve this.

All in all it's a massive usability improvement and I thank Nokia for hearing our cries and fixing the problem (especially on the news that Nokia plans to launch its own music download offering which conceivably would compete with iTunes).

I suggest you get the update NOW - you can choose to update directly from the NMT menu, and for extra sanity, if you have any N-Series or E-Series phone it is now directly supported, so delete any old profiles you have installed. Note that those still wanting to use my profiles (ie, for the older/newer phones in the 6-series) they may need to be updated. Leave me a comment if they don't work as-is.

Wednesday 25 July 2007

iTunes Agent = Nokia Media Transfer (lite)

Hello Windows fans! A commenter has just put me on to iTunes Agent which looks good enough to be an equivalent to Nokia Media Transfer that I keep going on about for Macs. It allows you to sync iTunes tracks to your phone, which can then be fixed by Plus Music Fixer and played.

So that's my current recommendation:

Windows users - iTunes Agent + Plus Music Fixer

Mac users - Nokia Media Transfer (with modified profile for your phone) or iTuneMyWalkman (if you don't want the hassle) + Plus Music Fixer

Saturday 21 July 2007

Plus Music Fixer v2.0!

Here it is, and it's worth a whole version number jump.

Here's a list of what's changed in this version, which is recommended for everyone:

  • Made the user interface more responsive - you can now cancel operations by pressing Exit at almost any time (the application will quit at the next safe point).
  • Made the user interface more descriptive - since walking through the file system can take a while I now show you what's going on in (I think) a very clean way.
  • Added the ability to copy metadata - this is for those of you with phones that don't display iTunes metadata (ie, those in the E-series or roughly earlier than S60 3rd Edition Feature Pack 1). The title, artist, composer, description, genre and copyright message from iTunes is copied into a location that Nokia's built-in Music player and Gallery applications will read. (Note that for completeness I also copy across the album name, but Nokia's implementation pre-dates the inclusion of album information in the spec, so you probably won't see it appear, at least I don't, sorry!) Note also that the metadata copy is lazy - it requires that there be padding in the file that I can insert the metadata into, though iTunes usually provides plenty (does so in all of the files I own).
  • Should run better on 2nd Edition phones - all of the code has been reworked to eliminate recursive function calls, which don't appear to work too well on the older phones.
  • The Choose lists now list only the file name - previously they included the folder as well, which effectively meant you couldn't see the track name that you were choosing.
  • Give credit to the Python for S60 project in the banner at the top of the screen.

Because I've made it a bit more complicated here's a walk-through of how you should use this:

Installation: First install Python for S60 v1.4.0 or later on your phone, then install the .sis file from the links below.

Important tip! If you use the Sync metadata option, be sure that the Gallery and Music player applications are not running (hold down the Menu key on your phone to check) because otherwise they may fail to detect that you have changed the files.

  1. Copy iTunes Plus music tracks to your phone. This can be achieved using a modified Nokia Media Transfer, or a card reader, or using your phone's USB mode. Just make sure the music is in a folder (and thus viewable in File manager) and not in Messaging (so regular Bluetooth sends of music won't work).
  2. Launch Plus Music Fixer from the Menu of your phone. At this point it will load, and start walking through your phone and memory card making a list of all of the *.m4a files. Once it finishes scanning, it will parse each of the found files, looking for the particular glitch that stops them from playing, and looking to see if the Nokia (3GP) metadata (if any) is in sync with the iTunes metadata.
  3. Once this process completes, the program will tell you the number and names of all of the files Plus Music Fixer thinks need fixing, or whose metadata tags are missing or inconsistent.
  4. If there are files to fix, choose Make playable from the Options soft key. You may either Choose songs to fix (in which case mark them off the list that appears and press OK) or Fix all songs. The program will quickly fix each (or all) of the songs.
  5. If you don't have a phone that reads iTunes metadata, and there are files whose metadata needs syncing, choose Sync metadata from the Options soft key. You may either Choose songs to sync (in which case mark them off the list that appears and press OK) or Sync all songs. The program will quickly sync each (or all) of the songs.
  6. If you want to make sure that your changes took effect (or if you have added more songs to the phone) choose Rescan from the Options soft key. This repeats the process that automatically occurs at startup. If for example you chose to fix and sync all of the songs, and you didn't add any new songs, the rescan should report No songs to fix and No songs to sync.
  7. Press Exit and confirm with OK when you are done.
  8. Launch Gallery and select Tracks (or use File manager or Music player) to verify that the tracks are now playable and/or have viewable metadata.

Download links:

If you haven't already you'll need to get Python for S60 for your phone (refer to my earlier posts as to what version your phone needs).

Then download the appropriate file from here:

Happy music listening!

New Plus Music Fixer is nigh...

I'm so close to having a fresh exciting new version of Plus Music Fixer, some last minute tweaks held me back from uploading it before I had to go out. But it's looking good for being right here by Monday.

Should answer almost everything I've heard about, including copying metadata into the Nokia-friendly format so artists show up in Music player and the Gallery.

Note for those of you who have been requesting transferring the album name over, I've read over the specs of 3GP/MPEG-4 and for the version currently implemented on the phones, sorry no joy (tested on my E61). Those of you with phones in the N95 class might be able to read the album tag, seeing that they have a much newer software, but you'll have to try the new Plus Music Fixer and let me know. The same goes for album art (though at this stage Plus Music Fixer won't attempt to copy that).

Watch this space...

Friday 20 July 2007

Quick Tip: Nokia Media Transfer's cache

A tip for anyone who changes their Nokia Media Transfer settings:

For example, if you are using Plus Music Fixer and you changed your phone's Nokia Media Transfer profile to not transcode your music, you may find some of your media stays in its converted form and doesn't get re-copied.

To fix this delete the files from your phone (use File Manager, or your computer), they are usually in Sound clips/External/iTunes Folder.

Then delete the converted versions from your computer. First quit Nokia Media Transfer from the menu bar and empty out Library/Caches/com.nokia.NokiaMediaTransfer/MediaFileCache.

Restart Nokia Media Transfer and re-transfer to your phone.

Tuesday 17 July 2007

Plus Music Fixer: Global Edition

As promised: here is a new version of Plus Music Fixer which should resolve the issue of not working on phones containing files or folders in a non-US alphabet. Sorry about that.

I have also inserted the version number into the display and the error log (now that there will be multiple versions 'in the wild').

Note that if you want to take the next step in translating it, email me and I'll be excited to send you a list of strings and you'll see the result here.

Download links:

Plus Music Fixer v1.1.0 for S60 3rd Edition, S60 2nd Edition (requires Python for S60 v1.4.0 or later).

More information on this tool

Fix coming to Plus Music Fixer

I've been made aware of a somewhat nasty bug in Plus Music Fixer (via Python). It will report an error and not scan files properly if any of the accessible files or folders on your phone or memory card have special or international characters in them (ie, ASCII is not your whole alphabet).

For now I'm afraid there's no workaround (apart from renaming the files or folders) but I believe I now have a fix, which I'll package up tonight (Tuesday).

Sunday 15 July 2007

Using Plus Music Fixer with Nokia Media Transfer


Nokia Media Transfer, iTunes and Plus Music Fixer are intended to work together. However Nokia does the right thing and makes sure the file will always work by transcoding it, which is lossy and defeats the purpose of Plus Music Fixer.

This applies to Mac users only (as does Nokia Media Transfer) - I have no idea about how Nokia's tools on Windows handle iTunes.

We can fix this by editing the profile for our particular phone to tell Media Transfer that we know what we're doing and to copy the files as-is.

The profiles are Apple (binary) plist files which I've described earlier. I've found a better description here. You can use Property List Editor (from Xcode/Developer Tools - download here or from a CD in the Mac OS X Tiger box or one of the CDs supplied with your Mac) or Pref Setter (note that Pref Setter won't allow you to open the file - you will need to temporarily add a .plist extension).

You need to find the profile for your phone, either inside the Nokia Media Transfer application (right-click the application, choose Show Package Contents, and go to Contents - Resources - Profiles) or in the Library - Application Support - Nokia Media Transfer - Profiles folder.

Open it in Property List Editor or Pref Setter, and add m4a to the conformanceGuaranteedFileExtensions key, and change transcodePurchasedTracks to No. After the edits the plist file will look similar to the image.

Save the profile (rename it back if you need to) and restart Nokia Media Transfer. Now the files will be sent directly to the phone and you can fix them using Plus Music Fixer and then play them using Music player.

Minor update: Plus Music Fixer

Found and fixed the bug that caused the 3rd Edition download (at least - might apply to the 2nd Edition one too but I haven't checked - I might download the emulator and see) to unnecessarily say Python was missing. Note that nothing else has changed - just fixes the annoying warning.

So: here is the fixed download link.

Plus Music Fixer for Nokia Phones


Welcome to an extension of what a did earlier to make iTunes Plus songs play on certain Nokia phones.

This time around I've made a fixer that doesn't require you to mess around with the songs in iTunes or on your computer first.

Update #1: Fixed bug in 3rd Edition installer, updated link.
Update #2: Fixed bug with special characters in files and folders, updated links.
Update #3: New version makes this version totally redundant - check this out instead.

This is made possible by the work of the Python for S60 project which allows simple programs to written for the phone (much simpler than normal!)

This means that to use this fixer, you'll need to install Python for S60, version 1.4.0 or later, followed by my tool, on your phone. This will work for Nokia S60 2nd and 3rd edition phones, but the downloads are different so select the correct ones below.

Note: For simplicity, I'm providing direct links to Python for S60, you can view the downloads via this link (check especially for updates since this post was written). Also note that I provide the 2nd edition links as a courtesy to those of you who I know are using these phones - while the code is identical in both, the 2nd edition version has not been tested. Check here (or in my previous post) to discover the 'edition' of your phone. Lastly, note that some browser/web site combinations cause .sis files to download as text - right-click the links and choose Save/Download.

Update: Please don't download these - go get yourself v2.0 instead - thanks!

S60 3rd Edition (most E-Series, N-Series):

  1. Python for S60 v1.4.0
  2. Plus Music Fixer v1.1.0
    (Note that this installation is self-signed - click Continue when warned by your phone)

S60 2nd Edition (earlier models):

  1. Python for S60 v1.4.0 - 2nd Edition/original or Feature Pack 2 or Feature Pack 3 phones
  2. Plus Music Fixer v1.1

Now my idea with this tool is that you will run it after adding a batch of music to your phone (eg, via the memory card or USB) or after a song fails to play in Music player. When you start it from your menu, it will proceed to scan your phone and any memory card for .m4a music files that may need fixing. It will then tell you whether fixing is required. You can then choose to fix all or selectively by pressing the left softkey (Options) and choosing from the menu options. Fixing takes no time at all.

As always I advise against doing this to your master copy of your music, however I assume that your phone is not your master copy, and often has limited space, so this tool will not create its own backups and you are responsible for backing up your music.

The rescan menu item is useful for repeating the scan after fixing files to verify they were actually fixed.

If an error occurs a message will be shown. A Python error will lead to an "errors.txt" file being stored in the Documents folder of your phone memory (if this exists) which you can view (using Notes) or send (using File manager) to me (please).

Future plans:

  • Also optionally convert iTunes metadata so that it may be viewed in Music player
  • Working on a Music player replacement for those phones that have limited versions of the application (ie, E-series phones)
  • A better icon

This application is made possible thanks mainly to AtomicParsley's description of iTunes files.

Saturday 14 July 2007

Nokia Media Transfer Profile Roundup

Below is a table showing all of the profiles I am aware of and a listing of Nokia phones. This will help me develop some more profiles because it will show which phones have which common features. If your phone isn't listed or is missing information, please let me know. Likewise if I've added a profile and it is marked as untested - let me know if you test it.

Sources for this information are the Nokia Media Transfer application, the Forum Nokia web site and the Gammu phone database.

First, all of the Nokia-supported phones (these can also be found on Nokia's download page - I provide this information for comparison to aid in modifying a profile for your own use):

Name Model OS Resolution Codecs
E90 RA-6 S60 3rd FP1/9.2 800x352
240x320
H.263
H.264
MPEG-4
Real 7-10
AMR-NB
AMR-WB
AAC
AAC+
eAAC+
WMA
MP3
MP4
MIDI
WAV
N95 RM-159
RM-160
240x320
N76 RM-135
RM-149
N80 RM-91
RM-92
RM-93
S60 3rd/9.1 352x416
N91 RM-43
RM-158
176x208
N93i RM-156
RM-157
240x320
N93 RM-55
RM-153
N92 RM-100
RM-102
N77 RM-194
N73 RM-132
RM-133
N71 RM-67
RM-112
H.263
H.264
MPEG-4
Real 7-10
AMR-NB
AMR-WB
AAC
AAC+
eAAC+
MP3
MP4
MIDI
WAV
N75 RM-128 H.263
MPEG-4
Real 7-10
AMR-NB
AMR-WB
AAC
AAC+
eAAC+
MP3
MP4
MIDI
WAV
E50 RM-170
E65 RM-208
E70 RM-10
RM-24
352x416
E61i RM-227
RM-294
320x240
N90 RM-42 S60 2nd FP3/8.1a 352x416 H.263
MPEG-4
Real 7-8
AMR-NB
AMR-WB
AAC
AAC+
eAAC+
MP3
MP4
MIDI
WAV
N70 RM-84
RM-99
176x208
N72 RM-180 H.263
MPEG-4
AMR-NB
AMR-WB
AAC
AAC+
eAAC+
MP3
MP4
MIDI
WAV

 

Second, the rest of the Nokia suite of phones suggesting compatible profiles for download:

Name Model OS Resolution Codecs Notes
6121 Classic ??? S60 3rd FP1/9.2 240x320 H.263
H.264
MPEG-4
Real 7-10
AMR-NB
AMR-WB
AAC
AAC+
eAAC+
WMA
MP3
MP4
MIDI
WAV
Model number required.
Equivalent to N95 or N76
5700 XpressMusic
6110 Navigator
6120 Classic
6290
3250 RM-38 S60 3rd/9.1 176x208 Equivalent to N91.
Untested
Download
E62 RM-88 320x240 H.263
MPEG-4
Real 7-10
AMR-NB
AMR-WB
AAC
AAC+
eAAC+
MP3
MP4
MIDI
WAV
Derived from E61.
Untested
Download
E61 RM-89 Working
Download
5500 Sport RM-86 208x208 Unique resolution.
Untested
Download
6680 RM-36 S60 2nd FP2/8.0a 176x208 H.263
MPEG-4
Real 7-8
AMR-NB
AMR-WB
AAC
MP3
MIDI
WAV
Reported working by commenter.
Download
6681 RM-57 Equivalent to 6680
Untested
Download
6682 RM-58
6630 RM-1
6620 NHL-12 S60 2nd FP1/7.0s Reported working by commenter.
Download
3230 RM-51 Equivalent to 6620
Untested
Download
6670 RH-67
RH-68
6260 RM-25
7610 RH-51
RH-52

 

I have stopped at the Series 60 2nd Edition Feature Pack 1 phones since they are the earliest phones I have working reports for. I do know that the N-Gage didn't work for me (that's a Series 60 1st Edition phone). There are currently no Nokia-supported Series 40 phones and I don't own one so I have no idea of the support of those.

This should put the topic of supported phones to bed for now. I'd expect that most new Nokias once released should get official profiles (if not, complain!).

Wednesday 11 July 2007

Nokia Media Transfer: updated version


Woke up to this this morning:
And I thought "that's interesting, I wonder what's changed?"

So far all I can tell is that the E-Series phones that Nokia has supported are now in the application bundle (still no native E61), but apart from that I haven't seen any behaviour changes yet.

For everyone's reference this version includes profiles for the E50, E61i, E65, E70, E90, N70, N71, N72, N73, N75, N76 (one of flashy new phones), N77, N80, N90, N91, N92, N93 and N95 phones.

Sunday 8 July 2007

Updating my E-Series profiles

Thanks to an update from Nokia, I'm going to pump out some more profile updates. Since Nokia has now released more E-Series profiles (and maybe there will be more on the way) which more closely match the target devices, here are some better profiles.

Manual install I'm afraid -- never did work out the kinks in that installer.

Here is a new E61 profile based on the identical E61i profile provided by the update, with the modification of passing through .m4a files (for iTunes), and changing the video to 320x240 (don't know if this has any impact, not sure why Nokia chose 352x288 for a 320x240 screen).

If you are upgrading simply replace the old e61.profile in Library/Application Support/Nokia Media Transfer/Profiles, or if this is your first install, copy it there, delete /Users/yourname/Library/Application Support/Nokia Media Transfer/Devices.plist, restart Nokia Media Transfer and choose Add Device...

Here also are some more rough tips for you if you are manually editing profiles:

  • If you want to use your phone with multiple machines for music, try making the paths different (they are in the profile) between machines. For example, change "iTunes Folder" to "iTunes Folder 2" on the second machine.

  • The codecTypes under supportedAudioCodecs are FOURCC codes - you can translate these by using Mac OS X calculator (copy the number across with the Calculator in Programmer mode and toggle the ASCII button). This is useful for modifying profiles to other phones.

  • To determine the correct model name and number, enter *#0000# from Standby on your phone.

  • To determine the official specifications of your phone, look for it in the list here.



Willing to make more profiles -- for example this profile would work on an E62 if I got the model number. If you want to help me out, leave the results of *#0000# in the comments below.

Tuesday 19 June 2007

Linked on allaboutsymbian.com!

I indirectly made it to the front page of allaboutsymbian.com. This is pretty cool (to me).

And Nokia has also noticed: an eagle-eyed blogger has noted an official E70 profile! C'mon Nokia cover the whole range.

Note that for some people there still are reasons to customise your profile - for example, to bypass the transcoding of .m4a files or to customise the bitrate of the transcode (I'll show you how soon). I'll try to keep you posted.

Friday 15 June 2007

Nokia stuff: What's next?

Brilliant effort everyone -- in less than a week I've got submission for almost the entire E-Series range plus more. The comments are worth reading on some of these posts for the phone information that Nokia Media Transfer will work for. Proves to me that Nokia's compatibility warning for the tool is purely political. Let's see if they will get their act together and support more phones out of the box soon.

Also we've had iTunes Plus fix - I've been working this workflow to death on my own music. Commenter Bill reports that the Perl libraries (Audio::M4P::QuickTime) have been updated and AtomicParsley is aware of the change made by Apple. This means that there might be a more robust way than mine to fix the songs soon. (Note that I don't expect AtomicParsley to accept my non-standard metadata hack, so don't go looking for that just yet...)

I'm going to be working the phone angle still. For example I'm looking at right now an AppleScript (sorry Windows users) that will work from inside iTunes to fix selected music. I'm also working on making the iTunes support in Nokia Media Transfer even better (for example, you'll notice I haven't offered a way to change Nokia's default bitrate when it transcodes songs/videos, I'm working on that).

What a great way to (somewhat suddenly) kickstart the blog too. And it proves that I need to get a better webhost -- I apologise for inflicting the GeoCities two-click download process on everyone, but that's all I've got right now.

Wednesday 13 June 2007

Testing E90 profile (or What to do sans XCode)

Update #1: Juha reports this is working, so I've moved it into the other list.

I am uploading a untested E90 profile for JuhaN in the comments.

This should work on an E90, but I'm yet to see (I just have the one phone...). So for now treat it with caution.

However it brings up the point that I assumed everyone who wanted would simply have XCode. The main reason why you need XCode is because Nokia's profiles are in binary format.

I believe Nokia's tool will accept either format (though I've been superstitious and left them all as binary).

Once they are text-based, you will be able to (carefully!) edit the profile with TextEdit or similar.

To make them text-based, run plutil -convert xml1 nameof.profile and plutil -convert binary1 nameof.profile from Terminal. Note that you won't need to do this on this particular testing profile (it's been done). I assume plutil came with Mac OS X and not XCode but I'm not sure.

Grab the test profile on the linked page.

Update 12/08/2010: Changed link to GeoCities mirror.

Tuesday 12 June 2007

Administrator: Okay my bad...

I'm working on fixing an issue with the installer that I provided for the E61.

As I noted, it requires an Administrator password.

This should be unnecessary, and might be a cause for NMT to not recognise phones right away. If you have problems simply move the e61.profile file from /Library/Application Support/Nokia Media Transfer/Profiles off the Macintosh HD to the same folder from your home folder.

This really only affects the initial E61 profile -- the rest you currently have to copy yourself anyway.

More E-Series Profiles for Nokia Media Transfer

Update #1: Adding E65 profile...
Update #2: Adding E50, E90 profiles...

I promised that if you send them I'll post them for everyone. I've got to go to work soon so I can't bundle them up nicely however here's what I've received: thanks and keep e-mailing them in...

  • Nokia E61 (my version)

  • Nokia E61i (thanks Leo!)

  • Nokia E65 (thanks Adrian!)

  • Nokia E70-1 (thanks Alice!)

  • Nokia E50 (thanks Harshal!)

  • Nokia E90 (thanks Juha!)


I've also re-uploaded the E61 one without the installer so it can be more easily modified (and if the installer doesn't work).
I'll update this post when I've got more (or when I get better download space) - for now I point you at my GeoCities page for the download links.

Update 12/08/2010: Changed link to GeoCities mirror.

Sunday 10 June 2007

Update: Metadata patch bug fixes

I have fixed a couple of bugs in the metadata syncing patch to AtomicParsley:

  • It will now prevent you from having duplicate Nokia/3GP metadatas if you re-run the tool on the same file, it will instead update the file (removing the old metadata).

  • I've fixed a bug with the use of --overWrite when you run AtomicParsley from the same folder as the music file.


I will update the link in the previous entry so people don't get caught out.

Unified iTunes and Nokia Metadata

Okay as promised, I have a way to get the most out of syncing your music with your Nokia phone.

The Nokia E61 (and I expect all E-series and possibly earlier N-series models) does not read iTunes-style metadata. This means your fancy new fixed iTunes Plus tracks only come up in Music Player using their file name. Which is a bit of drag.

With a bit of nasty hack-work (again!) we can fix this.

Update #1: Fixed some bugs in the patch, new one uploaded.

Nokia Music Player supports (in MPEG4 containers) 3GP-style metadata, including at least:

  • Title (song title)

  • Performer (artist)

  • Genre



The bad news is, it's not easy to get that stuff into the file itself, because having both in there at the same time is non-compliant/non-standard but hey it works and you've got a backup right? (Apple reminds you, now I'm reminding you too.)

I have found that in the same way that Nokia Music Player gracefully ignores iTunes metadata, iTunes also gracefully hides 3GP metadata. Which means all we need is a simple way to update the 3GP metadata. I treat the iTunes metadata as the primary source - after all it's the one you can edit (ie, via Get Info in iTunes) and its the one that's set by the iTunes Store and its the only one there at the beginning.

I've made a patch to the AtomicParsley command line tool that will copy across the above fields from whatever iTunes has them set to.

Firstly at this point, I'm not going to package this one up nicely yet - it's 'on the edge' and could dearly use more testing but for those brave types like me, you can grab the unified diff patch (from the Download link on that page), apply it to the AtomicParsley v0.9.0 source code, recompile (sh build in the AtomicParsley directory) and use it (obviously you'll need Xcode Mac fans, and Windows fans, see the AtomicParsley instructions - I'm not testing there).

Once that's done it's simple to use:

path/to/AtomicParsley --3gp-help
path/to/AtomicParsley path/to/Music/file.m4a --nokia

And the tags will be duplicated. Note that as for all of AtomicParsley the default is to make a copy named something like file-temp-####.m4a. If you're confident that it's working for you, simply add --overWrite to the end of the line. That way you won't confuse iTunes or have to rename the file (because you've already got a backup, right?)

Now when you sync the music with your phone (manually or via Nokia Media Transfer) you should see the Title and Artist (instead of Unknown) in the Now Playing screen and View Details in the Options menu will show the Genre as well. If you update the Music Library, you'll be able to find the music via Title, Artist, and Genre.

Before you ask, I haven't found a way to make Album work properly yet. I suggest that you use Track lists (in the library) to simulate Albums (ie, one track list per album with the tracks listed in order). You can do this directly from iTunes with Playlists using Nokia Media Transfer since that tool converts iTunes Playlists to Track lists for you.

That's enough to make my phone replace my iPod for now, so I'm happy, by all means leave me a comment if there's any issues.

Nokia Media Transfer for E-Series

Nokia seems to have a thing about E vs N.
They are not the only ones - some carriers fall foul of it too.
N-Series unfairly get some fun stuff that us E-Series users don't get offered, officially.

Oftentimes though something can be hacked to make it work. Nokia Media Transfer (at least 1.0 beta) is one of those times.

Update #1: More profiles added from commenters - thanks everyone!
Update #2: Nokia has unofficially pushed out an E70 profile! To get the update simply choose Add Device... from Nokia Media Transfer and click Next (the update lives in /Library/Application Support/Nokia Media Transfer/Profiles).
Update #3: More official support (originally noted here) for E-Series phones -- my Mac has downloaded profiles making some, but not all of the profiles here redundant. The tool downloads E50, E61i, E65, E70 and E90 profiles.

If you go to Nokia's official download page for Nokia Media Transfer, as of this writing almost every N-series phone is supported but no other phones at all. Yet they all share the same OS (on the phone) and roughly the same media components, so this shouldn't be the case.

Not being one to want to miss out a free tool (and knowing that Mac software tends to be more flexible) I mucked around a bit.

If you simply download and run Nokia Media Transfer with, for example an E61 connected via Bluetooth or USB, the Setup Assistant will simply say 'Not supported'. However you'll notice that there is a spinner that says 'Downloading profile updates...', so our phones might become supported. For now though they are not, however that means the profiles are stored somewhere.

The profiles are actually stored in Nokia Media Transfer.app/Contents/Resources/Profiles. However if you want to make a profile, don't put it there. When you've run Nokia Media Transfer at least once, a corresponding folder in Library/Application Support/Nokia Media Transfer/Profiles in your home folder is created. We'll store our profile here.

Now you don't need to follow along with this if you have an E61. I'm going to put my file here for download, but you will have to follow along for other phones. It is downloadable as an installer from here. Simply extract and mount the image, then run the installer, and you're done.

For those of you still following along, first you need a profile to copy from. Use Nokia's device specifications site (if you are unsure) to pick an N-series equivalent to your phone (for the E61 I chose the N73). Go into the application (right-click and choose Show Package Contents) and copy this profile into your Library/Application Support/Nokia Media Transfer/Profiles folder.

Now for the next part you'll need to have installed Apple's Developer Tools (aka Xcode) if you haven't already. The tool we need is Property List Editor. Rename your copied profile (ie, from n73.profile to e61.profile) then select it and select Open With... and navigate to Developer/Applications/Utilities/Property List Editor.

Now in Property List Editor you can change the settings to further match your phone. Here's mostly what I've changed so far:

  • profiles/0/conformanceGuaranteedFileExtensions - added m4a to the array (I'll explain why further down)

  • profiles/0/profileName - change this so it doesn't clash with the other profiles

  • profiles/0/supportedModels/0/modelNames/0 - change this to the correct model name

  • profiles/0/supportedModels/0/modelNumber - change this to Nokia's model number (this is written on the label underneath the battery in the phone - RM-89 for E61)


I also searched through the video entries and changed the 352x288 resolution to the native 320x240 screen resolution of the E61 so videos work too.

The first setting changes Media Transfer's iTunes Plus behaviour - if you've already gone through and used my method of fixing your iTunes Plus songs, they appear in iTunes (and thus to Media Transfer) as .m4a files. We know these files will work with the phone so we tell Media Transfer to simply copy them. Note that if you download new iTunes Plus tracks these will appear to Media Transfer as Purchased tracks, and it will continue to transcode them (otherwise they won't play!), which is the best behaviour. I'd set up a Smart Playlist for iTunes Plus (Kind contains "Purchased AAC") so you know which files you haven't fixed yet.

The remaining settings tell Media Transfer about the model of your phone so that it recognises it.

Now I had a problem where Media Transfer wouldn't recognise my phone after I added the profile, so after saving the file follow these steps:

  1. Quit Property List Editor.

  2. Quit Nokia Media Transfer (and its Setup Assistant) - click Cancel on the Assistant and choose Quit Nokia Media Transfer from the little button in the menu bar.

  3. Go to Library/Application Support/Nokia Media Transfer from your home folder in Finder and delete Devices.plist.

  4. Restart Nokia Media Transfer by double-clicking it, then click it in the menu bar, choose Tools and Settings and then Add Device...

  5. Click Next on the Assistant, then turn Bluetooth on or connect the phone via USB and you should now be able to select your phone.



From this point all of Nokia's instructions should apply to your phone. Note that I unticked the option to make the phone appear as a digital camera -- since the E61 doesn't have a camera this doesn't apply -- though I didn't see anything in the profile to prevent this yet.

I've successfully synced fixed and converted iTunes Plus songs and videos directly from iTunes to the phone via both Bluetooth and USB (with USB being preferred). Note that you choose "PC Suite" for USB mode, which is good because it doesn't quit applications unlike Disk drive mode.

Update 12/08/2010: Changed link to GeoCities mirror.

Nokia Media Transfer (or scooped by the big N)

Well Nokia has somewhat come to the rescue of iTunes Plus fans with the release of its new Nokia Media Transfer beta 1.0.

This smoothes the waters between iTunes, iTunes Plus songs and some Nokia smartphones on Mac OS X.

What this tool does is allow you to treat your Nokia N-Series (or E-Series as I will soon point out) mobile phone as an iTunes syncable device. And when it detects iTunes Plus (ie, Purchased) songs, it automatically retranscodes them using QuickTime before sending them to your phone via Bluetooth and USB.

Note: If you're a purist you are NOT going to be impressed with this solution. Examination of the file Media Transfer creates (by Bluetoothing it back to the computer) I noticed its a re-transcoded to 128kbps MP4 file with no metadata at all. This is not the lossless re-wrap I expected. I'll cover how to fix Nokia Media Transfer's behaviour soon. (This may appeal to some people: the Apple fingerprint seems fully stripped from the file though.)

This is a somewhat clean solution in that only songs that you want to send to your phone are transcoded, and you only ever have one copy of a song (the original, safe, purchased copy) in your iTunes library. However it does mean the sync process takes a little longer, but since the sync process is automatic, it's a dramatic improvement over the manual process.

So this is an alternative solution for Mac OS X users -- Nokia's music tool for Windows will likely achieve the same end (users yet (someone might fill me in...).

However I notice it's not perfect... Nokia's tool doesn't export phone-compatible metadata tags to my E61 (groan!) but guess what, I've got a solution for that coming too.

Download Nokia Media Transfer from http://europe.nokia.com/A4423134.

Saturday 9 June 2007

PutPinfInItsPlace: An iTunes Plus fixer for Nokia mobile phones

I have a Mac.
I have iTunes.
I have a Nokia E61.

So you would think... perfect! Everything is wonderful now that iTunes Plus is out, but...

As is described by following the link above, there is an incompatibility between iTunes and Nokia mobile phones (and potentially other devices on and beyond the Symbian platform).

Update #1: A means of syncing these files to the phone.
Update #2: I have uploaded a version of PutPinfInItsPlace that is compatible with Mac OS X Panther 10.3.9/Java 1.4. Everyone should be covered now, sorry about that.
Update #3: An alternative option for doing the conversion on the phone instead is now available. (Hint: I prefer it this way.)

While there is a simple workaround, again described in the link, which involves re-wrapping the iTunes Plus file in a new AAC file, I wasn't happy with that so I kept investigating.

Turns out there is a single byte that makes all of the difference to such devices, as is borne out by the output of Atomic Parsley (v0.9.0, http://atomicparsley.sourceforge.net):
An iTunes Plus song has the following apparent structure:
...
Atom stsd @ 450 of size: 32871, ends @ 33321
Atom mp4a @ 466 of size: 32855, ends @ 33321
Atom esds @ 502 of size: 51, ends @ 553
Atom pinf @ 553 of size: 32768, ends @ 33321 ~
Atom stts @ 33321 of size: 24, ends @ 33345
...
~ denotes an unknown atom

Whereas the re-wrapped container (that works on the devices) has the following structure:
...
Atom stsd @ 442 of size: 32871, ends @ 33313
Atom mp4a @ 458 of size: 32855, ends @ 33313
Atom esds @ 494 of size: 32819, ends @ 33313
Atom stts @ 33313 of size: 24, ends @ 33337
...

Note that the unknown atom pinf (that's where your iTunes account information appears to be by the way) doesn't appear in the QuickTime Pro-containered file.

I tried to trivially strip out the pinf atom using Atomic Parsley, but no joy, and this is seemingly a red herring - as a hex editor examination of the files will attest to. The re-wrapped version of the file still has my account name in it, yet it doesn't cause the device to baulk!
The only difference in that area of the file is one byte - it's in the size of the esds atom. It appears that QuickTime Pro writes the pinf atom out as a child of esds (and Atomic Parsley and other tools don't parse the file that deeply to care), whereas the iTunes Store/iTunes 7.2 writes the pinf atom out as a sibling instead. It is only this difference (not any metadata) that prevents the file from playing on my phone.
Note that changing this byte means iTunes 7.2 no longer sees the file as a "Purchased AAC audio file", instead Get Info reports simply an "AAC audio file" kind. The Account Name is still visible.

So on to fixing this. You can simply find the byte (get a hex editor, I used the free 0xED - http://www.macupdate.com/0xED) which is in the atom size field immediately before 'esds' appears) and change it to include the pinf size. But this would obviously get tedious.

I've already got 27 iTunes Plus songs and I'm bound to get more, so to help me and you out, here's a very simple tool to change the byte for you.

I named it "PutPinfInItsPlace" since the problem is a misplaced pinf atom (smart hey?). This is a Java application, purely so that iTunes Windows and iTunes Mac users can use it (Windows users - install Java from http://www.java.com).

It will accept a list of files either on the command line, or if no files are given, it will ask you for them with a simple file chooser window. You can select as many files as you like at a time.

It will first back up your file as is in the same folder (renaming it to song name.purchased.m4a), and it won't continue if it can't back up your song, so it should be safe to use.

Then it will walk through the file looking for the misplaced pinf atom, copying the file out as it goes, changing the byte when it finds it then finishing off the file. Messages will let you know of its progress.

You can use the file directly on your iTunes Music folder because the tool preserves the original file names and metadata so iTunes should keep your ratings. If the conversion is successful you can manually delete or move the backups away.

There is more information on the tool in the README.txt file, and I'd appreciate some success or failure comments here. Thanks!

I hope this information (so someone can fix the issue or make a better tool) and tool is useful in the meantime.

You can download the tool from the link on http://geocities.ws/jking_ok/blog.html.



Update 12/08/2010: Changed link to GeoCities mirror.