Edit:
Ive narrowed down an issue that i have come across recently with the way channels DVR behaves when playing back recordings using tailscale. During some internet congestion scenarios, tailscale can fall back to using DERP despite the endpoints at the client and the dvr server having fantastic bandwidth. Despite 750Mbps on both client and server, taislcale DERP servers were throttling (without my even knowing it) to as low as 1Mbps.
The symptom in channels, is that instead of seeing buffering pauses and pixalation issues in the player (which we are all very familiar with) you can have very clean looking video, but the program material always skips to the end. Transport control breaks completely. Previously, for me, channels used to seem to handle this more gracefully, and a simple adjust of the streaming playback settings would fix buffering
So the PSA here is if you see strange skipping right to the end, even without any video pixelation and buffering spinning wheels, take a look at your playback settings in the client and adjust. Then investigate if you have any DERP issues. I havent seen any of these issues using channels and tailscale for years. I suspect tailscale DERP servers, because they are free, are getting more and more overwhelmed.
Im also now looking into using the new peer-relay feature just released in tailscale
Also as a bonus PSA, use the URL based speedtest built into the channels server, and test using the tailscale ip address of your dvr server to help narrow this down.
I.e.100.xxx.xxx.xxx:8089/speedtest not Speedtest of your client endpoint, your wifi cafe might have gigabit speeds, it doesnt matter. And your home internet where your server is could have gigabit speeds. If there are too many NAT hops during the negotiation within tailscale, it will jump to DERP.
Recently the ios tailscale app added a DERP vs Direct status when you use the ping function on the ios app. Very handy.
=========
Original post
I have a strange behavior I have observed when traveling and viewing recorded episodes.Ive detailed the issue here:
I am trying to gain an understanding of where/how playback location information is managed for the episodes while viewing, skipping , pausing etc, . Is it on device? Is it handled on the server? The strange behavior immediately corrects itself when on local network at home, but exhibits itself when accessing channels remotely through tailscale.
If this is still all managed on the server, perhaps it is related to transcoding differences. Or latency race conditions.
Id like suggestions, if any on how i could narrow this down. If its a bug, it would help the developers, and if its my stupidity Ill share my insight to help others.
My only workaround for now is to download episodes on device for viewing when traveling.
I have had a stable system with tailscale remote access for many years , and have never seen this issue. It appears to have cropped up within the past 3 months or so - or more.
Why programs would keep skipping all the way to the end is a strange one.
Any insight would be appreciated.
edit:
Tried switching fro hardware to software transcoder - no fix
Tried the experimental "old streaming" system - no fix
Tried toggling tailscale connection off and back on on the iPhone client.
Tried wifi (with tailscale) and Cellular (with tailscale) on the iPhone
Tried flushing cache.
The next test, which is slightly harder will be to take my iPad client and bring it to a wifi cafe , use tailscale for remote access and then see if that client does the same thing...
Anything else to try??
Thanks all in advance...