rcelestino
15 years agoVisitor
HLS over HTTPS problems
Hi,
We are trying to change our HLS demos in ROKU to a real-scenario where we use HTTPS to get Playlist (Variant/And/Quality) and Keys.
But we get the next error message when we use https:// in Playlists and Key or Any combination of this, but over HTTP it works correctly.
"Known event: 9index:-5 msg: The format is not supported or the media is corrupt."
For this scenario we set:
screen=CreateObject("roVideoScreen")
screen.SetCertificatesFile("common:/certs/ca-bundle.crt")
screen.AddHeader("X-Roku-Reserved-Dev-Id", "")
'screen.InitClientCertificates() 'we comment this line in the last test but this doesnt work too
The certificate of our server was purchased to Thawte, and the certification chain is:
thawte PRimary Root CA \ Thawte SSL CA \ Our Domain
Also we tried the same m3u8/ts/key files over HTTP and it is working correctly.
Also We tried to get the files with #curl over https and also it is working correctly.
Also we tried to set in the metadata Array the m.StreamStickyHttpRedirects=[false,false] 'we use two entries metadata SD, HD. But it didnt work.
Also we tried to use roUrlTransfer to get the same urls then we print in the telnet console the response and this it is working correctly in each urls (https in playlist, https in quality, https in Key). The example code for this purpose is:
http = CreateObject("roUrlTransfer")
http.SetPort(CreateObject("roMessagePort"))
http.SetUrl("https://domain/urls")
http.SetCertificatesFile("common:/certs/ca-bundle.crt")
http.AddHeader("X-Roku-Reserved-Dev-Id", "")
http.InitClientCertificates()
response = http.GetToString()
print "*******************************************************"
print "Debug response:",response
print "*******************************************************"
Any idea? Or Any example that is working with HLS in HTTPs? Or Any Help?
Thanks a Lot!
Roberto.
PS:
The certificate was purchased with the next properties:
Cipher : RC4-MD5
Server public key is 2048 bit
We are trying to change our HLS demos in ROKU to a real-scenario where we use HTTPS to get Playlist (Variant/And/Quality) and Keys.
But we get the next error message when we use https:// in Playlists and Key or Any combination of this, but over HTTP it works correctly.
"Known event: 9index:-5 msg: The format is not supported or the media is corrupt."
For this scenario we set:
screen=CreateObject("roVideoScreen")
screen.SetCertificatesFile("common:/certs/ca-bundle.crt")
screen.AddHeader("X-Roku-Reserved-Dev-Id", "")
'screen.InitClientCertificates() 'we comment this line in the last test but this doesnt work too
The certificate of our server was purchased to Thawte, and the certification chain is:
thawte PRimary Root CA \ Thawte SSL CA \ Our Domain
Also we tried the same m3u8/ts/key files over HTTP and it is working correctly.
Also We tried to get the files with #curl over https and also it is working correctly.
Also we tried to set in the metadata Array the m.StreamStickyHttpRedirects=[false,false] 'we use two entries metadata SD, HD. But it didnt work.
Also we tried to use roUrlTransfer to get the same urls then we print in the telnet console the response and this it is working correctly in each urls (https in playlist, https in quality, https in Key). The example code for this purpose is:
http = CreateObject("roUrlTransfer")
http.SetPort(CreateObject("roMessagePort"))
http.SetUrl("https://domain/urls")
http.SetCertificatesFile("common:/certs/ca-bundle.crt")
http.AddHeader("X-Roku-Reserved-Dev-Id", "")
http.InitClientCertificates()
response = http.GetToString()
print "*******************************************************"
print "Debug response:",response
print "*******************************************************"
Any idea? Or Any example that is working with HLS in HTTPs? Or Any Help?
Thanks a Lot!
Roberto.
PS:
The certificate was purchased with the next properties:
Cipher : RC4-MD5
Server public key is 2048 bit