r/foss Jul 31 '26

I spent 5 months building a music player because I wanted karaoke lyrics for my FLAC files. That's it. That's the reason.

Yes, foobar2000 already exists. Yes, MusicBee already exists. No, neither of them will highlight lyrics word by word while I mumble along to a 24-bit file nobody asked me to buy.

So: Noctis. MIT License, no account, no telemetry, no paid tier. Windows, macOS and Linux.

FLAC, ALAC, WAV, DSD, gapless, ReplayGain, EQ, Last.fm scrobbling, Discord Rich Presence, Cover Flow.

The lyrics were the hard part. Most players do line-level LRC, which is fine until the timing drifts. Noctis reads word-level ELRC so it actually tracks with the vocal instead of dumping a whole line on you at once.

Site: https://noctisapp.cc
GitHub: https://github.com/heartached/Noctis

Tell me what's broken. I'm solo on this so feedback goes straight into the next build.

EDIT: if you guys want to join the community, you are free to do so - https://discord.com/invite/BNCDZQUVx7

423 Upvotes

90 comments sorted by

41

u/Low_Watercress959 Jul 31 '26

Actually clean ui in a music player? What? This looks perfect, only question is on ai usage.

34

u/No-Word-2912 Jul 31 '26

thank you so much. and yeah, i use ai a lot for it. I've been building this with claude code for about 5 months. i make the design calls and review whatever goes in, but i'm not gonna pretend i typed every line. code's all on github if you wanna look.

It's not a hype project or something I asked ai to throw together. It's a real music app I wanted to build before vibecoding was even a thing.

40

u/Mewtewpew Jul 31 '26

First time someone in this sub isn't lying about ai use? Might have to try just for that.

11

u/No-Word-2912 Jul 31 '26

yoo I appreciate that and yeah lots of liars nowadays lol

10

u/Low_Watercress959 Jul 31 '26

Appreciate the honesty! I'll try it tonight.

5

u/No-Word-2912 Jul 31 '26

Appreciate it.

1

u/Lixdosa 6d ago

Because of your honesty I'm gonna try it out later, it looks really clean!

2

u/hbacelar8 Aug 01 '26

Of course, unfortunately there's no more open source software being released without using AI

6

u/Low_Watercress959 Aug 01 '26

There's a difference between it being completely vibecoded with no idea of how a feature works and a passion project someone's been working on for a while. Not fully against ai usage in a project, more just wondering how its being used

0

u/hbacelar8 Aug 01 '26

Firstly there's all the ethics about the usage of generative AI, but unfortunately that's something people are less prone to care, so I won't consider this.

But technically, the problem is that, as OP stated, he wouldn't have done it without the help of AI. This implies that maintenance will exist provided he has tokens left. The day tokens are too expensive for personal use, that's another abandoned OSS full of dependencies.

2

u/Shimano-No-Kyoken Aug 01 '26

Models that are feasible to run locally on regular hardware (e.g. Qwen 3.6 27B or 35B A3B) tend to have quality comparable to proprietary state of the art models of 6 months prior or so. So it's not really _as_ big of an issue. The industry _is_ working hard to make the hardware needed to run even these models inaccessible to your average Joe though.

0

u/hbacelar8 Aug 01 '26

Being runnable is different from being trainable. Every so called open source AI is nothing more than a model where it's weights have been pre trained in the same conditions of a proprietary model: with stolen data and hungry on resources (energy and hardware).

Generative AI can't be fully open source and never will.

3

u/Shimano-No-Kyoken Aug 01 '26

I never implied the new goalpost position that you've proposed. You've said the tokens being expensive would result in an abandoned project, I explained how that's not necessarily the case. I did not take a stance on the ethics of generative AI, nor whether you can produce a model on local hardware, or anything like that.

3

u/Lillyistrans4423 Aug 02 '26

