mirror of
https://github.com/binimum/tidal-ui.git
synced 2026-04-26 12:25:48 +03:00
[GH-ISSUE #14] Add a Custom Audio Engine (Improved Sound Processing and EQ) #11
Labels
No labels
bug
duplicate
enhancement
pull-request
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/tidal-ui#11
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @ghostteammj on GitHub (Oct 11, 2025).
Original GitHub issue: https://github.com/binimum/tidal-ui/issues/14
Hi! First of all, I really appreciate your work on Binilossless. The app is evolving fast, and the new updates with faster playback and Hi-Res support are amazing.
However, I’ve noticed something compared to DAB — even though Binilossless delivers true FLAC/Hi-Res quality, the sound feels flatter or less dynamic than before. I think this happens because DAB used a custom sound engine on top of ExoPlayer that included:
Slight dynamic range enhancement,
Internal EQ/loudness normalization,
ReplayGain-like processing.
Those features gave DAB a warmer, fuller, and more powerful sound.Would it be possible to implement a custom audio engine (or enhance the current ExoPlayer backend) to achieve similar results?
It could include things like:
Adjustable EQ or tone shaping,
Optional loudness normalization,
Hi-Res mixing via libraries like Superpowered Audio SDK or SonicSync,
Optional dynamic range compressor for consistent volume across tracks.
This would make Binilossless not only technically lossless, but also more musically engaging — closer to how Apple Music or TIDAL render their Hi-Res audio.Thanks again for your hard work and for keeping this project alive. It’s already an amazing player, and a proper sound engine would make it perfect.
@binimum commented on GitHub (Oct 11, 2025):
Thanks for the feedback!
When streaming Hi-Res audio, it can't be fully lossless (not until I successfully decompile the iOS app). Hi-Res Lossless uses MPEG-DASH which is a variable bit rate protocol that yes, isn't truly lossless but will still sound very faithful to the original (much more than CD quality).
In terms of CD quality, the browser directly plays a FLAC and to my knowledge DAB does the exact same - I probably won't include an EQ into a web app because it simply overcomplicates things or an internal EQ as this would probably anger lots of people for not being faithful - sorry. Try downloading the songs and EQing them via your own software!
Loudness normalisation, on the other hand, would be an opportunity that I can explore - a toggleable thing in the settings. The compressor is basically the same but I probably won't use it as the effect it creates ruins some songs.
I don't know what "Hi-Res mixing" is - but it probably doesn't support the browser or MPEG-DASH. If it does please lead me in the right direction!
Have a good day.
@ghostteammj commented on GitHub (Oct 12, 2025):
Thanks a lot for the detailed explanation! That totally makes sense — I understand how implementing a built-in EQ or processing could affect the “bit-perfect” playback, especially for Hi-Res streams through MPEG-DASH.
My main thought was more about having an optional audio engine toggle or enhancement mode — not a forced EQ, but something similar to what some players do to give a little warmth or dynamic boost without altering the FLAC data itself (like post-processing through a WebAudio layer).
Loudness normalization as a toggle sounds great though — that would already make playback feel more balanced across tracks.
Also, about the “Hi-Res mixing” part — what I meant is when the player handles Hi-Res (24-bit/96-192kHz) audio in a way that preserves the full resolution through the entire processing chain, without downsampling or converting it to 44.1kHz internally. Some apps like Apple Music and Poweramp refer to this as “Hi-Res audio output” or “Hi-Res mixing,” meaning the DAC gets the full bit-depth and sample rate instead of a system-mixed signal.
I really appreciate your openness and how quickly you’re developing the project. It’s awesome to see Binilossless evolving so fast!
If you ever need testing feedback for new audio features, I’d be happy to help.
@binimum commented on GitHub (Oct 12, 2025):
Thanks for claifying - I think you're going along the lines of direct output to DAC which isn't really supported on a browser, sorry. However, you could check your sound settings in Windows for example - sorry but I don't have too much experience with this. If you do know how to implement it please enlighten me - would be very helpful!
@ghostteammj commented on GitHub (Oct 12, 2025):
Yeah, that’s exactly what I meant — direct output to the DAC, bypassing the system mixer. Sadly I don’t have a PC at the moment, I mostly use Android for listening, so I was wondering if something like that could be supported through the WebAudio API or a mobile-optimized implementation in the future.
Either way, I totally understand the browser limitations. Thanks again for being so open and for taking the time to discuss these details — it really shows how passionate you are about keeping the sound quality faithful!