Secure Connections and Chromecast

chromecast

#16

There was a fantastic individual on Google+ that mentioned removing the secured connection to make Chromecast support 1080p+ streams like before! However, I agree, this needs to be somewhat of a selection choice. I have to now DISABLE SSL in order to have the Chromecast stream properly. I would prefer secure connections across the board and then have Chromecast NOT have the SSL if it struggles.

In case it matters for anyone else looking, I have not been able to get a stream at 8Mbps 1080p to work at all, only dropping to 4Mbps 720p worked or lower. I usually had zero issue on any device or computer, meaning only the Chromecast was struggling with 1080p. Of course, I blamed it on the Chromecast, even though 1080p YouTube and more worked fine.

This change has rectified the problem and Chromecast is the super streamer it used to be again!


#17

I have SSL disabled but still get a lot of stuttering. On 0.9.12.13.


#18

make a new thread, video stuttering when SSL is disabled is a different issue than this thread.

This thread is for "not being able to cast" when SSL is ENABLED

If you have lag there are many other factors that can cause that


#19

Is this still an issue? I've ordered a few Chromecasts 2nd gen. and one Chromecast audio.


#20

I have a related thread going where I discovered this was my issue in not being able to cast. I'm wondering if I changed a setting or performed an update which suddenly made this problem appear. My current workaround is to change Settings->Network->Secure Connections setting to "Preferred". I'm not happy with it, but it's all I've got at the moment.


#21

Woops, link to the related thread:

https://forums.plex.tv/discussion/comment/1109306


#22

I recently installed Plex, this is the first annoying issue I discovered, PLEX + TLS + Chromecast = problems. For my case, it leads to an error in the logs "WARN - [Chromecast] Media element error code: 2" and an error message in my screen "There was a problem playing this item". It happens randomly, it can play for 5mins or 40 mins but it will error out always.

Disabling security completely allows for uninterrupted playback without errors but of course security goes down the drain. So many months and these issues still persist apparently.


#23

@charlie2alpha said:
I recently installed Plex, this is the first annoying issue I discovered, PLEX + TLS + Chromecast = problems. For my case, it leads to an error in the logs "WARN - [Chromecast] Media element error code: 2" and an error message in my screen "There was a problem playing this item". It happens randomly, it can play for 5mins or 40 mins but it will error out always.

Disabling security completely allows for uninterrupted playback without errors but of course security goes down the drain. So many months and these issues still persist apparently.

Yeah, it so depressing ;D

So what I did is opted out of signing in altogether since I don't need to access Plex outside my home network...

Just a tip, if you're like me and don't need to use Plex outside your home network and sign out of plex also uncheck Enable local network discovery (GDM) in Settings > Network and just to be on the safe side uncheck Enable the DLNA server in Settings DLNA.

This way, I feel, and I could be wrong, that your plex media server cannot be pinged from outside your home network, of course that means you have to manually connect your plex media server (for iOS and Android apps that you use to cast) using your plex media server IP address (that is probably set vis your router based on your PMS mac address)

Sigh thats the best I could come up with as far as security goes!


#24

There is hope! https://security.googleblog.com/2016/03/securing-web-together_15.html


#25

I dont mean to dig up such an old post, but recently I cannot seem to cast from any device (iOS or Android) when security is set to Required.
Plex Server: Version 1.3.3.3148
iOS device is on latest version of OS and Plex App
Android is 6.0.1 with latest Plex App version (5.3.2.632)
Tried with a fully updated Chromecast v1 and v2
Rebooted phones, chromecasts and PMS many times

Is this still an issue with the Chromecast not being able to ‘cope’ with SSL?


#26

This is still my finding. As of a couple weeks ago, at least.


#27

Still doesn’t work for me, plex server 1.7.5; plex app (on Android) 6.1.1.656; Chromecast 2 firmware 1.25.90308.
Set “Secure connections” to preferred and it works, leave it on required and it doesn’t.

Update: I can cast from chrome on my PC to the same Chromecast device with “Secure connections” set to required.

So it appears that it is a problem with the Android client.

Doing a bit of packet sniffing on the server I can see that the Chromecast hits the server with an unencrypted OPTIONS request, then it drops the connection.

Ooh, new version of the Plex app (6.1.2.812): no, still doesn’t work.


#28

Just to note I have the same problem. With “required” I can cast from chrome on the desktop, but have to lower it to “prefered” to cast from Android phone. Everything is updated as of 26.07.2017, using the chromecast ultra device.


#29

