This is the simplest way for Android users to create custom ringtones for their phones. Pick a song from a list of audio files on your device. Then, using the waveform as a guide, just drag markers to your desired starting and ending points and hit Save. Set the new clip as your default ringtone or assign it to a particular contact.
Ringdroid
WIRED Makes ringtones out of voice recordings, too. Can search through your music library from within the app.