Wednesday, December 17, 2008

Custom Ringtones on the Apple iPhone

Basically in case I forget and because other guides on the 'net seem to skip some steps.

Oh and NO hacking and NO third-party apps for your iPhone are required. This has been done using iTunes 8.02.20, iPhone 2.2, and Windows (XP though Vista will also work)

Basic Preparation:

Create a folder under My Music (or Music) and name it iTunes Ringtones if you haven't already done so. (not a necessary step, but it keeps things tidy)

If you haven't already imported the tune/tone into iTunes copy the file you want to turn into a ringtone into this new folder.

Open iTunes.

Check that your import/ripping format is set to AAC not MP3. Quickest way to do this is by right-clicking a music file. If you don't see "Create AAC version" you need to change it; if you can then you can skip the next step.

To change the import setting:

Go to Edit|Preferences, You should be on the "General" tab. Only one button should be there - "Import Settings..." click that and change "Import Using" to AAC Encoder. Remember after this you might want to change it back if you're ripping CDs for an MP3 player.

Preparing the file

Locate the track in the Music Library of iTunes, if you've yet to import it simply drag it from the Ringtones folder you should still have open.

You may or may not want the full track as the ringtone, if you do then you can skip the next step.

Cutting the track

Right-click the track in iTunes and "Get Info". Choose the "Options" tab and you'll see a "Start Time" and a "Stop Time". If you alter these then the track will only play between those two points .

Don't panic - the full track will still be there and deselecting these two check boxes will play the full track once you've finished.

When selecting the length of the ringtone it is important to note although the iPhone will happily transfer the track across it will not display it if it is less then approximately 7 seconds long. If the full track is less than this you will need to loop the track (beyond the scope of this guide).

[Update - From Jeff in the comments it also appears the ringtone can not be over 30 seconds in length]

Duplicate the track

Right-click the track in iTunes and "Create AAC version" a duplicated track will appear in the Library. If you've altered the Start and Stop times as above only this part of the track has been created.

Right-click the duplicated track and "Show in Windows Explorer", this will open the folder it is stored in and highlight the duplicated track. If it isn't already there move the file into your Ringtones folder.

In Windows Explorer right-click the file and rename the extension from m4a to m4r. If you can't see the extensions you will need to enable this (do a search for hide extension and your operating system i.e. Windows XP, Vista etc.)

Make iTunes recognise the ringtone

Drag your renamed file back into iTunes and it'll appear under the heading Ringtones even creating the category if it wasn't already there.

Get it onto your iPhone

If your iPhone is plugged in you can change the sync settings to transfer it, or simply drag it onto the device.

Check it transferred

Once the sync is done your iPhone should now have a Custom heading above the default ringtones (Settings|General|Sounds) and these can be used as the standard tone or selected per contact.

[Update - From Jeff in comments before trying to assign the tone to a contact set it as your default ringtone first. I myself did this just to test the ringtone worked, but did not consider it would be a necessary step. I also did not leave it as the default ringtone, but changed it back before assigning it to a contact so it appears the iPhone may just need that nudge to 'know' it's there]

Feel smug

Because tech support has told you that you can't do this in the UK.

Nota Bene

The steps outlined here probably won't work with DRMed music, they might but I haven't tested it so don't blame me.


Anonymous said...

Can I verify whether you mean mpr extension or should in fact be m4r?

FlipC said...

Quite right m4a > m4r; I've altered the entry thanks.

jeff said...

Works great on a 2.2 phone with iTunes 8.0.2. One thing I might point out--I tried immediately assigning the new ringtone to a contact, and I had to first go in and set it as my standard ringtone. Then I could assign it to the contact and reset my standard rigtone. Thanks for the info

jeff said...

One other thing I found...the ring tone has to be 30 seconds or less, or it won't work.

FlipC said...

Thanks Jeff I've noted this in my entry accordingly - I'm glad at least one other person has got this to work :-)

jeff said... last thing...I had problems with some ringtones unless I first deleted iTunes' reference to the duplicate AAC before importing the .m4r file. Thanks again for the instructions. This is a great feature.

FlipC said...

Interesting - I didn't. I imported the file into the Library, iTunes stuck it where it wanted and I then moved it to my created Ringtones folder. All I got was a an error that iTunes couldn't sync the now non-existent file. But that's good to know if anyone else has any problems.