@yaytay said:
Still doesn’t work for me, plex server 1.7.5; plex app (on Android) 6.1.1.656; Chromecast 2 firmware 1.25.90308.
Set “Secure connections” to preferred and it works, leave it on required and it doesn’t.

Update: I can cast from chrome on my PC to the same Chromecast device with “Secure connections” set to required.

So it appears that it is a problem with the Android client.

Doing a bit of packet sniffing on the server I can see that the Chromecast hits the server with an unencrypted OPTIONS request, then it drops the connection.

Ooh, new version of the Plex app (6.1.2.812): no, still doesn’t work.

I’ve got the same behavior with plex server 1.8.2.4209, plex android app 6.4.1.1644, and chromecast 2 firmware 1.26.92486.
I will not lowered security access to my server, please fix this issue.


#30

it works since 1.9.0.4252 plex server version


#31

I tried it - and it still does not work. I was asked if I’d accept a fallback to an insecure connection, but setting the encryption to “forced” gave an error.


#32

I have everything updated (PMS, Android, App, Chromecast) and i even have a COMODO Wildcard SSL Certificate for my PLEX server but i CAN’T stream using Android and Chromecast !

Is this bug even a priority ??


#33

Issue still exists here. Latest Plex Media Server on Synology DS218+ NAS.

Casting to chromecast works from Plex on iPad but not from Android client.

It starts to work when i switch secure connections from required to preferred.

I really wonder why this is a matter of the client version at all. As far as i understand the IAO or Android client just sends the URL to the chromecast which then connects to the media server. So why can the IOS client send a correct URL and the Android client fails?

I have to add that i’ve imported my custom SSL certificate from letsencrypt to PLEX to match the domain of my synology web interface so i can access the plex web interface via my synology ddns alias. So in order to connect to the server via SSL the client has to send the correct address to the chromecast (https://xxxxxx.myds.me:32400/…). I’m afraid the android client might be sending a wrong address here like a plex domain which then results in a domain mismatch certificate error?!


#34

It’s exactly as I suspected. The IOS client sends the correct address like https://alias.myds.me to the chromecast. The Android client instead sends something like my_local_ip.xxxxxxxxxxxxxxxx.plex.direct. Both are requesting https. The plex address won’t work because of my own SSL certificate for https://alias.myds.me.

So why does the IOS client recognize my local network settings but the android client seems to fail?

Here are the logs:

This is what the IOS client does:

INFO - [Chromecast] Load: {“currentTime”:0,“requestId”:5,“autoplay”:true,“media”:{“metadata”:{“metadataType”:0},“contentId”:"/library/metadata/4940",“customData”:{“offset”:0,“server”:{“address”:“my_domain.myds.me”,“machineIdentifier”:“my_machine”,“isVerifiedHostname”:true,“protocol”:“https”,“transcoderVideo”:true,“port”:32400,“version”:“1.12.0.4829”,“accessToken”:“transient-my_access_token”,“transcoderAudio”:true},“audioBoost”:0,“resolution”:“1280x720”,“directPlay”:true,“directStream”:true,“subtitleSize”:100,“containerKey”:"/playQueues/85?own=1&window=200",“bitrate”:2000,“quality”:60,“user”:{“username”:“my_user_name”}},“contentType”:“video”,“streamType”:“BUFFERED”,“duration”:3697.152}}

And here the android client:

INFO - [Chromecast] Load: {“requestId”:2,“media”:{“contentId”:"/library/metadata/4940",“streamType”:“BUFFERED”,“contentType”:“video/mp4”,“metadata”:{“metadataType”:0,“title”:“S01 E01”},“duration”:3697.152,“customData”:{“offset”:92,“bitrate”:20000,“directStream”:true,“directPlay”:true,“subtitleSize”:“100”,“audioBoost”:“100”,“user”:{“username”:“my_user_name”},“server”:{“machineIdentifier”:“my_machine”,“protocol”:“https”,“address”:“192-168-178-30.my_plex_subdomain.plex.direct”,“port”:32400,“accessToken”:“transient-my_access_token”,“version”:“1.12.0.4829-6de959918”,“transcoderVideo”:true,“transcoderVideoRemuxOnly”:false,“transcoderAudio”:true,“isVerifiedHostname”:false},“containerKey”:"/playQueues/87?own=1&repeat=0&window=200"}},“autoplay”:true,“currentTime”:92.201,“playbackRate”:1}


#35

This is definitely a bug. However, a temporary work around could be to let Plex use it’s own SSL certificate, then set up nginx as a proxy on a different port with your custom SSL cert for use in a web browser. It’s not perfect, but could suit your needs until Plex fixes this (if ever).