Ejemplo n.º 1
0
def WatchLive(name='', iconimage='', quality='best'):
    headers = {"User-Agent": userAgent}
    url = 'https://www.21.tv/pages/video/videoS.htm'
    text = common.OpenURL(url, headers=headers)
    match = re.compile('var videoSrc="(.*?)";').findall(text)
    text = common.OpenURL(match[0], headers=headers)
    match = re.compile("var\s*metadataURL\s*?=\s*?'(.+?)'").findall(text)
    metadataURL = match[0].replace('https://',
                                   'http://').replace('https_streaming=true',
                                                      'https_streaming=false')
    text = common.OpenURL(metadataURL, headers=headers)
    match = re.compile("<SmilURL.*>(.+)</SmilURL>").findall(text)
    smil = match[0].replace('amp;', '')
    match = re.compile("<Server priority='1'>(.+)</Server>").findall(text)
    server = match[0]
    link = common.urlunparse(common.url_parse(smil)._replace(netloc=server))
    headers = {
        'Connection': 'keep-alive',
        'Pragma': 'no-cache',
        'Cache-Control': 'no-cache',
        'Accept': '*/*',
        'User-Agent': userAgent,
        'Sec-Fetch-Site': 'same-site',
        'Sec-Fetch-Mode': 'cors',
        'Referer': metadataURL,
        'Accept-Encoding': 'gzip, deflate, br',
        'Accept-Language': 'en-US,en;q=0.9',
    }
    link = common.GetStreams(link, headers=headers, quality=quality)
    final = '{0}|User-Agent={1}&Referer={2}'.format(link, userAgent,
                                                    metadataURL)
    common.PlayStream(final, quality, name, iconimage)
Ejemplo n.º 2
0
def Play(url, name='', iconimage='', quality='best'):
	try:
		result = common.OpenURL('{0}{1}'.format(baseUrl, url), headers={"User-Agent": userAgent})
		id = re.compile(u'<video-js.*?data-video-id="(.*?)"', re.S).findall(result)[0]
		result = common.OpenURL('{0}{1}'.format(api, id), headers={"Accept": pk, "User-Agent": userAgent})
		if result is None:
			link = 'https://c.brightcove.com/services/mobile/streaming/index/master.m3u8?videoId={0}'.format(id)
			link = common.GetStreams(link, headers={"User-Agent": userAgent}, quality=quality)
		else:
			sources = json.loads(result)['sources']
			link = ''
			avg_bitrate = 0
			for source in sources:
				if 'src' in source:
					s_type = source.get('type')
					#if s_type == 'application/x-mpegURL':
					#	link = common.GetStreams(source['src'], headers={"User-Agent": userAgent}, quality=quality)
					#	break
					if source.get('container') == 'MP4':
						if source['avg_bitrate'] > avg_bitrate:
							link = source['src']
							avg_bitrate = source['avg_bitrate']
		final = '{0}|User-Agent={1}'.format(link, userAgent)
		common.PlayStream(final, quality, name, iconimage)
	except Exception as ex:
		xbmc.log(str(ex), 3)
Ejemplo n.º 3
0
def WatchLive(url, name='', iconimage='', quality='best'):
    headers = {
        'User-Agent': userAgent,
        'Connection': 'keep-alive',
        'Pragma': 'no-cache',
        'Cache-Control': 'no-cache',
        'Accept': 'application/json',
        'DNT': '1',
        'Referer': 'http://kab.tv/',
        'Accept-Encoding': 'gzip, deflate',
        'Accept-Language': 'en-US,en;q=0.9'
    }
    channels = common.OpenURL('http://kab.tv/api/streams',
                              headers=headers,
                              responseMethod='json')
    for channel in channels:
        if str(channel['id']) == url:
            link = channel['url'].strip()
            break
    if link == '':
        return None
    headers = {"User-Agent": userAgent}
    text = common.OpenURL(link, headers=headers)
    match = re.compile('hlsUrl":"(.*?)"').findall(text)
    link = common.GetStreams(match[0], headers=headers, quality=quality)
    final = '{0}|User-Agent={1}'.format(link, userAgent)
    common.PlayStream(final, quality, name, iconimage)
