Local server media on projectors - Roku success vs Google TV issue

I want to start by saying that this is an incredible community. I’ve really learned so much from reading this forum over the past weeks! :slight_smile:

I’ve been stubbornly committed to figuring out a way to integrate non-hass.io-integrated projectors into an automation setup, having them play media (if already powered on) when triggered, without needing to have a full fledged internet connection (keeping my wifi router on, of course). The setup: hass.io via VM on a mac mini, media hosted on nginx server on a docker container. The use case is an art gallery that doesn’t have stable internet.

I tried first tried the vlc server integration. Didn’t work for my use case. Then tried chromecast, but it wouldn’t fully turn on without internet. Then I got a Roku streaming stick 4k (model 3820R), and it is able to stream without global internet access!!! As long as the Roku established its IP address on my network, I’m able to trigger it to access media from the nginx server. However, for my use case (a multimedia art installation), the loading bar of the Roku is no good. It shows every time a video is restarted.

I am seduced by how the Chromecast with Google TV (the pricer Android based option) allows me to conceal the streamer method entirely by eliminating buffering progress/logos by overlapping the video loop slightly. When it doesn’t reach the very end of the video, it shows just a black screen for a split second before plunging into the next showing. This stick needs global internet access to turn on. After pulling the plug on that, I noticed that it kept receiving commands from hass.io. I thought it was a success. But I suppose several minutes later it tries to call home, realizes there’s no connection, and quits receiving casts.

Do you have any suggestions for me for getting the Chromecast to continue working on a local area network, or for avoiding the Roku buffering/loader animation?

  • Is there a way to stop the Android-based Chromecast from realizing it isn’t getting a full fledged internet connection? (It is staying connected to my router, of course, even after I unplug the router’s inbound ethernet cable).

  • Alternately, I found some info on how to mod the Roku loading bar, but it seems to involve using a different player container or something having to do with apps maybe. I’m not sure how that would work with hass.io.

Thank you!

Oh, and here is the Actions YAML I’m using:

service: media_player.play_media
target:
  entity_id: media_player.chromecast_tv_1
data:
  media_content_id: http://LOCAL-IP-AND-PORT/test.mp4
  media_content_type: url