Ringtone Creator Java Library relies on third-party codecs to support certain PCM formats. The reason is simple: they're already implemented and tested, and since they're compiled in the native code, they're generally faster than the Java implementation.
Codecs are set with the help of system properties. For each codec 4 properties can be specified:
| Property name | Property meaning | Example |
| rtc.parser.format.name | Name of the format decoder | rtc.parser.mp3.name=lame |
| rtc.parser.format.path | Path to the format decoder executable | rtc.parser.mp3.path=/usr/bin/lame |
| rtc.converter.format.name | Name of the format encoder | rtc.converter.mp3.name=lame |
| rtc.converter.format.path | Path to the format encoder executable | rtc.converter.mp3.path=/usr/bin/lame |
Note that encoder and decoder can be different applications.
To enable decoder for some format you should set its two parser properties. Two converter properties should be set to enable encoder.
System properties can be provided in several ways depending on your environment.
You can pass them as the command-line parameters to java with -D options
or set inside your Java code
| Format | Encoders supported | Decoders supported |
| MP3 | lame – Lame MP3 encoder | lame – Lame MP3 decoder |
| AMR NB | 3GPP – 3GPP AMR NB encoder SonyEricsson SonyEricsson (MikSoft) encoder (Windows) NMMC – Nokia Multimedia Converter encoder (Windows) | 3GPP – 3GPP AMR NB decoder SonyEricsson – SonyEricsson (MikSoft) decoder (Windows) |
| AMR WB | 3GPP – 3GPP AMR NB encoder NMMC – Nokia Multimedia Converter encoder (Windows) | 3GPP – 3GPP AMR NB decoder |
| QCP | QUALCOMM – Qualcomm Pure Voice? encoder (Linux, Windows) | QUALCOMM – Qualcomm PureVoice decoder (Linux, Windows) |
| AAC | FAAC – FAAC encoder | FAAD – FAAD decoder |
| Ffmpeg | Ffmpeg – Ffmpeg encoder | there is no need to use Ffmpeg as decoder |
MP3 (lame) for Windows is available for download from
http://mitiok.cjb.net/. Other platforms:
http://www.rarewares.org/mp3.html. Free BSD? users can install it from the port located here: /usr/ports/audio/lame.
QCP is supported with the help of Qualcomm Pure Voice? converter. Its binaries are available for download from
http://www.cdmatech.com/products/purevoice_download.jsp. Choose the proper version for your platform. Unfortunately, FreeBSD, Solaris and MacOS don't support this codec.
AAC is supported with the help of FAAD decoder and FAAC encoder.
Their source code can be obtained at
http://www.audiocoding.com/ and compiled for your platform.
Windows binaries are available for download from
http://www.rarewares.org/aac.html
FreeBSD users can install FAAC/FAAD from the ports located here: /usr/ports/audio/faac, /usr/ports/audio/faad.
Or see
http://www.freshports.org/audio/faac/ and
http://www.freshports.org/audio/faad/
Ffmpeg is the main video-conversion tool. It is used in RingtoneCreator for conversion of ringtones to 3GP-compatible audio files with AAC audio stream inside.
You can find precompiled Ffmpeg for your OS here:
Get Precompiled Codecs
Or you can build and install Ffmpeg manually. See these pages for details:
FFmpeg
Installation on Linux
Installation on FreeBSD
Installation on Windows