Jump to content

Emby Stopped Working Only on Roku TV


bryandeagle
Go to solution Solved by bryandeagle,

Recommended Posts

bryandeagle

Emby decided to stop working only on my Roku TV. On my Roku TV it loads into the menu relatively quickly, takes forever to load a title screen once I select a movie, and then it hangs indefinitely trying to play the movie. This happens for all movies, even ones that worked fine earlier. Accessing Emby from my browser still works perfectly. I've attached server logs for both the working and non-working case. Any helpful suggestions are much appreciated. I also tried adding the Emby beta app for Roku and it produced the same results.

working_chrome.txt not_working_roku.txt

Link to comment
Share on other sites

Hi.  Are you using some sort of proxy?  All your addresses to your server are "localhost" which shouldn't be possible from the Roku.

It looks like the call to the server for playback info is never returning...

Link to comment
Share on other sites

bryandeagle

I took the reverse proxy out of the equation and things seem to be working! What's weird is that everything was working before, even though I wasn't properly proxying websockets. I just added the two websocket lines, but that didn't seem to do anything. Maybe the use of websockets are a relatively recent update? Any tips on known-good reverse proxy configs so I can debug mine?

 

<VirtualHost *:80>
        ServerName tv.home

        ProxyPass /embywebsocket ws://localhost:5300/embywebsocket
        ProxyPassReverse /embywebsocket ws://localhost:5300/embywebsocket

        ProxyPass / http://localhost:5300/
        ProxyPassReverse / http://localhost:5300/

        ErrorLog ${APACHE_LOG_DIR}/tv/error.log
        CustomLog ${APACHE_LOG_DIR}/tv/access.log combined
</VirtualHost>

 

Edited by bryandeagle
Link to comment
Share on other sites

pir8radio
15 hours ago, bryandeagle said:

I took the reverse proxy out of the equation and things seem to be working! What's weird is that everything was working before, even though I wasn't properly proxying websockets. I just added the two websocket lines, but that didn't seem to do anything. Maybe the use of websockets are a relatively recent update? Any tips on known-good reverse proxy configs so I can debug mine?

 


<VirtualHost *:80>
        ServerName tv.home

        ProxyPass /embywebsocket ws://localhost:5300/embywebsocket
        ProxyPassReverse /embywebsocket ws://localhost:5300/embywebsocket

        ProxyPass / http://localhost:5300/
        ProxyPassReverse / http://localhost:5300/

        ErrorLog ${APACHE_LOG_DIR}/tv/error.log
        CustomLog ${APACHE_LOG_DIR}/tv/access.log combined
</VirtualHost>

 

 

27 minutes ago, ebr said:

 

I tried to help someone else out with this same issue. We couldn't figure it out, they ended up switching to nginx reverse proxy and all worked well.   I do not use apache so i have not spent the time to install, learn, then troubleshoot why or what the fix could be, I just don't have time.  But as a last ditch effort the other person switched to nginx and I helped him set up his config, no issues.   I think he ended up switching his setup to nginx.     Sorry, that's probably not the answer you want to hear, but we were troubleshooting for like 3 days off and on. 

  • Thanks 1
Link to comment
Share on other sites

  • Solution
bryandeagle

Did a little more debugging. It was acting strange with requests with a "Expect:100-continue" header. Based on this Stack Overflow, I added the following line to my Apache config and everything's working smoothly now. Thanks everyone for having a look.

RequestHeader unset Expect early

 

  • Agree 1
Link to comment
Share on other sites

  • 4 months later...
thayesemby

@bryandeagle would you be able to post your working config? I seem to be having the same issue and i'm not sure on the right way to implement your fix of:

RequestHeader unset Expect early
Link to comment
Share on other sites

bryandeagle
<VirtualHost *:80>
	ServerName tv.home
	RequestHeader unset Expect early
	ProxyPreserveHost On
	ProxyPass /embywebsocket ws://localhost:5300/embywebsocket
	ProxyPassReverse /embywebsocket ws://localhost:5300/embywebsocket
	ProxyPass / http://localhost:5300/
	ProxyPassReverse / http://localhost:5300/
	ErrorLog ${APACHE_LOG_DIR}/tv/error.log
	CustomLog ${APACHE_LOG_DIR}/tv/access.log combined
</VirtualHost>

<VirtualHost *:443>
	ServerName tv.home
	RequestHeader unset Expect early
	ProxyPreserveHost On
	ProxyPass /embywebsocket ws://localhost:5300/embywebsocket
	ProxyPassReverse /embywebsocket ws://localhost:5300/embywebsocket
	ProxyPass / http://localhost:5300/
	ProxyPassReverse / http://localhost:5300/
	SSLCertificateFile /opt/tv/cert/tv.home.crt
	SSLCertificateKeyFile /opt/tv/cert/tv.home.key
	ErrorLog ${APACHE_LOG_DIR}/tv/ssl-error.log
	CustomLog ${APACHE_LOG_DIR}/tv/ssl-access.log combined
</VirtualHost>

@thayesembythis is my current Apache config file. It's acting as a reverse proxy for my docker container and enabling TLS.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...