Ejemplo n.º 4
0
def WatchLive(url, name='', iconimage='', quality='best'):
	channels = {
		'13': {'ch': 'videoId', 'casttimeId': '1', 'referer': '{0}/live/'.format(baseUrl), 'link': 'https://d18b0e6mopany4.cloudfront.net/out/v1/08bc71cf0a0f4712b6b03c732b0e6d25/index.m3u8'},
		'13c': {'ch': 'accessibility_ref', 'casttimeId': '27', 'referer': '{0}/live/'.format(baseUrl), 'link': 'https://d198ztbnlup2iq.cloudfront.net/out/v1/2d9050c90fb94df8b78d1d98306a1a65/index.m3u8'},
		#'bb': {'ch': 'videoId', 'casttimeId': '26', 'referer': '{0}/home/bb-livestream/'.format(baseUrl), 'link': 'https://d2lckchr9cxrss.cloudfront.net/out/v1/c73af7694cce4767888c08a7534b503c/index.m3u8'}
		'bb': {'ch': 'videoId', 'casttimeId': '26', 'referer': '{0}/home/bb-livestream/'.format(baseUrl), 'link': 'https://cdnapisec.kaltura.com/p/2748741/sp/2748741/playManifest/entryId/1_6fr5xbw2/deliveryProfileId/672/protocol/https/format/applehttp/a.m3u8'}
	}
	referer = channels[url]['referer']
	'''
	try:
		result = GetUrlJson(referer)
		provider = result['Header']['Live']['extras']['live_video_provider']
		if provider == 'cast_time':
			result = common.OpenURL('https://13tv-api.oplayer.io/api/getlink/?userId=45E4A9FB-FCE8-88BF-93CC-3650C39DDF28&serverType=web&cdnName=casttime&ch={0}'.format(channels[url]['casttimeId']), headers={"User-Agent": userAgent})
			link = json.loads(result)[0]['Link']
		else:
			result = common.OpenURL('{0}{1}'.format(api, result['Header']['Live'][channels[url]['ch']]), headers={"Accept": pk, "User-Agent": userAgent})
			link = json.loads(result)['sources'][0]['src']
	except Exception as ex:
		xbmc.log(str(ex), 3)
		link = channels[url]['link']
	'''
	link = channels[url]['link']
	link = common.GetStreams(link, headers={"User-Agent": userAgent, 'Referer': referer}, quality=quality)
	final = '{0}|User-Agent={1}&Referer={2}'.format(link, userAgent, referer)
	common.PlayStream(final, quality, name, iconimage)
Ejemplo n.º 5
0
def WatchLive(name='', iconimage='', quality='best'):
	headers={"User-Agent": userAgent}
	#text = common.OpenURL('https://www.hidabroot.org/live', headers=headers)
	#match = re.compile('<div id="video_wrapper".*?<iframe src="(.*?)"').findall(text)
	#text = common.OpenURL(match[0], headers=headers)
	text = common.OpenURL('https://go.shidur.net/player/testlive.php', headers=headers)
	match = re.compile('hls\.loadSource\(["\'](.*?)["\']\)').findall(text)
	link = common.GetStreams(match[0], headers=headers, quality=quality)
	final = '{0}|User-Agent={1}'.format(link, userAgent)
	common.PlayStream(final, quality, name, iconimage)
Ejemplo n.º 6
0
def WatchLive(url, name='', iconimage='', quality='best'):
    try:
        text = common.OpenURL(baseUrl, headers=headers)
        link = re.compile('"webapp\.broadcast_link":"(.*?)"').findall(
            text)[0].replace('\u002F', '/')
    except Exception as ex:
        xbmc.log(str(ex), 3)
        link = 'https://cdna.streamgates.net/TheBest/live/playlist.m3u8'

    link = common.GetStreams(link, headers=headers, quality=quality)
    final = '{0}|User-Agent={1}'.format(link, userAgent)
    common.PlayStream(final, quality, name, iconimage)
Ejemplo n.º 7
0
def Play(name, url, iconimage, quality='best'):
    link = referer = url
    headers['Referer'] = referer
    match = re.compile('videoUrl=(.*?)&').findall(referer)
    if len(match) > 0:
        link = match[0]
    else:
        match = re.compile('clipId=(.*?)&').findall(referer)
        if len(match) > 0:
            link = 'https://sport5-vh.akamaihd.net/i/{0}video{1}.csmil/master.m3u8'.format(
                'UEFA/' if '/UCL2017' in referer else '', match[0])
    link = common.GetStreams(link, headers=headers, quality=quality)
    final = '{0}|User-Agent={1}&Referer={2}'.format(link, userAgent, referer)
    common.PlayStream(final, quality, name, iconimage)