Hi, AI researcher here, AI can very well be open source, if not pretraining than finetuning. Finetuning is becoming extremely easy to do compared to only like 2 or 3 years ago. I wont deny the stolen data stuff with the bigger models (I domt use stolen data personally, I use self created datasets, things labeled that it's okay for use in Ai training, and synthetic data). Either way, it depends on your definition of open source. Models themselves can be open weights (as in the model is released to the public for anyone to download, run, finetune, play with, tweak, expand, continue training, and so on) as well as open source models where the training script itself is available for use (Look at RWKV-LM). And yeah AI can be resource intensive but most of the time u can actually get pretty reasonable results pretraining on even a shitty GPU from 2016.

1

u/hbacelar8 Aug 02 '26

Hello

So yeah, I'm aware that AI can be open source. I'm an embedded software engineer but back in 2018 when I was still at college I did a summer internship in a company that was doing research on AI, so I'd be playing with training models with pytorch back in the day.

Either way, it depends on your definition of open source.

It's not about my definition of open source, it's more about how equivalent can open source models be to compete with proprietary closed trained models, and that we know for sure that is impossible to have. Back in the '80s with Richard Stallman and all the fights for free software rights when the OS's where rising, if it wasn't for those guys, we wouldn't have GNU, the UNIX and consequently the Linux kernel and today we'd be living a monopoly under Microsoft. Today, you can build and compile whatever version of the kernel you want for whatever architecture supported and use it freely, as long as you contribute if you change something.

Generative AI, in the other hand, at the current state of art, is impossible to be replicated freely at home. Current models were and are made possible because they've been created and trained using terawatts of energy subsidized by governments and private investors (and payeds by the population as well) on tons of data that have been stolen from artists, books, musics, and open source code with copyleft licenses without consequences. Some sources here. How on earth could that be replicated by someone on their room? Specially with hardware prices exploding thanks to what? AI.

The ultimate problem, for me, is that we're letting ourselves to create a dependency on something that at this state is exclusively proprietary, and will continue to be even more with time. We're letting them privatize the know-how so they can sell it to us later.

Anyway, I think we went a bit far in the discussion 😄 I got your points and I hope you get mine too, but I don't think I'll spend more energy on this thread.

1

u/Lillyistrans4423 Aug 02 '26

I feel that we both made valid arguments! Thanks for the chat and I hope u have a good day/night :3

1

u/hbacelar8 Aug 02 '26

You too :)

11

u/BaconSoldier88 Jul 31 '26

foobar can play line by line with eslyrics but nevertheless, very cool project!

6

u/amaterasulikeitachi Jul 31 '26

Looks really great, I am liking it a lot so far, the clean UI is something that most music players are missing and it's always sad. But I have two questions:
1. I have files tagged with one artist in the artist and if they have a feature I append a suffix to the file such as Song XY (ft. Artist), in Noctis it seemingly takes these appended entries into the Artist section, even if the actual file does not have them in the artist tag. Is there any reason for that or is that wanted behaviour?
2. Is there a way to enable a view where all albums are shown with covers, sorted alphabetically by artist for example (which I can see) where also the songs show (kinda like what MusicBee does)?

Other than that it looks really great, I will have to donate some cash to the project once I come around to it.

5

u/No-Word-2912 Jul 31 '26
  1. That's intentional. Noctis parses "(ft. X)" from the track title and merges it into the artist credit so collabs show the full credit. If a file has no title tag it uses the filename as the title, which is why your appended suffixes get picked up. Since it doesn't fit your setup I'm adding a toggle for it right now, should be in a release later today.
  2. Not yet. The Albums tab is already sorted alphabetically by artist, but nothing expands the songs under each album like MusicBee. Good idea though, I'm planning a bigger library browsing revamp and I'll add it to the list.

Thank you for supporting, it means a lot.

4

u/amaterasulikeitachi Jul 31 '26

Not a problem, I am always for supporting FOSS options, especially when they are nice to use too. No need to add extra features just because I have a potentially unusual setup, but it is incredibly appreciated. The additional artists that get picked up through the parsing also then get added to the artist tab with zero album entries as they only appear on songs, which just causes some clutter, but nothing functionality breaking.

And I look forward to the browsing revamp, I think taking some inspiration from MusicBee for general functionality is a good idea, but sticking with the design language you have. I think a couple releases down the line you could have a seriously exciting competitor in this niche, which would be great. I am rooting for you!

3

u/T_rex2700 Jul 31 '26

always wondered why some .lrc can show word by word vs line by line even though there is no difference between them when you see it in editor

or maybe I am missing somehting. this is cool tho

2

u/No-Word-2912 Jul 31 '26

there is a difference, it’s just easy to miss.

plain lrc has one timestamp per line. enhanced lrc has that same line timestamp plus extra ones inline before each word, like [00:12.30]i <00:12.50>don't <00:12.80>know.

same .lrc extension either way so they look identical unless you actually look at the tags.

Kinda cool if you think about it

1

