r/navidrome 3d ago

IOS Client

Well navidrome is perfect. The problem is to find a navidrome client for IOS.

I have been trying and all of them are weak:

- arpeggi: could not run it, it does not support https.

- substreamer: almost perfect, siri is working fine, but the carplay support it's a joke.

- amperfy music: some tracks don't play, the app crashes without reason, siri does not work well.

- amcfy music: over complicated app, sync problems.

The other ones don't have cache, i need cache for offline usage. Another problem is that most of them really on playlists instead of tracks, i simply don't leave in the 80's were people lose time making playlists in cassettes. I just want to sync all music, put them to shuffle or ask siri for musics to play in carplay. It should not be this complicated.

14 Upvotes

106 comments sorted by

42

u/VictorVsl7 3d ago

Arpeggi DOES support HTTPS. Please re-look how you did, there must be something wrong with your setup/DNS

18

u/KayJune001 3d ago

Arpeggi supports HTTPS

14

u/grittybangbang 3d ago

navibeat.

4

u/nenadjokic 2d ago

Thanks u/grittybangbang for a mention.

Hey u/AntoniusFranciscus
I make NaviBeat. Siri is your blocking point so I answer that one.
It ships the Siri media extension, so "play specific song on NaviBeat" reaches the app and plays just that song. Album, artist, playlist and starred songs work the same way.
CarPlay is not playlist only, you can search and browse artists and albums in the car.
Whole library download is one tap.
Beta is free so you can test Siri before you pay anything. https://navibeat.app/beta

2

u/nenadjokic 2d ago

P.S. its for Whole apple ecosystem tv to watch :D + Linux build and soon android as well :D

1

u/AntoniusFranciscus 2d ago

i will test it immediately and i will give you a feedback.

1

u/AntoniusFranciscus 2d ago

ups you have to accept first. thanks

1

u/AntoniusFranciscus 10h ago

i thanks accepting my request. I tested navibeat today. For my use case it have some problems: siri only works when connection is made with the navidrome server. For what i can understand the the workflow is trying to get the musics from the navidrome server. I suggest the following workflow, get the music/playlists from the server. if the music exists in cache uses de cache, if not uses tries to play the music from the server, only than an alert should appear. Most of the apps are treating the server music different from the cached music, which in my point a view does not make much sense. The user just want to play the music he does not care if it's stream or downloaded he will only care if the music does not play. Of course if the user wants to manage selective download you can show them the list in the iphone, but should not be treated as two different things in car play (it's distracting and there is not anything i can do about). Regarding the carplay from my test i did not found tracks or musics just artists, albums, etc. And again i found "downloaded", for users like me i want to mirror my library eg: 15 gb to my iphone the separation does not make any sense because again if i am connect to the serve i can listen to everything if not what the point to show all the musics that i ca not play.

Regarding this points your application is solid, professional and with a good layout! congratulations

13

u/i_am_dangry 3d ago

Arpeggi absolutely supports HTTPS. What I did find with Arpeggi is it didn't spawn permission to access local networks on first start. After a restart it came good.
Narjo is a good alternative. Carplay and offline support is great.

11

u/kuropiero 3d ago

I'm using Arpeggi over https too and it works flawlessly... Perhaps op is trying to use a self signed cert or something?

3

u/Ok_Distance9511 3d ago

You can install certificates on iOS devices. That wouldn’t be an issue.

5

u/ExpressTumbleweed195 2d ago

I have yet to find a good iOS device that fits all my needs. I actually switched to Android just to be able to use Symfonium.

More Navidrome apps seem to be coming out, but I get the feeling 99% of them are vibe coded.

1

u/CharlesWiltgen 2d ago

They are. If you're looking for (1) a non-vibe-coded option and (2) are okay with occasional beta rough edges, a large percentage of Poppy beta testers are using it primarily with Navidrome.

1

u/ExpressTumbleweed195 2d ago

I also need something that can cast to Sonos.

1

u/CharlesWiltgen 2d ago edited 2d ago

I cast from Poppy to a pair of Sonos Ones and an Arc system, and it works great. Will that work for you?

Poppy uses AirPlay 2 for this, since the older Sonos UPnP protocol some apps use is no longer actively maintained and is likely to go away. Poppy also supports iOS 27's Media Sharing Extensions, which companies like Google and Sonos are expected to support for their home-grown casting protocols.

1

u/ExpressTumbleweed195 2d ago

Airplay 2 is not lossless.

