logoalt Hacker News

How Not to Build a Music Player

73 points • by vinhnx • yesterday at 11:04 PM • 29 comments • view on HN

Comments

winternett • today at 1:09 AM

It's been under my skin for a long time now, but every single free music player app I've used in the past 8 years plays my locally stored mp3s in the exact same order each time the shuffle button is on. Many others complain about that too.

I don't know if it's happening on Android OS level, but even VLC, plays songs in the exact same predictable order. I've left support notes on VLC's forums, and submitted the issue to issue cues and there are no responses each time.

None of that encourages me to pay for a premium app, shuffle has been around since CD changers.

➕ show 6 replies
Hobadee • today at 1:06 AM

"AMP" is unfortunately close to "AIMP", another music player. (https://aimp.ru/)

➕ show 1 reply
hoooooooooome • today at 3:14 AM

Musicolet for android has a shuffle, and also folder view, that works very well. Truly shuffled up.

mojuba • today at 4:32 AM

> I was surprised by my own ignorance and how much LLMs like to complicate stuff.

Exactly and it's like a plague. I think the main reason is that LLMs are generators, they like to generate code where code removal or reduction would solve the problem just as well. You ask them to fix something, they generate a fix. You tell them the fix didn't work, now they generate a fix for a fix, whereas a fix that would also reduce complexity existed from the start.

With a fair amount of babysitting and constantly reminding the agent that code removal is an option, you can eventually get a decent codebase but I wonder why this isn't a default. Because they are trained on mediocre code that is the vast majority of what's available on the internet? Most likely.

➕ show 1 reply
ta2112 • today at 12:57 AM

> I’ve got no pre-rewrite history of the repo to check).

I love this type of story, because it describes a different Internet that I'm familiar with. And honestly it sounds pretty rough out there! But regardless, we all should be using some kind of version control (git), and as an added bonus you'd get your pre-rewrite history from it.

➕ show 1 reply
sandreas • today at 3:28 AM

Interesting Story. Starting my own hardware music player as a learning project[1] (that will probably take years until the first release) I noticed how MANY music player projects are out there (software and hardware ones).

This seems to be a field with so many different approaches and requirements, that no solution can fit them all and everyone settles with the least annoying one or starts their own.

Personally, I've found that since breaking up with macOS/iOS in 2020 my most missing feature is using my headphone remote to control volume or skip songs without taking my phone out of my pocket / touching my keyboard. It's still in my muscle memory, because I'm using my iPod Nano 7 to listen to audio books a lot and while every iPod and MacBook does support this, Linux capable notebooks don't.

Besides this single feature, for music I found navidrome with smart playlists[2] and Substreamer[3] / DSub[4] to be a great way to listen to local music, since Substreamer supports OFFLINE sync for playlists. So every time I get home I sync my smart playlists, which includes a "last played" filter / ordering - so I get to listen to "new" music every time.

Unfortunately the headphone remote stuff probably will never be fully fixed on Android, because google chose to block "longpress" on OS level for their own Voiceover, but like I said: The least annoying option.

For audio books I can recommend Audiobookshelf[5], which is self hosted and can be combined with the official Android app or some third party ones (Lissen, Storii and Voice from Paul Woitaschek). I'm probably sticking to my iPod until it dies completely - but lately I found the HiBy R1 to be Linux based and hackable[6], maybe I try to implement my own player / UI for it :-)

1: https://github.com/nanowave-player/nanowave-ui

2: https://www.navidrome.org/docs/usage/features/smart-playlist...

3: https://substreamer.org/

4: https://f-droid.org/de/packages/github.daneren2005.dsub/

5: https://github.com/advplyr/audiobookshelf

6: https://github.com/Jepl4r/sonix-player

ryanhaskins • today at 12:56 AM

[flagged]

jheriko • today at 3:15 AM

[dead]

dead_hn_theory • today at 1:09 AM

This post makes no sense. The author goes from having no internet due to a bombardment to LLM'ing. I find it hard to share the plight of a warzone when they go unhinged to build their own audio player afterwards (?!). If I want a music player every OS comes with one, and phones hold enough storage. USB thumb drives are also good. Failing that, burning CDs and using rechargeable batteries is another off-the-grid solution that will work fine, and CDs are easily transportable and will last for decades. Slightly physically damaged CDs are somewhat resilient and can be brought back to life with toothpaste, so they're somewhat "better" than files which shit the bed if there is any data corruption.

➕ show 1 reply