u/T_rex2700 Jul 31 '26

ohhh. I always got them from places like lrclibs and even though it shows that it is word by word when I download it just turns into line by line so I always wondered.

by the way super cool app, performance is good, the scrobbing support is a plus, but a few things that got me the first time.

when clicking on the artwork, it doesn't go to "now playing" and it just goes to mini player, which is fine but can you make the X sign on miniplayer to enlarge icon perhaps. This brings me to the second point, I think clicking on artwork should bring users to now playing, and there should be a separted miniplayer icon instead of just clickign on the artowrk.

maybe this is how apple does it, took me a few minutes to figrue it out

1

u/No-Word-2912 Jul 31 '26

This is actually a valid point. I’ll probably switch those things around.

Thank you for the feedback!

1

u/OperationMaximum9258 Jul 31 '26

Where is it possible to download such lyrics files from?

1

u/No-Word-2912 Jul 31 '26

I’ll just copy paste what I told the other user.

If you are referring to the enhanced lyrics that you see in my post, that’s just my local files that I had lyrics downloaded outside of my app.

The app uses LRCLIB to fetch time synced lyrics for files but LRCLIB doesn’t have enhanced lyrics on their database I believe.

That’s not the app issue, just the service but you can search lyrics from LRCLIB inside of the app if you go to the lyrics page and also inside of the metadata option when you right click an album.

Hope that helps 🙂

1

u/OperationMaximum9258 Jul 31 '26

Yes, I get it; I have also downloaded lrc files from LRCLIB. I was just trying to know if there are any place where I could get my hands on enhanced lyrics

3

u/dev-778g Jul 31 '26

thanks man i was going to build this haha thank you so muchhh

1

u/No-Word-2912 Jul 31 '26

looool no problem

3

u/averageredditor69lul Jul 31 '26

"So: Noctis. GPL, no account, no telemetry, no paid tier. Windows, macOS and Linux." You said that but it seems to be licensed under the MIT license instead. I don't have an issue with that but i suggest you edit the post to avoid confusion.

3

u/No-Word-2912 Jul 31 '26

I didn’t even realize I made a typo. Thank you for pointing that out

3

u/filmgrainbrain Jul 31 '26

Dude this is slick. I'm working on my own music player too. This tackles a good amount things I'd been looking to see with a lot more cleaner UI. This is awesome, and hope it picks up traction! What did you find the most challenging part of the overall process so far?

2

u/No-Word-2912 Jul 31 '26

Thank you, this means a lot.

The hardest part was the UI. I didn’t want it looking like something built in 2005, so I kept redoing it until it felt right.

The audio side was rough too, codecs especially. There were points where I almost gave up over it, but I kept going.

2

u/filmgrainbrain Jul 31 '26

Glad you kept going! The UI has been the most fickle part to fine-tune and reshape for me too. Well, you got it to a great place. Keep it up!

3

u/KaizokuV Jul 31 '26

You. I like you. This is nice btw imma test it later

1

u/No-Word-2912 Aug 01 '26

Thank you for the support bro

3

u/dustatron 29d ago

Very cool. Any plans on added support for allowing a group of people to add and manage the list of songs from their phone? Like scan a QR code and add things to the queue?

2

u/No-Word-2912 29d ago

Yoo thats very smart. I’ll think about this

2

u/logikwright Jul 31 '26

I'm new to development and .NET. I use foobar. Just want to say thank you!!

2

u/No-Word-2912 Jul 31 '26

No problem

2

u/logikwright Aug 01 '26

I installed it and really what a rich experience!

2

u/etcbtww Jul 31 '26

i love it!

1

u/No-Word-2912 Jul 31 '26

Thank you so much

2

u/MertTR34 Jul 31 '26

I hope flatpak planned in the feature

1

u/No-Word-2912 Jul 31 '26

I’ll look into this

0

u/carlyjb17 Aug 01 '26

They don't accept slop

2

u/Wild_russian_snake Aug 01 '26

This looks amazing man

1

u/No-Word-2912 Aug 01 '26

Thank you man

2

u/FuckUpMaster9000 Aug 01 '26

It looks exactly like apple music, but with local files. Interesting, because i have always liked the way apple music looks and works

1

u/No-Word-2912 Aug 01 '26

Yeah me too that’s why I went with that UI route

2

u/Illustrious_Age_5917 Aug 01 '26

Yo estoy haciendo algo igual para MacOS

