First, download and install an audio editing tool. In this article, I use Audacity 1.2.6. I also installed LADSPA plugins 0.4.15.
Run Audacity and open your favorite audio file. I open an MP3 of the Bang Camaro theme song.
Find 20 or 30 seconds of the song that you want to use as your ringtone. I think I like the section from about 1:10 to 1:40, so I zoom in, mark it, and play it. I repeat until I can mark exactly the section I want, from about 1:06 to about 1:24. I click the Trim outside section button, and all that's left is the section that will become my ringtone.
Zoom in on the beginning of the section. Mark the first second, and select Effect / Fade In. Zoom in on the end of the section, mark the last second, and select Effect / Fade Out. Play it from beginning to end--this is what your ringtone will sound like on the phone.
Select File / Export As WAV, and save the file. You are done creating the ringtone snip.
Now convert the WAV file to an iPhone ringtone file. Run iTunes 22.214.171.124. Select File / Add File to Library..., and add the WAV file to your iTunes Music Library.
Select Edit / Preferences... and click the Advanced tab. Change Import Using: to AAC Encoder, and click OK.
Find the WAV file in your iTunes Music Library, select it, and select Advanced / Convert Selection to AAC.
iTunes saves the new file with the extension .m4a. Use the file explorer or a shell prompt to change the file's extension to .m4r. I do it in bash:
my-pc$ cd /cygdrive/c/Documents\ and\ Settings/kasper/My\ Documents/My\ Music/Unknown\ Artist/Unknown\ Album/Copy the file to your iPhone. I use scp:
my-pc$ mv 12\ Bang\ Camaro\ ringtone.m4a 12\ Bang\ Camaro\ ringtone.m4r
my-pc$ scp 12\ Bang\ Camaro\ ringtone.m4r email@example.com:/Library/Ringtonesssh to your iPhone and modify the ringtone file's properties. Change its permissions from -rwx------ to -rw-rw-r--, and change its group from wheel to admin:
12 Bang Camaro ringtone.m4r 100% 298KB 297.8KB/s 00:00
my-pc$ ssh firstname.lastname@example.orgOn your iPhone, tap the Home button, then Settings / Sounds / Ringtone. You'll see your new ringtone in the list. Select it, give yourself a call, and enjoy.
Last login: Sat Jun 7 22:47:24 2008 from 192.168.1.101
kasper's iPhone:~ root# cd /Library/Ringtones
kasper's iPhone:/Library/Ringtones root# chmod 664 12\ Bang\ Camaro\ ringtone.m4r
kasper's iPhone:/Library/Ringtones root# chown root:admin 12\ Bang\ Camaro\ ringtone.m4r
kasper's iPhone:/Library/Ringtones root# ls -l
-rw-rw-r-- 1 root admin 304938 Jun 7 23:07 12\ Bang\ Camaro\ ringtone.m4r
-rw-rw-r-- 1 root admin 373092 Jul 30 2007 Alarm.m4r
-rw-rw-r-- 1 root admin 56893 Jul 30 2007 Ascending.m4r
Some of these sources gave me the clues I needed:
- Wired's How to Make Custom IPhone Ringtones Without Paying Apple $2
- Creating iPhone Ringtones With Fission
- Audacity wiki's articles on M4A and Exporting your Audacity Project into iTunes and iPod