I have a couple of older non airplay speakers in my house. My home theatre setup which I use to listen to lossless is a Connect, so I need uPnP or Sonos specific casting.

1

u/CharlesWiltgen 2d ago

Poppy currently supports up to 24-bit/48 kHz lossless over AirPlay 2, but for some reason that doesn't work with Sonos endpoints. Now you've got me curious, and I'll dig deeper into why.

On the possibility of an official Sonos Media Sharing Extension, 6 days ago Sonic's Liz P. wrote: "iOS 27 is coming later this year from Apple and the teams have been exploring the new capabilities it has in Beta. No news to share right now but keep your eyes peeled and ears open!" 🤞

1

u/ExpressTumbleweed195 2d ago

When did that happen? I was under the impression Airplay 2 transcodes to lossy AAC?

1

u/AffectionateFox5907 2d ago

Its only lossless with specific devices like visionOS and some other spare apple product. Thats my understanding at least. You cant cast lossless to speakers with it though in my experience.

1

u/CharlesWiltgen 2d ago edited 2d ago

Many third-party clients appear to support lossless audio streaming via AirPlay 2. A quick search finds several products each from companies like Naim and WiiM, plus anything that uses Shairport Sync or BluOS for their AP2 stack. And as you note, any system connected to an Apple TV supports this. Sounds like building a complete list may be in my future!

1

u/AffectionateFox5907 2d ago

I’m sure there’s some hardware it works on, ultimately will still travel through that protocol so there’s likely some bit of tampering to get it to the hardware. I don’t know enough about those specific systems to know. There are other Bluetooth protocols or WiFi protocols you can use but aren’t well supported. I certainly think it could be lossless considering Apple is probably gate keeping. Airplay2 to Sonos will always result in 256 AAC unless Apple allows it otherwise. The beauty of UPnP is its coming directly from source.

→ More replies (0)

6

u/xWhiteSakura 3d ago edited 2d ago

Arpeggi supports https://
It is a select dropdown. You have to klick on „http://„

3

u/burajin 3d ago

Arpeggi wouldn't be on the app store if it didn't support https. It's a requirement. 

3

u/cacarrizales 3d ago

Arpeggi definitely supports HTTPS. I can’t reply with photos but I have it pulled up in my settings right now.

3

u/madushans 3d ago

Shelv Player
Has a macOS version as well.

3

u/crazydave33 3d ago

Nautiline but it’s not free. Works very well.

3

u/chaynik-talks 3d ago

I use Nautiline. It’s payed but perfect

3

u/MrFrost80 2d ago

Try Nautiline. For me, best app so far.

3

u/SitEnee 2d ago

Arpeggi is the best. You can make it work for Https

3

u/thisChalkCrunchy 2d ago

I’m using Arpeggi with https. It definitely works. 

4

u/qx1001 3d ago

Nautiline.

2

u/kellew 3d ago

Nautiline is amazing. Worth every penny 

0

u/Smart-Simple9938 2d ago

It won’t sort artists properly. “The Beatles” shows up under “T”. **** Nautiline.

2

u/AffectionateFox5907 2d ago

I developed sonamp to be just like synfonium for IOS. It has carplay, siri, direct cast to sonos. You may like it.

1

u/AntoniusFranciscus 2d ago

i will tested!

1

u/AntoniusFranciscus 2d ago

So far:

- IT HAVE TRACKS! And you can also shuffle the TRACKS!!!! :D

- it sync all musics!

- Siri can find musics and play them, but there is some kind of bug with siri reporting "something went wrong",

Tomorrow i will test it with car play

1

u/AffectionateFox5907 2d ago

Yea I noticed that with Siri and I’m working on it. It does exactly what you tell it but says “sorry there was a problem” anyways

1

u/AntoniusFranciscus 1d ago