Ejemplo n.º 8
0
def Play(name, url, iconimage, quality='best', live=None):
    text = common.OpenURL(url, headers=headers)
    match = re.compile('src:\s*"(.*?)"').findall(text)
    if len(match) < 0:
        match = re.compile('source\s*src="(.*?)"').findall(text)
    if len(match) < 0:
        match = re.compile("hls.loadSource\('(.*?)'\)").findall(text)
    if len(match) < 0 and live is not None:
        match = [live]
    link = common.GetRedirect(match[0], headers=headers)
    if link is None:
        link = common.GetStreams(match[0], headers=headers, quality=quality)
    final = '{0}|User-Agent={1}'.format(link, userAgent)
    common.PlayStream(final, quality, name, iconimage)
Ejemplo n.º 9
0
def GetPlayerKanUrl(url, headers={}, quality='best'):
    url = url.replace('https', 'http')
    i = url.rfind('http://')
    if i > 0:
        url = url[i:]
    url = url.replace('HLS/HLS', 'HLS')
    text = common.OpenURL(url, headers=headers)
    if 'ByPlayer' in url:
        match = re.compile('bynetURL:\s*"(.*?)"').findall(text)
        if len(match) == 0:
            match = re.compile('"UrlRedirector":"(.*?)"').findall(text)
        link = match[0].replace('https', 'http').replace('\u0026', '&')
    elif len(re.compile('media\.(ma)?kan\.org\.il').findall(url)) > 0:
        match = re.compile('hls:\s*?"(.*?)"').findall(text)
        link = match[0]
    elif 'kaltura' in url:
        text = common.OpenURL(url, headers=headers)
        match = re.compile(
            'window\.kalturaIframePackageData\s*=\s*{(.*?)};').findall(text)
        result = json.loads('{' + match[0] + '}')
        link = result['entryResult']['meta']['hlsStreamUrl']
        link = common.GetStreams(link, headers=headers, quality=quality)
    else:
        match = re.compile("var\s*metadataURL\s*?=\s*?'(.+?)'").findall(text)
        text = common.OpenURL(match[0].replace('https_streaming=true',
                                               'https_streaming=false'),
                              headers=headers)
        match = re.compile("<SmilURL.*>(.+)</SmilURL>").findall(text)
        smil = match[0].replace('amp;', '')
        match = re.compile(
            "<Server priority=['\"]1['\"]>(.+)</Server>").findall(text)
        server = match[0]
        link = common.urlunparse(
            common.url_parse(smil)._replace(netloc=server))
    if 'api.bynetcdn.com/Redirector' not in link:
        link = common.GetStreams(link, headers=headers, quality=quality)
    return '{0}|User-Agent={1}'.format(link, userAgent)
Ejemplo n.º 10
0
def WatchLive(name='', iconimage='', quality='best'):
    try:
        headers = {"User-Agent": userAgent}
        #url = 'https://main.knesset.gov.il/News/Broadcast/Pages/default.aspx?pos=tv'
        #url = 'https://main.knesset.gov.il/_layouts/15/1037/CustomScripts/KnessetBroadcastLobby.js'
        url = 'https://main.knesset.gov.il/_layouts/15/1037/CustomScripts/KnessetMainScripts.js?v=9'
        text = common.OpenURL(url, headers=headers)
        #match = re.compile('pathChannelVideo = ko\.observable\("(.*?)"\);').findall(text)
        match = re.compile(
            "playerPlenumLiveMediaElement\.setSrc\('(.*?)'\);").findall(text)
        #url = common.GetRedirect(match[0], headers=headers)
        url = match[0]
    except Exception as ex:
        xbmc.log(str(ex), 3)
    if url is None or len(url) < 10:
        url = '	https://contact.gostreaming.tv/Knesset/myStream/playlist.m3u8'
    link = common.GetStreams(url, headers=headers, quality=quality)
    final = '{0}|User-Agent={1}'.format(link, userAgent)
    common.PlayStream(final, quality, name, iconimage)
