My goal was to make an easy to use client that my wife would have no trouble with when we are out of the house, but not a full Channels client. So, there is one more piece, and that's automatic remote detection. I'll add a LAN address check on startup. If it doesn't match any of the configured servers, then automatically connect a VPN (WireGuard or Tailscale), or use my.channelsdvr.net, whichever is selected.
I asked CoPilot to describe the media player in this project, and how it would support 4k and surround sound. Here is what it said:
"WinChannels uses a custom React-based media player built on the HTML5 <video> element, with adaptive streaming powered by hls.js. For local playback, it leverages Tauri’s native capabilities for efficient HLS streaming on Windows."
It went on to say that HTML5 inherently supports 4k and surround sound, it depends on hardware and drivers available on the client machine.
It also mentioned that for full HTPC service, a Windows-native player might provide better options and performance, but that would require a different architecture for the app. This one is platform-agnostic, which I prefer.
As far as multiple streams are concerned, you can run multiple instances of the app, so if you want to keep a baseball game on while watching something else, it already works. I don't think I want to pursue PIP...