raiplay: fix drm contents

This commit is contained in:
ilmich
2024-04-18 07:24:14 +02:00
parent cc07517afb
commit 6c08f820e6
+16 -3
View File
@@ -7,13 +7,15 @@ from core.item import Item
import datetime, xbmc import datetime, xbmc
import requests, sys import requests, sys
from core import jsontools, scrapertools, support from core import jsontools, scrapertools, support, httptools
from platformcode import logger from platformcode import logger
if sys.version_info[0] >= 3: if sys.version_info[0] >= 3:
from concurrent import futures from concurrent import futures
from urllib.parse import urlencode
else: else:
from concurrent_py2 import futures from concurrent_py2 import futures
from urllib import urlencode
host = support.config.get_channel_url() host = support.config.get_channel_url()
@@ -242,9 +244,20 @@ def findvideos(item):
if lic: if lic:
item.drm = 'com.widevine.alpha' item.drm = 'com.widevine.alpha'
item.license = lic + '|' + host + '|R{SSM}|' if "anycast.nagra.com" in lic:
posAuth = lic.find("?Authorization")
license_headers = {
"Accept":"application/octet-stream",
"Content-Type":"application/octet-stream",
'Nv-Authorizations': lic[posAuth + 15:] ,
'User-Agent': httptools.get_user_agent()
}
lic = lic[:posAuth]
item.license = lic + '|' + urlencode(license_headers) + '|R{SSM}|'
else:
item.license = lic + '||R{SSM}|'
item = item.clone(server='directo', url=url, manifest='hls', no_return=True) # , manifest='hls') item = item.clone(server='directo', url=url, manifest='mpd' if item.drm else 'hls' , no_return=True) # , manifest='hls')
return support.server(item, itemlist=[item], Download=False, Videolibrary=False) return support.server(item, itemlist=[item], Download=False, Videolibrary=False)