Ejemplo n.º 11
0
def WatchLive(url, name='', iconimage='', quality='best'):
    headers = {"User-Agent": userAgent}
    channels = {
        'live': {
            'ch':
            'https://www.ynet.co.il/video/live/0,20658,1-5259927,00.html',
            'link': 'http://ynet-lh.akamaihd.net/i/ynet_1@123290/master.m3u8'
        },
    }
    link = channels[url]['link']
    text = common.OpenURL(channels[url]['ch'], headers=headers)
    if text is not None:
        match = re.compile(
            "progresivePath: function.*?return replacePath\(decodeURIComponent\('(.*?)'\).*?}",
            re.S).findall(text)
        if match[0] != '':
            link = match[0]
    link = common.GetStreams(link, headers=headers, quality=quality)
    final = '{0}|User-Agent={1}'.format(link, userAgent)
    common.PlayStream(final, quality, name, iconimage)
Ejemplo n.º 12
0
def WatchLive(name='', iconimage='', quality='best'):
    url = 'http://walla-metadata-rr-d.vidnt.com/live/walla/ulpan/hls/metadata.xml'
    text = common.OpenURL(baseUrl, headers=headers)
    match = re.compile('id="iframePlayer"\s*src="(.*?)"').findall(text)
    if len(match) > 0:
        text = common.OpenURL('{0}{1}'.format(baseUrl, match[0]),
                              headers=headers)
        match = re.compile("data-player='(.*?)'").findall(text)
        if len(match) > 0:
            jsn = json.loads(match[0])
            liveStream = jsn.get('liveStream', 'ulpan')
            url = 'http://walla-metadata-rr-d.vidnt.com/live/walla/{0}/hls/metadata.xml'.format(
                liveStream)
    text = common.OpenURL(url, headers=headers)
    if quality == 'best':
        #match = re.compile('FileURL bitrate="(\d*)".*?>\s*(.*?)\s*</FileURL>').findall(text)
        #url = match[-1][1].replace('amp;', '')
        resolutions = [
            x for x in re.compile(
                'FileURL bitrate="(\d*)".*?>\s*(.*?)\s*</FileURL>').findall(
                    text)
        ]
        resolutions = sorted(resolutions,
                             key=lambda resolutions: int(resolutions[0]),
                             reverse=True)
        url = resolutions[0][1].replace('amp;', '')
    else:
        match = re.compile("<SmilURL.*>(.*?)</SmilURL>").findall(text)
        url = match[0].replace('amp;', '')
    match = re.compile("<Server priority=['\"]1['\"]>(.+)</Server>").findall(
        text)
    server = match[0]
    link = common.urlunparse(common.url_parse(url)._replace(netloc=server))
    link = common.GetStreams(link, headers=headers, quality=quality)
    common.PlayStream('{0}|User-Agent={1}'.format(link, userAgent), quality,
                      name, iconimage)
Ejemplo n.º 13
0
def WatchLive(url, name='', iconimage='', quality='best'):
    channels = {
        '5live': {
            'ch': 'liveurl',
            'link':
            'https://sport5-lh.akamaihd.net/i/radio5_0@65353/master.m3u8'
        },
        '5studio': {
            'ch':
            'studioUrl',
            'link':
            'https://sport5-lh.akamaihd.net/i/radiolivev_0@698733/index_1_av-p.m3u8'
        }
    }
    link = channels[url]['link']
    try:
        link = GetRadioData(channels[url]['ch'])
    except Exception as ex:
        xbmc.log(str(ex), 3)
    link1 = common.GetStreams(link, headers=headers, quality=quality)
    if link1 == link:
        link1 = channels[url]['link']
    final = '{0}|User-Agent={1}&Referer={2}'.format(link1, userAgent, radioUrl)
    common.PlayStream(final, quality, name, iconimage)
Ejemplo n.º 14
0
def GetLink(media, cdn, dv, headers, quality):
    url = ''
    for item in media:
        if item['cdn'] == cdn.upper():
            url = item['url']
            break
    if url == '':
        return None, None
    if username.strip() == '':
        l = '{0}?et=gt&lp={1}&rv={2}'.format(entitlementsServices, url, cdn)
    else:
        l = '{0}?et=gt&na=2.0&da=6gkr2ks9-4610-392g-f4s8-d743gg4623k2&du={1}&dv={2}&rv={3}&lp={4}'.format(
            entitlementsServices, deviceID, dv, cdn, url)
    ticket = GetTicket(l, headers)
    if url.startswith('//'):
        url = 'https:{0}'.format(url)
    #xbmc.log('{0}?{1}'.format(url, ticket), 5)
    session = common.GetSession()
    link = common.GetStreams('{0}&{1}'.format(url, ticket)
                             if '?' in url else '{0}?{1}'.format(url, ticket),
                             headers=headers,
                             session=session,
                             quality=quality)
    return link, session.cookies
