plexargod
plexargod copied to clipboard
Experience to date?
Hi @danielewood Thanks for creating this. Not an issue per se, and I’m curious about unintended consequences of using this. I read that CF is not keen on using its network for Plex, and they may ban zones and IPs associated with high bandwidth usage.
What has been your experience to date, assuming a large amount of video bandwidth goes through the tunnel? How often do you change your tunnel URL? And, do you have other CF services associated with the same origin IP? Thanks!
I would guess that CloudFlare would be less likely to have an issue with using Argo for this purpose than normal service endpoints.
My reasoning is that trycloudflare.com is a TEST environment, so cloudflare is less likely to mind traffic like this as it provides useful data for testing against.
It is certainly more difficult to ban individuals for this usage as there are no accounts/domains. It would be trivial for CloudFlare to just drop the X-Plex-Token header for trycloudflare.com and break all Plex sessions going over Argo. That they haven't done so indicates that the activity does not yet rise to the level of annoyance for them to take any actions.
That said, who knows? 🤷🏻♀️
@danielewood I've been testing this, and interestingly compared to a direct connection, Argo makes Plex quicker to load a library (lower latency) but less performant in playback (~ 50% less bandwidth; intermittent buffering). Plex's automatic bandwidth adjustment doesn't seem to be aggressive enough. Did you experience something similar, and would you have any suggestions for optimization? This may just be the nature of routing via CF in my case. Thanks.
I believe I have setup the cloudflared correctly on a rpi3. I can use domain and login via a browser. How do I configure the mobile app to use this custom domain? In the gui plex settings, I can see the domain added to Custom server access URLs tab.
@danielewood I've been testing this, and interestingly compared to a direct connection, Argo makes Plex quicker to load a library (lower latency) but less performant in playback (~ 50% less bandwidth; intermittent buffering). Plex's automatic bandwidth adjustment doesn't seem to be aggressive enough. Did you experience something similar, and would you have any suggestions for optimization? This may just be the nature of routing via CF in my case. Thanks.
Plex auto adjustment probably won't work. You'll have to set your client to use a max bandwidth to force your server to transcode the video.
I have watched what happens with my Plex server and as soon as a client starts a video without transcoding, CF caches the entire video immediately.
Not a problem for me with a 100Mbps upload and clients with equal or better download speeds. I should probably add this as a note to the readme.
I believe I have setup the cloudflared correctly on a rpi3. I can use domain and login via a browser. How do I configure the mobile app to use this custom domain?
In the gui plex settings, I can see the domain added to Custom server access URLs tab.
Turn off WiFi on your phone and your app should still connect. The script calls to the Plex API and updates the access URLs; this means your phone should access the Plex server via any route or can.
If it works with WiFi off, you're good to go. You may need to kill the app to force a url refresh.
The order of precedence is, IIRC:
- L2 broadcast/bonjour
- Same subnet (if advertised in the access urls)
After that, I think it just tries all the other URLs and sees who replies.
Ok. It was a setting user error. I had to uncheck Limit Cellular Data
in the mobile app. Now it is playing.