# Riff: sound and licensing ## Where are the equalizer and sound effects? There is no built-in equalizer, and the author does not plan to add one. His preference is to tune the audio chain with a system DSP such as [JamesDSP](https://james34602.github.io/JamesDSPManager/) or a separate DSP processor/amplifier. Whether a system tool fits your head unit depends on its firmware and output path. Riff does include ReplayGain and a peak limiter, so neighboring recordings do not make you keep reaching for the volume control. On Android, Riff does that work on the audio samples itself. ## What do ReplayGain F, I and N mean? **F** outputs float32 after processing; **I** outputs int16; **N** has no Riff ReplayGain processor. In I/F, the processor starts with PCM16, applies the gain and runs a peak limiter. F avoids rounding the result back to int16. If F causes trouble on a particular device, try I; that is a fallback worth checking, not a guarantee for every firmware. Open **Settings → More… → ReplayGain**, choose the values and save **More**. ## What are the numbers 16, 18, 23 and 0? Target loudness: 16 means -16 LUFS, 18 means -18 LUFS, and 23 means -23 LUFS. The current starting setting is **F / 23**. This concerns the recording's overall loudness, not forcing every instant of a song to the same level. **0** applies no ReplayGain adjustment, but I/F still run the limiter. Use **N** to remove Riff's processor. Missing usable gain data does not become an invented adjustment from the target alone. ## Where does ReplayGain come from? Should I prepare my files first? That is a good way to get a whole-recording scan before copying files to the drive. [rsgain](https://github.com/complexlogic/rsgain) and [loudgain](https://github.com/Moonbase59/loudgain) can write ReplayGain metadata without rewriting the audio itself. Riff also reads supported iTunes/Apple Music Sound Check data, `iTunNORM`. Without usable data, Riff attempts its own measurement. Normally it uses three up-to-20-second sections, up to a minute in total. If the bounded measurements fail, music can get a full-span fallback; audiobooks do not. A hard “never more than one minute” limit would be inaccurate. ## Does float output make this a bit-perfect player? No. I/F start with PCM16 even if the source stores more bits. Float output cannot recover precision already lost at the input. Riff concentrates on listening comfortably in a car. A dedicated bit-perfect USB path is a different job. For example, [Resonāda](https://gitlab.com/resonada/resonada/-/blob/main/README.md) advertises that sort of capability; check your actual hardware and output before assuming it will work. ## Is Riff free, and do donations unlock features? First-party code is open under GPL-3.0-or-later. Donations do not unlock features or restrict code access or use. Local listening needs no account or streaming subscription. GPL allows third-party distributors to charge for their builds. ## What does GPLv3 mean for me? You can use, study, change and share the code. Making a private modification alone does not require you to publish it, and the licence does not take ownership of your music. If you distribute a copy, keep the required notices and licence and supply the corresponding source in a permitted way. Third-party components keep their own terms. The [GNU GPL FAQ](https://www.gnu.org/licenses/gpl-faq.en.html) and [licence text](https://www.gnu.org/licenses/gpl-3.0.html) have the details. ## May I sell it, bundle it in head-unit firmware or distribute it through a store? Yes, with the GPL obligations still attached. Recipients keep their GPL rights; covered modified code cannot simply become closed source. Where GPLv3's User Product rules apply, the required installation information matters too. Check store/firmware conditions, dependencies and the repository notices before distributing. GNU's [GPLv3 guide](https://www.gnu.org/licenses/quick-guide-gplv3.html) explains that part. ## Does GPLv3 promise support or make this pre-release build risk-free? No. An open-source licence is not a promise that every device works or that lost state can always be recovered. This is still an unfinished pre-release project.