Table of Contents
IntroductionBased on
what this guy (Cleverboy aka gryphondwb) found, I've created a simple program called iRingz to allow batch converts for AAC ringtones. Meaning? This means you can have free Tonez for your iPhonez for as long as this works.
*Note:* This doesn't work on iTunes 7.4.2.***Update:*** Use
SendSong instead. It works for 1.1.1.
***Update:*** If you upgraded to 1.1.2 and use iTunes 7.5, you can use custom .m4r ringtones without hacking. See
RINGTONE Support w/Firmware update 1.1.2 @ Apple for more info. I could update iRingz to support this, if anyone requests for it.
Version 1.2.1Latest version: Robert has given it a test and all seems fine so
here is iRingz Ver 1.2.1!
By the way, please provide feedback on whether it works for you since an iPhone is not living in my house. :)
What you need for 1.2.1:- iTunes 7.4.1
- iRingz + AtomicParsley ver 1.2.1 (This zip file includes iRingz and AtomicParsley)
- Ringtones/Sounds/Songs in some audio format like mp3
- iPhone (duh!)
Steps for 1.2.1:- Get all the files listed in What you need.
- Use iTunes to convert your Tonez into AAC format. See this iTunes page for more help on this.
- Extract the zip file that you just downloaded into a folder.
- Goto the folder (that you just extracted to) and inside it, look for a file called iRingz.exe and run it.
- Hold down shift or ctrl and click on the files you want to select multiple files for conversion. You could also click and drag to select multiple files. If you change your mind, just click cancel.
- Click Open to begin the conversion.
- After conversion, iRingz should popup an explorer window displaying your newly converted tonez. Double click on them to import to your iTunes library and sync to iPhone.
- Profit!
Known Issues (aka read this if you have problems, most likely you won't):
- Attempting to convert files that are in the root directory will probably fail. I haven't tested this and probably won't since there is a simple workaround - put all your tonez in a folder.
- Max filename path length is 255 bytes or 255 characters, an AtomicParsley limitation. If using purely unicode filenames, it becomes even shorter, about 127 characters. This means anything longer than "C:\I don't know why you can't rename your tonez folder\A really very extremely exceedingly exceptionally dreadfully awfully horribly terribly disgustingly incredibly super duper crazy mad insane absurd nonsensical do not try this at home long filename.m4a" won't work.
Workaround: Shorten your filename or folder names, or move the folder holding your tonez to the root directory, ie C:\.
Tonez larger than 4Gb won't get converted since AtomicParsley doesn't support files of that size. I'm not even sure what would actually compel you to attempt converting something even remotely close to that size. "A 4Gb tonez ought to be enough for everyone", unless you don't intend to pick up your iPhone for a very long time. There's no way you can run into this limit since ringtones are limited to 3.1MB in size.
If the old unconverted files already exist in your iTunes library, you can't import the new converted tonez into your library. I'm working on this, see below for details.
Workaround: Remove the old files from your iTunes library first and then run iRingz to convert your files. Import new tonez into library. Fixed in 1.2.1
- It seems that ringtones length may be limited to no longer than 30 seconds. How do I know this? I don't. But someone made a comment about this in a post at the iPhone FAQ. Sobe at the MacRumors forums also discovered that 3.1MB may be the upper limit for tonez.
If you intend to make custom ringtones from songs, you could help test this out. Try converting your songs with iRingz without slicing them down to 30 seconds and import them into your iTunes and sync to iPhone. If this fails, remove the files from your iTunes library. Then use iTunes to trim them to 30 seconds (Robert has provided a guide in comments below) and convert with iRingz. Import to iTunes and sync to iPhone. Lastly, post a comment about your experience.
Workaround: Limit the length of your ringtones to at most 30 seconds. Use iTunes to edit if necessary. Some other tricks that I can think of include lowering the bitrate to 128kbps or 96kbps and speeding up the music file by a small percentage (about 1 - 3%, which is not likely to be noticeable).
Thanks to Francis for reminding me of Audacity to edit sound files. Here's Audacity's guide on cutting files. The section on duplicate and split and splitting and submixes may also be of use. I believe Audacity currently doesn't export to AAC so iTunes is required for that.
This has only been tested on Windows XP, but should work on 2000 and Vista (I think.
Edit: Robert has confirmed it does work on Vista. Thanks Robert!). For the curious, iRingz is entirely free + open source. Source is available on request. Questions?
Mac users, don't fret. You guys aren't left out. A droplet is available for you guys at
iPhone-Ticker (it's in German, but there's a Youtube video that explains the process).
ChangelogWhat's new in iRingz 1.2.1?Other than editing the file to indicate that it's a ringtone, running iRingz 1.2.1 will cause the title to be modified. In order to import files that exist in your iTunes library and for easy identification of modified files, the title will have "_rt" appended to it, as suggested by Robert.
If no title exists, the title will consist of the filename without its extension + "_rt". Example:
Your file - ILoveCustomRingtones.m4a, with no title
After iRingz conversion - ILoveCustomRingtones.m4a, its title will be ILoveCustomRingtones_rt
What's new in iRingz 1.2?This version was only available for a short while because it was discovered it could make your iPhone cry (as you can see below). Get Ver 1.2.1 as it plays well with your iPhone.
If you're curious, this was what changed in 1.2. However, ver 1.2.1 uses a slightly different method now.
Other than editing the file to indicate that it's a ringtone, running iRingz 1.2 will cause the title to be modified. In order to import files that exist in your iTunes library and for easy identification of modified files, the title will have "made on Someday at Sometime" appended to it.
In theory, this should allow you to import the same ringtone over and over again (as long as they are converted through iRingz before you import them), even if they are present in your iTunes library. In practice, well, you have to try it out and see if it works.
Update: Ver 1.2 is out! Hopefully this will fix the problem of not being able to add ringtones that are already in your iTunes library. Get iRingz 1.2 here. Robert has identified that long titles may cause your iPhone to freak out during removal of ringtones. So stick to ver 1.1 for now. Updates to 1.2 will be ready when it's ready.What's new in iRingz 1.1?Implemented francis' suggestion. Now when you run iRingz 1.1, it'll create 2 folders in the current directory - temp and final.
The temp folder is for processing and will be deleted when iRingz exits. The final folder holds your new tonez. These tonez will have the same filename as your original files instead of the messy "-temp-some random number" filenames.
Also, iRingz 1.1 will now pop up an explorer window showing the final folder when it is done. You can double click on all the files (faster method: hold down ctrl while pressing a, then press enter) to import to iTunes and sync to your iPhone.
What's new in iRingz 1.0?Everything!
Older Versions (This is for archival purposes only!)
Version 1.2Ver 1.2 is not available as it made your iPhone cry (not really). Ver 1.2.1 fixed this.
Version 1.1Ver 1.1 is available. Get
iRingz 1.1 here.
Version 1.0What you need for 1.0:- iTunes 7.4.1
- iRingz + AtomicParsley ver 1.0 (This zip file includes iRingz and AtomicParsley)
- Ringtones/Sounds/Songs in some audio format like mp3
- iPhone (duh!)
Steps for 1.0:- Get all the files above.
- Use iTunes to convert your Tonez into AAC format. See this iTunes page for more help on this.
- Extract iRingzAtomicParsley-win32-0.9.0.zip that you downloaded above into a folder.
- Goto the folder (that you just extracted to) and inside it, you should see a folder called "AtomicParsley-win32-0.9.0". Double click on the "AtomicParsley-win32-0.9.0" folder.
- In the "AtomicParsley-win32-0.9.0" folder, look for a file called iRingz.exe and run it.
- Hold down shift or ctrl to select multiple files for conversion. If you change your mind, just click cancel.
- Click Open to begin the conversion. After conversion, your newly converted tonez should appear in the same folder as your old unconverted files. Double click on them (the new files, they should have "temp" and some random numbers appended to their filenames. Or sort your files by modified date if you want to make your life easier.) and sync to iPhone.
- Profit!
Future versionsUpdate: I'm working on a new version that should fix some problems (if the songs already exist in the iTunes library, they can't be imported). As for when it'll be done, I'm not sure. It'll be done when it's done. :) This is done, I hope, see
version 1.2 above.
Update2: I may work on a newer version of iRingz that allows you to go from mp3/wav -> converted tonez. What does this mean? Basically, if you have mp3/wav files, there's no need for you to convert to AAC before importing to iTunes. iRingz will convert the mp3/wav to a usable ringtone for you.
Note that this is slated to be released in a future version of iRingz and is not present in the current version.Update3: I have looked into mp3/wav -> tonez and preliminary results seem promising, although it hasn't been tested out on an iPhone. Work on this hasn't started yet as 1)Robert tells me there may be a firmware update out soon and 2)I feel quite light-headed and sleepy all day since I was up quite late yesterday. If Apple doesn't unleash one firmware to rule them all (break custom ringtones and unlocking), then I will proceed to testing on Robert's iPhone and start implementing mp3/wav -> tonez. (Breaking unlock isn't related to this and I will probably proceed anyway. It's just that I won't be able to use it :( )
Update4: You may have noticed I haven't updated this page for a while. That's because no one has found a (free) workaround for iTunes 7.4.2 or 1.1.1 firmware yet. I know iToner 1.03 beta currently works with 1.1.1, but of course it isn't free, hasn't been fully tested and it's for Macs. So I guess the wait goes on.
Update5: As mentioned above,
SendSong works with 1.1.1, so I see no reason to continue developing iRingz.
Credits:- Cleverboy aka gryphondwb for discovering the workaround that makes iRingz possible.
- Robert for his much needed help in testing, feedback and useful suggestions.
- Francis for his suggestions.
- Other commenters for their encouraging comments and feedback.
- AtomicParsley and AutoHotkey which are both free and open source and are key elements of iRingz.