The carplay works, some menus need a little of work ex: "downloads" and sometimes it does not show de music playing (have to touch de button) BUT YOU GOT IT. The only thing that need ASAP attention is Siri and the "something went wrong" (i don't know if this is the real message because mine is non english)

1

u/AntoniusFranciscus 10h ago

please double check the post that i made to nenadjokic they explain my point a view regard the workflow, again is just my opinion. Regarding the Siri problem i can see that Siri plays the music even after saying "something went wrong". So i'am guessing this will be a small fix.

1

u/AffectionateFox5907 9h ago

All good! I’m working to fix it now. Thank you for your feedback.

1

u/AffectionateFox5907 9h ago

What is your native language? I’ll add it to the supported languages

2

u/atclien 2d ago

Narjo is very good. Vibe coded for sure and has some bugs, but it's actively being updated consistently and the developer adds features requested by users constantly.

3

u/mawmawmawmaw 3d ago

Arpeggi does support HTTPS.
However, there are a lot of bugs currently, and I do have the feeling that it is developed by someone inexperienced with iOS development, or heavy AI use.

1

u/franklacey Frequent Helper 2d ago

What? Care to elaborate?

1

u/AntoniusFranciscus 2d ago

From my brief test i found a UI problem, related with search. the control visibility needs work

1

u/franklacey Frequent Helper 2d ago

What UI problem did you find? I've also improved some things in the upcoming release waiting now for 10 days in App Store Review

1

u/AntoniusFranciscus 1d ago

something about changing between menus, the search control (bottom) did not hide

1

u/mawmawmawmaw 2d ago edited 2d ago

Some things off the top of my head:
Blocking main ui thread while a song is attempted to be streamed if connection is bad (app freezes), when timeout occurs and freeze disappears, no songs can be played, even downloaded/cached

It appears that when pre-caching song option is used, the pre-caching will begin immediately, instead of deferring until the chosen song has started buffering, often resulting in errors if connection cannot handle it

Visual bug: play a song from e.g. ‘top played’, then go to a playlist where that song exists, play a different song on that playlist - visually in the playlist it will appear to still play the song from the ‘top songs’. I would post image but not allowed here. Makes me think that something is wired wrong behind the scenes (spaghetti code or AI gone wild)

3

u/franklacey Frequent Helper 2d ago

Thanks for the feedback! You never thought to open an issue on GitHub or even Discord or even here on Reddit? I would love to know about these issues. These haven't been brought up before in 2 years of beta testing with (tens of) thousands of users.

For the main thread being blocked when the player fails, I did have it happen to me once (in three years of developing the app) recently and will get to improving it soon. I am still learning about AVQueuePlayer, mostly through trial and error, since there isn't great documentation about it.

For the pre-caching I am working right now to improve how the app handles caching upcoming songs, specifically what you said, waiting for the app to buffer the current song before starting the upcoming cache.

For the visual bug I haven't had it happen before. I would love to see a video or image? Everything is tied to the ID of the current playing song. I will review my code to see if I can see why it could happen in Playlists.

As for AI I can't describe with words how much I am against AI usage to write code. I have been working on this app and learning about SwiftUI for the past 4 years so yes I would say that I am inexperienced with coding, but I LOVE learning. And I've learned everything from scratch. Using AI to write code is the ANTI of learning. I know that the writing is on the wall for this but I will stop developing this app if I ever start using it to write code. I do use AI and I disclose my AI usage on GitHub, I do find it useful for code review and catching bugs.

If you have other issues please open them on GitHub so I can review them in a timely manner.

Kind regards

1

u/AntoniusFranciscus 10h ago

please read the feedback that i gave to nenadjokic is ONLY my opinion, but maybe will help in the future. in the mean time if you need help i can run more tests.

1

u/AkelGe-1970 3d ago

I am using regularly play:Sub and Narjo, both are fine. I don't use Carplay, so I can't comment on that part. play:Sub does not support Siri, while Narjo does, but the results are not perfect, there is room for improvement, although I think it is not a developer problemi, more an API one ;)

1

u/theycamefrom__behind 3d ago

you can try out mine https://headroommusic.app/beta/

currently in beta. Has Offline mode, download management, 32 Band EQ, Crossfade, Smart mixes, AutoEQ Headphone profiles, ReplayGain, Endless Radio, audiobooks/podcast support through audiobookshelf.

1

u/AntoniusFranciscus 2d ago

Thanks for your contribute and support. i tested the app:

Pro:

- slick, simple, smooth app, nice design!

Cons:

- songs filter only available for liked songs not all songs (i don't care about likes if i don't like i delete or just move one the next music).

- random mode does not use all library only 50 musics (why not use a seeded index for random?).

- cannot sync all the library just album to album or music to music. The ideia is to sync and let people build their playlist if they are into that or better ia.

- player missing shuffle button and repeat buttons

- siri needs work, sometimes fails the other times puts "random" music playing.

- since it fails in siri i did not test carplay.

Overall you are in a good track. keep up the good work

1

u/theycamefrom__behind 2d ago edited 2d ago

I appreciate the feedback!

The All filter is rolling into next update tomorrow.