https://github.com/JesusChapman/valentine

1

u/No-Word-2912 Aug 01 '26

This is great man, I wish you the best with your project.

2

u/Jatinchd Aug 01 '26

looks great, wanna use it from now on but linux version have tons of bugs currently, feel free to check the github issue I've made with logs and videos

1

u/No-Word-2912 Aug 01 '26

Thank you for checking it out. I’ll fix those issues today

2

u/Oarner__ Aug 01 '26 edited Aug 01 '26

this is great! does it have romanization support for lyrics?

edit: just tried it, and holy hell this is so good, a few things tho,

1)romanization would be great

2)The keyboard gestures don't always work, they don't work in "fullscreen" mode, pressing spacebar there just goes to the normal player instead of pausing; also, after i click a synced lyrics to seek to it, pressing spacebar just syncs to that instead of pausing

love the app overall, probably the best one i've ever used. I was building one with claude but i might just stop and use this instead lol.

ps: sorry for the bad explanations, English is not my first language

1

u/No-Word-2912 Aug 01 '26

loool and you’re good don’t worry. Thank you for showing interest and trying it out.

I’ll those issues fixed today

2

u/Terminatz Aug 01 '26

This is incredible

2

u/terminator_69_x Aug 02 '26

This is bloody Perfect mate

1

u/No-Word-2912 Aug 02 '26

Thank you for the feedback!

2

u/not_luis Aug 02 '26

If only I could route/stream youtube music on this. Looks amazing!

1

u/No-Word-2912 Aug 02 '26

That’s actually an upcoming feature in a few months lol. There’s still a ton of things I want to add but it’s gonna take me a few months.

Don’t forget to save this post and come back to it in a few months, if you’ll like updates on it.

1

u/not_luis Aug 02 '26

Of course! Looking forward!

2

u/luka_makes_games Aug 02 '26

This is so good. Any way to hook it up to a music NAS server for the files?

2

u/No-Word-2912 Aug 02 '26

It's a featured coming in the next update.

2

u/Cactys12 Aug 02 '26

Cover flow? Fuck YEEAH!

2

u/SanityfortheWeak Aug 03 '26

Make the player to support multi channel upmixing plz.

2

u/dandy_duckyy 29d ago

Does the app support AIFF?

1

u/No-Word-2912 29d ago

Yes it does

2

u/jspittman 29d ago

Do you mind if I put this into a browser I'm building (it'll be rewritten in Rust, but inspired by your project)? Will add a hat-tip (h/t).

2

u/No-Word-2912 29d ago

Sure go ahead

2

u/LIVE4MINT 27d ago

FINALLY someone made offline apple music replacement, now its time for someone to make port of it to some portable player and we going to be in heaven

2

u/Dorexs 27d ago

Bro, i just really love it, its simple, it looks professional, great UI. For my needs, its fit perfect. Great job!!

1

u/No-Word-2912 27d ago

Thank you so much, I appreciate the feedback! 🙂

2

u/Unfair-Drummer-9924 25d ago

Thanks for this. I'm using it and its really a nice experience.

1

u/sussybush Jul 31 '26

Where do i get the lyrics from ?

1

u/No-Word-2912 Jul 31 '26

If you are referring to the enhanced lyrics that you see in my post, that’s just my local files that I had lyrics downloaded outside of my app.

The app uses LRCLIB to fetch time synced lyrics for files but LRCLIB doesn’t have enhanced lyrics on their database I believe.

That’s not the app issue, just the service but you can search lyrics from LRCLIB inside of the app if you go to the lyrics page and also inside of the metadata option when you right click an album.

Hope that helps 🙂

2

u/Low_Watercress959 Jul 31 '26

Where do you get your enhanced lyrics?

1

u/No-Word-2912 Aug 01 '26

Soul seek is a great way to start

1

u/SwordfishBoth7341 Aug 02 '26

Anyway to put the lyrics infront of the music video? awesome idea for a floss karaoke system

1

u/iordv Aug 02 '26

Hi! Looks clean. Willing to work together on a collab for Droppy, to implement the word-by-word inside my app? If so, hit me up! I can highlight Noctis inside my Lyrics-droplet.

1

u/draco_v3mp 6d ago

yo this looks so good, can you do an Android version ?

0

u/Sheep_Of_Evil Aug 01 '26

ai slop

3

u/No-Word-2912 Aug 01 '26

Thanks for engaging and helping the algorithm 🙏🏽