I’m in the process of degoogling and I’m stuck trying to find a reasonable alternative to Chromecast. It would be great if I could stream music/video from my phone to my TV from apps like RiMusic, Tidal, and NewPipe. Are there any good solutions? Even better if friends and family can use it with minimal additional setup.
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.
Rules:
Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.
No spam posting.
Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it’s not obvious why your post topic revolves around selfhosting, please include details to make it clear.
Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
No trolling.
Resources:
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
Chromecast is fraud. Use DLNA
How so? It seems like chromecast does exactly what it says it does, even if it’s a suboptimal solution for not being FOSS.
What is does is stupid. You always want to stream the media, not mirror your screen!
I wonder if you’ve ever used a Chromecast based on this criticism.
For a standard Chromecast, you open the app on your phone, then press the cast button, then the device you want to cast to, and the the device begins to stream the media independently of your device. You can shut off the device you used to start casting and it doesn’t matter because Chromecast is pulling the data on its own.
On some websites such as YouTube on PC, you also have a cast button and you can press it, select the device and it’ll start playing. you can get this button to work on all kinds of sites, and a lot of open source software supports it to a degree such as VLC, Peertube (through a plugin), and Jellyfin.
Using google chrome you can cast your current webpage or your desktop, but that’s not the standard use of Chromecast.
It takes some finagling, but you can cast from Jellyfin to a standard Chromecast right from your phone.
The latest version out is Chromecast with Android TV, which is really nice (for now). It’s running a version of android and has the play store, so you can set up the Jellyfin android TV app, and stream from your home server without requiring a domain name or https like you do to stream properly on straight Chromecast.
The big issue with Chromecast in my view is that it’s a Google product which means 3 things:
We’d love to but there are almost zero Android apps that suport DLNA. You can use DLNA for your Jellyfin but if you want to cast from the app of any large streaming service it wants Chromecast (or Apple TV, which is another quagmire).
Use Kore on phone and Kodi on TV
Does Kore make the Netflix app stream to Kodi?
Even if it does, I can’t exactly make everybody who comes by install an app to be able to stream to my TV. Everybody (who’s on Wifi) can stream to the Chromecast.
Netflix is fraud too. Use local files
There are probably better alternatives, but I have a raspbery pi plugged into my tv and use KDE connect to remote control the mouse and keyboard from my phone. If I wanna watch youtube I’ll navigate to youtube.com and click on a video.
Plasma actually has a UI for smart TVs if you weren’t aware, although I have never used it myself so I’m not sure how good it is. https://plasma-bigscreen.org
I’ve heard that the focus is on the ARM versions (so maybe they are much more developed) but I tried the x86_64 version on my HTPC recently and it was super barebones.
In the end I found Gnome with a few extensions to be a better solution for my needs
Any suggestions about Gnome extensions?
I use Gnome on a 42" tv the only thing I’ve done is increasing zoom level since the couch is a bit far from the screen. In the browser I set up the new tab screen to have big icons that link to some of my bookmarks, using a browser extension. That’s all I’ve done compared to a vanilla setup. I have been using that for a few years with no issues but curious about how I could improve my experience!
Yeah that’s basically what I did too.
I just installed dash to dock and made the icons quite large, then rebound a button on my air-mouse to the super key (to bring up the dash). I also installed Just Perfection and used it to hide the top bar unless the dash is open.
90% of the time, I’m just using Firefox, so I don’t need anything too fancy.
ah cool, yeah I also hide the top bar but I’m using this one https://extensions.gnome.org/extension/545/hide-top-bar/ your one looks more flexible I might try
the dash to dock extension looks nice I will give it a go as well
Thanks!
Nice, I’ll check it out. I’ve been meaning to customize the desktop a bit more but it works well enough for the moment.
If you get a usb remote you can bind the home button to rofi or something similar to make a quickstart menu for apps and websites you use most often.
Have been keeping an eye on https://fcast.org/ but haven’t gotten involved yet.
Yesss fcast looks incredibly promising. Sadly the only app implementing it seems to be GrayJay, I really hope it will catch on more.
Since no proprietary streaming service will ever implement this, I wish Jellyfin & PeerTube did.
I’m also hopeful fcast gets some more love. The ability to mirror my whole android screen to an fcast server would be great they have servers for Mac, Linux, Windows, and Android but not a lot of clients.
Grayjay integration works well I use it instead of casting.
This looks exactly like what I’m looking for!
Oh neat. Hope it works for your needs. Let us know how it goes.
Macast is pretty cool too. Think it uses upnp or something.
will need to check it out. Thank you for the tip
I think a few more details are needed to get you a clear alternative:
In my case after degoogling, I use mainly apple devices besides my windows pc. 2 of my TVs have AirPlay built in, so there’s no issue casting anything. If your TV is rather recent it’s likely to have it too.
The third TV is tricky, it’s an older 4k LG. I have a linux box connected to it and installed UxPlay in it. It only works with AirPlay “mirroring” so you kinda need an app that can treat the TV as a second monitor. Otherwise the mirroring won’t cover the entire TV screen. I’m still assuming apple devices here, but there’s OutPlayer and nPlayer in the appstore that can do this. It does support sound-only casting, so if it’s music you want it should be able to direct cast from your apps.
The second caveat for UxPlay is that it only works with DRM-free content (youtube, self hosted media). For DRM content I haven’t found a nice alternative for the old TV , so I use its built in apps (netflix, amazon prime). Kodi exists, but the plug-ins support for streaming sites isn’t good, often getting stuck to low-res content.
I’m guessing buying an apple tv/fire stick/roku is the only alternative for DRM content casting. I also explored the idea of “degoogling” my unused chromecast 3rd gen, but absolutely nothing exists for this and it just collects dust in a drawer.
I’ve got a handful of Android-based TVs that I’m becoming increasingly irritated with. Google regularly pushes updates that break stuff. I already have Jellyfin and Navidrome running on my network and can play them on the TV without issue. Netflix et al are also no issue, but being able to stream other sources such as YouTube/NewPipe.
I am not a fan of Apple either, so adding to them to the mix is a nonstarter.
Just a suggestion. Try SmartTube on TV instead of NewPipe/Tubular. I find the UI infinitely more intuitive foe remote control and large screens.
Don’t think half the comments understand what the Chromecast is…
Interested in finding out more about fcast now though.
Fcast seems pretty promising but it looks like it’s only implemented in Grayjay thus far.
DLNA is going to be your best bet, but it’s such a deep and convoluted rabbit hole. There’s a lot of ways to configure a setup.
I setup miniDLNA once, many years ago and it just kept working. Downside is that I completely forgot how it’s set up.
The trouble for me was always getting people to use the controllers. I had some success with some family members using bubbleupnp on their Android phones. But the separation between sources, renderers and controllers is a little confusing for non technical people
Or use Miracast, AKA WiDi, Smart View, SmartShare if you just want to mirror a screen.
Miracast is not the same thing as WiDi and anyway it’s just another bunch of competing proprietary protocols except for screen casting instead of streaming.
intel’s WiDi software supported Miracast, which is a standard.
They’re all “standards”, yet no two TVs will work the same (if at all) — even when they’re the same make as the phone.
The protocol is called DLNA
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:
2 acronyms in this thread; the most compressed thread commented on today has 9 acronyms.
[Thread #900 for this sub, first seen 31st Jul 2024, 00:15] [FAQ] [Full list] [Contact] [Source code]
https://en.wikipedia.org/wiki/Miracast
Matchstick looked promising but someone killed it. A kaiostick could be nice though
https://en.m.wikipedia.org/wiki/Matchstick_TV
If you’re up for using Jellyfin and have satellite devices, you can check out something I’m working on to achieve this: https://github.com/MattMckenzy/Homehook
The main branch was compatible with chromecast devices, but I’ve stopped maintaining it in favor of the v2 branch, where HomeHook communicates directly with satellite devices through HomeCast.
Let me know if you have any questions about it, always glad to help!
Oh that isn’t quite what I was looking for but I’ve got Home Assistant and Jellyfin already. I’ll have to play with this! Thanks!
Amazon is working on adding casting capabilities to the Matter framework, but at the moment it’s only implemented in the Echo Show and on Prime video.
There’s a litany of them, but the issue is more about what apps will connect to them reliably. The support on apps is really what you’re looking for, as a single app can support multiple streaming targets.
Since you’re talking about some pretty widely adopted apps, maybe look at an Airplay alternative as well, since there’s also a ton of those, and a lot of them are actively developed.
Can you give some examples 😅
Well, I don’t understand your technical wants or needs, but you can Google or hit GitHub and find dozens pretty easily. Look into what Home Assistant is using these days as an easy starter list maybe. Also worth using Raspberry Pi as an included search term to find projects specifically geared for turning an RPi into a Chromecast or Airplay target.
Jellyfin and self host!
I have a Linux PC with Jellyfin hooked up to the TV but i find it awkward to use with a keyboard and trackpad while lying on the couch. It would be great to have a remote like the Chromecast one but I’m not sure if anything like that is available that would work with JF.
The BubbleUPnP app can cast to Chromecast (and DLNA) and has built-in support for Jellyfin as a media source (you can browse your Jellyfin content from the Bubble app). It’s basically the “remote” you want.
Bubble can also act as a media player so if you launch a video file from a file manager and tell it to play on Bubble while it’s connected to a Chromecast, it will cast it.
Bubble can also directly access local files on the phone, Samba shares, and various types of cloud storage accounts.
Its only shortcoming is no SSH support but there’s a workaround for that: the Solid Explorer file manager has a built-in relay that will pipe a video file over SSH to a local video player… pick Bubble as that player and you can play to Chromecast from SSH.
they have CEC adapters and remotes for PCs that you can use.
I was going to say you could use a smartphone with the Jellyfin app to control it, but it looks to be limited (just the actual launching of videos not play/pause etc).