views:

138

answers:

1

I have an MP3 file that I can play outside of Android and stored on the sdcard. I did the call to

MediaScannerConnection.scanFile(mContext, ...

so it has been discovered. In Froyo, the ringtone shows up in the **Sound -> Phone ringtone** list. In Eclair it does not list (I expected it in the User add ringtones dialog.)

In Froyo, the ringtone plays in preview mode when selected. However, when the phone receives an incoming call, it is silent -- but not in the "silent mode" sense (i.e., the phone does not vibrate). If I change the ringtone, it plays during ringing.

Any magical clues?

More information .... I think it is the format ...

If I do a Unix "file" command, it shows two file types for my ringtones. Only one of the six work.

/Volumes/sd1/Ringtones/ringtone09.mp3:  Audio file with ID3 version 2.4.0, contains: MPEG ADTS, layer III, v2,  64 kbps, 22.05 kHz, JntStereo
/Volumes/sd1/Ringtones/ringtone02.mp3:  Audio file with ID3 version 2.4.0, contains: MPEG ADTS, layer III, v2,  64 kbps, 22.05 kHz, JntStereo
/Volumes/sd1/Ringtones/ringtone12.mp3:  Audio file with ID3 version 2.4.0, contains: MPEG ADTS, layer III, v2,  64 kbps, 22.05 kHz, JntStereo
/Volumes/sd1/Ringtones/ringtone44.mp3:  Audio file with ID3 version 2.4.0, contains: MPEG ADTS, layer III, v2,  64 kbps, 22.05 kHz, JntStereo
/Volumes/sd1/Ringtones/ringtone04.mp3:  Audio file with ID3 version 2.3.0, contains: MPEG ADTS, layer III, v1,  64 kbps, 44.1 kHz, Monaural
/Volumes/sd1/Ringtones/ringtone37.mp3:  MPEG ADTS, layer III, v1,  64 kbps, 44.1 kHz, Monaural

The last one that is MPEG ADTS, layer III, v1, 64 kbps, 44.1 kHz Monaural works! The JntStereo ones do not!

Another discovery today. All of the ringtones work as expected on Eclair once I switched to setting the Media Content Resolver instead of relying on the scan. The Froyo device still behaves as described above.

A: 

Convert your tracks' ID3 tags to an older version. Some people have had some success with ID3 2.3, but maybe you want to go back even further. Try EasyTAG to convert your ID3 tags.

Android Bug: Issue 1057: ID3 2.4.0 not supported

magaio
@magaio is this bug device dependent? I have three devices that I am testing with and one of them works, one fails, and the third I have not been able to get loaded (the third one needs more debugging).
mobibob
I will have to inform the content provider since I can't expect to download and manually convert the tags. Is there a programmatic way (i.e., API in EasyTAG) to fix a downloaded file during the download or after saving?
mobibob
@mobibob, I think there could be device-specific decoding libraries, yes. I wouldn't rule that out. I'm sure there is some programmatic way to modify the tags, like passing the file data to another application as an intent and then passing it back, but boy, that seems like a lot of work.
magaio
yup! time to call the content provider and ask for an upgrade.
mobibob