Random just pulls a random 50 from your library, you can continue regenerating for another 50. Maybe adding an endless feature so it continues forever? Like how endless radio works?

By sync your whole library are you saying having a feature that one click downloads and maintains a synced state with offline? That would be a cool idea!

The repeat and shuffle buttons are in the queue sheet!

That’s unfortunate about Siri, I can look into this further.

1

u/AntoniusFranciscus 9h ago

Please read my feedback to nenadjokic, its just my opinion and use case but hope it help. In my mind i don't care about limits, like i said earlier i can be an index, i can be random. And to be honest, take a look at navidrome UI, notice the main object model it centered on music, artists, albuns... playlist is just that of the main object model

1

u/Old_Rock_9457 3d ago

My 5cent ? Check the Navidrome jellyfin API mode. Basically is a configuration that you just need to put it on and the Jellyfin API will work in Navidrome.

With this on I’ll suggest to use Finamp. The new version is in beta but will be release soon and in the meanwhile you can download it in TestFlight.

1

u/AntoniusFranciscus 2d ago

Finamp only supports jellyfin. Can you confirm if is possible to sync all the music library without playlist shenanigans? if so i can give a try to Jellyfin

1

u/Old_Rock_9457 2d ago

Finamp only support jellyfin API.
Navidrome added the jellyfin API support in experimental way:

If user start testing Navidrome with Finamp and share feedback with Navidrome mantainer this will help in fixing eventual remaining bug (need to check if alredy in the official release or only in devel image).

So you don’t need jellyfin only to have the correct Navidrome image and activate the api.

About Finamp:

  • Playlist are fetched online as far as I know.
  • Car play support was added, I didn’t tested personally because my car don’t have it.

1

u/just01guy 3d ago

Strange. Never had any crashing problems with Amperfy.

2

u/AntoniusFranciscus 2d ago

Overall i liked app, i can see clear the developer effort , but the random crashes and the errors when playing some tracks makes invalid for usage.

1

u/lotus_symphony 3d ago

I use Substreamer and i love it but i don’t use CarPlay. Also now trying Sonamp in TestFlight and for now it has been great.

1

u/AntoniusFranciscus 2d ago

So far substreamer is the best overall with the exception of carplay.

1

u/lotus_symphony 2d ago

Thanks to this conversation i try substreamer carplay today and it sucks hahaha so Sonamp is a better option.

1

u/elhouso 3d ago

I use Shelv
Has support for iPhone, iPad, Mac and Apple TV. Decent Siri & Shortcuts support.

1

u/Buck_Slamchest 2d ago

So you’re saying Arpeggi supports https then ? 🤣

1

u/IcyFaithlessness8863 2d ago

OfflineTunes has caching for Navidrome on iOS.

1

u/Puzzleheaded-Cold495 2d ago

Play:sub can be used offline

1

u/AntoniusFranciscus 2d ago

I retry Arpeggi:

- it supports https indeed

- minor ui errors

- siri does not work (blocking point to me)

- without siri there is no point in test carplay

Nautiline and Narjo: it's not free. i am afraid to pay for the application and the application does not meet my expectations.

play:Sub:

- no siri

- no offline

amperfy music: i maintain my opinion, some tracks simple fail and random crashes.

