Skip to content

Releases: Onesoulmoon/Terminus

Release list

Terminus v2.4.0

Choose a tag to compare

@Onesoulmoon Onesoulmoon released this 05 Aug 20:22

DISCLAIMER: youtube fork and spotify link downloader are implemented but not fixed yet, I still have no clues how to make it work properly but in the upcoming days I'll batch a fix quickly, Thanks for the support!!!

USB exclusive fix is implemented but I have no idea if it works, I just looked up how it works so quickly show me if it's still malfunctioning

Version Update:

Summary of Changes

  • 1. Force 16-Bit Downmixing in  AudioEngine.kt ( AudioEngine.kt):

Set .setEnableFloatOutput(false) on DefaultAudioSink.Builder(context).
Disabling float output on DefaultAudioSink forces ExoPlayer's internal PcmEncodingAudioProcessor to convert all 24-bit and 32-bit FLAC streams down into standard 16-bit signed PCM (ENCODING_PCM_16BIT) integer buffers.

  • 2.Strict 16-Bit Processing in  DecibelAudioProcessor.kt ( DecibelAudioProcessor.kt):

Every audio frame entering DecibelAudioProcessor and AudioTrack is guaranteed to be 2 bytes per sample (buffer.short).
Prevents 3-byte sample stride misalignment, completely eliminating static noise and piercing digital audio distortion on high-res FLAC files.

  • Clean Phrasing & Timeline / Category Reactive Custom Messages ( StatsRepository.kt,  StatsViewModel.kt,  StatsScreen.kt):
    Clean Phrasing: Removed awkward (e.g. 'separate' on 'Download') text in favor of natural, polished terminal messages (e.g., TELEMETRY // 1h streaming 'Separate' by DJ Hustemane on 'Download'. Listener dedication index high.).
    Reactive Custom Messages: Added getCustomMessageForRangeAndCategory(range, category). Whenever you click any timeline range (TODAY, WEEK, MONTH, YEAR, ALL_TIME) or top category (SONG, ALBUM, ARTIST), the custom message dynamically updates to present stats and insights tailored specifically to that selection.