Step 1: Items Needed
Mac with GarageBand program
Step 2: Open GarageBand on the Mac
Step 3: Click IPhone Ringtone
Step 4: Double-click Example Ringtone
Step 5: Name and Create Your Ringtone File
Step 6: Loops Window - Turn Off Looping
Select the Cycle (loop) selector at the bottom to turn off looping. The Cycle indicator at the top (yellow bar) disappears.
(Depending on the length of your desired ringtone, you may need to leave Cycle on, just adjust it to the length of your sound by dragging each side of the yellow bar to match the length. The program may also ask to automatically adjust it for you.)
Step 7: Delete the Existing Sample
Step 8: Add Your Ringtone Source
If you don't need to edit the file, skip ahead to Step 10.
Step 9: Edit From a Longer Track
Click on the top bar at the start of the selection you want to extract. Set Control/Snap to Grid = Off if you want to avoid snapping to the tempo markers and be more precise.
Select Edit/Split from the menu. The audio data will split at that point.
Do the same at the end of the clip you want.
Step 10: Export Your Clip to ITunes
From the menu, select Share/Send Ringtone to iTunes.
The Ringtone now appears in your iTunes Ringtones library under Ringtones.
Step 11: Transfer to IPhone
In iTunes, select the Ringtones tab, Sync Ringtones, and the file you want, and Apply.
Step 12: Back Up If Necessary!
Click Sync Ringtones.
Step 13: Set the New Ringtone!
Your new ringtone now appears in the Custom list. Tap that line to set your default ringtone.
Step 14: Set a Ringtone for Specific Contact.
"Default" will be the master ringtone that you set for your phone in the previous step. To change it, pull up the specific Contact and tap the Ringtone line.
Select the ringtone to use for this person.
Step 15: Enjoy Your Custom Ringtones!
Even though the time limit is 40 seconds, nobody wants to hear your phone ringing for that long (and most people would hang up before that time limit anyway if they don't go to voice mail).
I like a short, unique tone that is not obnoxious if heard for more than a few seconds.