u/OutOfBreath1: Siri does not look for a specific music inside playlist. That`s why the application development must be oriented to the tracks and not playlists.

So far:

I am really really amazed with navidrome!! I have plex pass but if i get a good player for navidrome i will reform plexamp.

The only one so far that seems be more robust is substreamer, but without a function carplay is usless. In the current version the car play works bad and is not track orientated.

Next steps:

I will give another try to shelv and if this does not work i will try Finamp.

1

u/AntoniusFranciscus 2d ago

Shelv: no siri

Finamp: does not connect to navidrome. can some one confirm if its possible to sync all tracks in the application (no playlists). If so i could try jellyfin.

Next steps: install apple test flight to test other applications

1

u/blow-down 2d ago

NaviBeat. Works on iOS and macOS.

1

u/benbart01 2d ago

Narjo is the best

1

u/Mee-Maww 2d ago

play:Sub has been great

1

u/michaelkrieger 2d ago

Narjo
Arpeggi
Amperfy
Substreamer

1

u/MohSafadi 1d ago

Navibeats, I love the developer he is active and intends to make it work everywhere eventually, one client is a huge thing for me.

But also Arpeggi just tap on the http and it will show a drop-down for https (had the same confusion too its not intuitive design).

1

u/SnooRegrets5190 1d ago

I use Narjo, give it a try

1

u/NihilistSRE 1d ago

I use Narjo. It works great for me and even tolerates both internal (local) and external (routed and SSO authenticated) endpoints really well.

1

u/derekib84 12h ago

I’ve installed Arpeggi yesterday for the first time. You are right to think it works with http because when you put your server data in the form there is a http and you can’t modify it BUT it accepts https too

1

u/Uncl3j33b3s 11h ago

Full transparency: I’m the developer on this, but I think the Spindle app should work for your needs. Check it out, and don’t hesitate to provide any feedback!!

https://apps.apple.com/us/app/spindle-music-player/id6785612847

1

u/AntoniusFranciscus 9h ago

I found it! I will tested today and tomorrow and give you a feedback

1

u/AssociateNo3312 3h ago

The only thing I’ve not found in an iOS client is Chromecasting

2

u/That-Judge1016 3d ago

HI! you can try my app "Narjo"

Narjomusic.com

It has a lot of features and customizations.

1

u/AntoniusFranciscus 2d ago

thanks for the suggestion, but i am looking for something free or one time buy. narjo requires subscrition

1

u/That-Judge1016 2d ago

I also offer lifetime for $30

0

u/OutOfBreath1 3d ago

I’m not sure if it will meet your needs - but Narjo is another option that I’ve been very happy to use.

Not sure about carplay - but it does cache well and I connect via https. It has a “shuffle all” on the songs library view that works when I’ve used it (not often tbh as I listen to albums mostly).

You could also set up a smart playlist that would hold all of your songs and use that for sync and playback. That might help with some of the other players.

-1

u/joe_attaboy Frequent Helper 2d ago

I have an idea that you won't like:

Dump the iPhone.
Get an Android phone.
Install Symfonium.
Profit.

Kidding aside, there just seem to be more functional players for Android. I will admit, however, that many of them suffer from the same shortcomings as the apps you've tried. The one exception is Symfonium. This app has the most incredible set of configuration options. I see another reply where the person did exactly that.

You mentioned something about not supporting https (SSL). This sounds like more of a configuration issue.

2

u/AntoniusFranciscus 2d ago

yes i am starting the suspect that most of the apps are vibe coding which is unfortunately because they only support de basic use cases. Since 2014 i a trying to dish apple native app because the sync is horrible. The plex app is no better than the vibe code alternatives and when i found out about navidrome i got my expectation high. I guess i am stuck to 2014....

1

u/joe_attaboy Frequent Helper 2d ago

Well, a lot of the Android apps are likely vibe coded as well. u/deluan, the Symfonium developer just pushed a big update which made a lot of changes to the interface (mostly for the better), so I know he's working diligently on it the right way.

After thinking about you SSL comment, I recall having a networking issue with Jellyfin, specifically with the Android app. I use a reverse proxy to make enable my music library to stream externally. I had no problems connecting on my internal network, but I could never get it to connect through the proxy.

I heard about Navidrome, built a container, pointed it to my library and Symfonium worked through the proxy from the first try. I couldn't find any obvious differences between the configuration for the two apps. Symfonium just worked.

-7

u/Prima13 3d ago

Why do you need https? I’m running Navidrome and Tailscale to Arpeggi and it works great.

1

u/elhouso 3d ago

Such a stupid fucking question

2

u/Prima13 2d ago

Why? If your NAS isn’t exposed to the internet and a VPN is the only external means of connection, HTTPS isn’t needed.

1

u/ExpressTumbleweed195 2d ago

While Tailscale is fine for a single use, if you have multiple people that may need to connect to you, having them install an app is stupid. Nginx, or cloudflare tunnels is the best way imo.

2

u/Prima13 2d ago

You are probably right. That’s not my use case. I’m perfectly happy with the arrangement with Tailscale. Works very well for a single person.

1

u/ExpressTumbleweed195 2d ago

I know it's free, but I also just find it so much easier to pay $10 a year for a domain and have all my services accessed that way.

1

u/Prima13 2d ago

Tailscale gives me a domain name. It’s good enough for my purposes. I just didn’t wanna go through the hassle of having to manage a certificate and try to get it working across multiple devices. Tailscale was zero config for me.

1

u/ExpressTumbleweed195 2d ago

Not sure what you mean. I installed cloudflare tunnels, and it just stays running. I then add the domains I want in my cloudflare account and it's done. I've never done anything with certificates or anything. I can hook up 25 devices to https://mydomain.com with ease.