Ejemplo n.º 15
0
def Play(video, name='', iconimage='', quality='best'):
	try:
		videos = video.split('===')
		kaltura = ''
		cst = ''
		brv = ''
		for vid in videos:
			if '--kaltura--' in vid:
				kaltura = vid.replace('--kaltura--', '')
			elif '--cst--' in vid:
				cst = vid.replace('--cst--', '')
			elif '--brv--' in vid:
				brv = vid.replace('--brv--', '')
		if kaltura != '':
			headers = {
				'accept': '*/*',
				'accept-language': 'en',
				'content-type': 'application/json',
				'sec-fetch-dest': 'empty',
				'sec-fetch-mode': 'cors',
				'sec-fetch-site': 'cross-site',
				'referrer': 'https://13tv.co.il/',
				'referrerPolicy': 'strict-origin-when-cross-origin',
				'User-Agent': userAgent
			}
			payload = "{\"1\":{\"service\":\"session\",\"action\":\"startWidgetSession\",\"widgetId\":\"_2748741\"},\"2\":{\"service\":\"baseEntry\",\"action\":\"list\",\"ks\":\"{1:result:ks}\",\"filter\":{\"redirectFromEntryId\":\"$$$\"},\"responseProfile\":{\"type\":1,\"fields\":\"id,referenceId,name,description,thumbnailUrl,dataUrl,duration,msDuration,flavorParamsIds,mediaType,type,tags,dvrStatus,externalSourceType,status\"}},\"3\":{\"service\":\"baseEntry\",\"action\":\"getPlaybackContext\",\"entryId\":\"{2:result:objects:0:id}\",\"ks\":\"{1:result:ks}\",\"contextDataParams\":{\"objectType\":\"KalturaContextDataParams\",\"flavorTags\":\"all\"}},\"4\":{\"service\":\"metadata_metadata\",\"action\":\"list\",\"filter\":{\"objectType\":\"KalturaMetadataFilter\",\"objectIdEqual\":\"$$$\",\"metadataObjectTypeEqual\":\"1\"},\"ks\":\"{1:result:ks}\"},\"apiVersion\":\"3.3.0\",\"format\":1,\"ks\":\"\",\"clientTag\":\"html5:v0.56.1\",\"partnerId\":2748741}".replace("$$$", kaltura)
			response = requests.post("https://cdnapisec.kaltura.com/api_v3/service/multirequest", headers=headers, data=payload)
			link = ''
			for s in response.json()[2]["sources"]:
				if s["format"] == "applehttp":
					link = s["url"]
					break
			#xbmc.log(link, 5)
			link = common.GetStreams(link, quality=quality)
		elif cst != '':
			headers={"User-Agent": userAgent}
			if common.isnumeric(cst):
				result = common.OpenURL('https://13tv-api.oplayer.io/api/getlink/getVideoById?userId=45E4A9FB-FCE8-88BF-93CC-3650C39DDF28&serverType=web&videoId={0}&callback=x'.format(cst), headers=headers)
			else:
				result = common.OpenURL('https://13tv-api.oplayer.io/api/getlink/getVideoByFileName?userId=45E4A9FB-FCE8-88BF-93CC-3650C39DDF28&videoName={0}&serverType=web&callback=x'.format(cst), headers=headers)
			if result is not None:
				source = json.loads(result)[0]
				link = '{0}{1}{2}{3}{4}.mp4{5}{6}'.format(source['ProtocolType'], source['ServerAddress'], source['MediaRoot'], source['MediaFile'][:source['MediaFile'].find('.mp4')], source['Bitrates'], source['StreamingType'], source['Token'])
				#xbmc.log(link, 5)
				session = common.GetSession()
				link = common.GetStreams(link, headers=headers, session=session, quality=quality)
				final = '{0}|User-Agent={1}'.format(link, userAgent)
				cookies = "&".join(['Cookie={0}'.format(common.quote('{0}={1}'.format(_cookie.name, _cookie.value))) for _cookie in session.cookies])
				if cookies != '':
					final = '{0}&{1}'.format(final, cookies)
			else:
				result = common.OpenURL('{0}{1}'.format(api, brv), headers={"Accept": pk, "User-Agent": userAgent})
				if result is None:
					link = 'https://c.brightcove.com/services/mobile/streaming/index/master.m3u8?videoId={0}'.format(brv)
					link = common.GetStreams(link, headers=headers, quality=quality)
				else:
					sources = json.loads(result)['sources']
					link = ''
					avg_bitrate = 0
					for source in sources:
						if 'src' in source:
							if source['container'] == 'M2TS':
								link = common.GetStreams(source['src'], headers=headers, quality=quality)
								break
							if source['avg_bitrate'] > avg_bitrate:
								link = source['src']
								avg_bitrate = source['avg_bitrate']
								#xbmc.log('[{0}]  {1}'.format(avg_bitrate, link), 5)
				final = '{0}|User-Agent={1}'.format(link, userAgent)
		
		final = '{0}|User-Agent={1}'.format(link, userAgent)
		common.PlayStream(final, quality, name, iconimage)
	except Exception as ex:
		xbmc.log(str(ex), 3)
Ejemplo n.º 16
0
Archivo: tv.py Proyecto: sndmaster/oper
def WatchLive(url, name='', iconimage='', quality='best'):
    channels = {
        '891fm': {
            'link': 'https://www.oles.tv/891fm/player/',
            'regex': "streamSource\s*=\s*'(.*?)'"
        },
        '100fm': {
            'link':
            'https://100fm.multix.co.il/',
            'regex':
            "hls:\s*'(.*?)'",
            'direct':
            'https://video_cdn.streamgates.net/radios100fm/feed720/playlist.m3u8'
        },
        '11b': {
            'link':
            'https://kanlivep2event-i.akamaihd.net/hls/live/747610/747610/source1_2.5k/chunklist.m3u8',
            'final': True
        },
        '11b2': {
            'link':
            'plugin://plugin.video.dailymotion_com/?url=x7wjmog&mode=playLiveVideo',
            'final': True
        },
        'n12': {
            'link':
            'https://keshethlslive-lh.akamaihd.net/i/c2n_1@195269/index_3100_av-p.m3u8',
            'final': True
        },
        '13b': {
            'link':
            'https://d18b0e6mopany4.cloudfront.net/out/v1/08bc71cf0a0f4712b6b03c732b0e6d25/index.m3u8',
            'referer': 'https://13tv.co.il/live/'
        },
        'bbb': {
            'link':
            'https://d2lckchr9cxrss.cloudfront.net/out/v1/c73af7694cce4767888c08a7534b503c/index.m3u8',
            'referer': 'https://13tv.co.il/home/bb-livestream/',
            'final': True
        },
        'musayof': {
            'link':
            'http://wowza.media-line.co.il/Musayof-Live/livestream.sdp/playlist.m3u8',
            'referer':
            'http://media-line.co.il/Media-Line-Player/musayof/livePlayer.aspx'
        }
    }
    headers = {"User-Agent": userAgent}
    regex = channels[url].get('regex')
    if regex:
        text = common.OpenURL(channels[url]['link'], headers=headers)
        link = re.compile(regex).findall(text)
        if len(link) > 0:
            link = link[0]
        else:
            link = channels[url]['direct']
    else:
        link = channels[url]['link']
    if link.startswith('//'):
        link = 'http:{0}'.format(link)
    referer = channels[url].get('referer')
    if referer:
        headers['referer'] = referer
    if not channels[url].get('final') == True:
        link = common.GetStreams(link, headers=headers, quality=quality)
    if referer:
        common.PlayStream(
            '{0}|User-Agent={1}&Referer={2}'.format(link, userAgent, referer),
            quality, name, iconimage)
    else:
        common.PlayStream('{0}|User-Agent={1}'.format(link, userAgent),
                          quality, name, iconimage)
Ejemplo n.º 17
0
def PlayRadioEpisode(name, url, iconimage, quality='best'):
    link = common.GetStreams(url, headers=headers, quality=quality)
    final = '{0}|User-Agent={1}'.format(link, userAgent)
    common.PlayStream(final, quality, name, iconimage)