Python xbmcplugin 模块,setResolvedUrl() 实例源码

我们从Python开源项目中,提取了以下50个代码示例,用于说明如何使用xbmcplugin.setResolvedUrl()

项目:YoutubeTV    作者:dude56987    | 项目源码 | 文件源码
def play_video(path):
    """
    Play a video by the provided path.

    :param path: str
    """
    # if the previous two if statements dont hit then the path is a
    # video path so modify the string and play it with the youtube plugin
    ###############
    # the path to let videos be played by the youtube plugin
    youtubePath='plugin://plugin.video.youtube/?action=play_video&videoid='
    # remove the full webaddress to make youtube plugin work correctly
    path=path.replace('https://youtube.com/watch?v=','')
    # also check for partial webaddresses we only need the video id
    path=path.replace('watch?v=','')
    # add youtube path to path to make videos play with the kodi youtube plugin
    path=youtubePath+path
    # Create a playable item with a path to play.
    play_item = xbmcgui.ListItem(path=path)
    # Pass the item to the Kodi player.
    xbmcplugin.setResolvedUrl(_handle, True, listitem=play_item)
项目:forthelulz    作者:munchycool    | 项目源码 | 文件源码
def play_video(path):
    """
    Play a video by the provided path.
    :param path: str
    """
    # Create a playable item with a path to play.
    play_item = xbmcgui.ListItem(path=path)
    vid_url = play_item.getfilename()
    stream_url = resolve_url(vid_url)
    if stream_url:
        play_item.setPath(stream_url)
    # Pass the item to the Kodi player.
    print "in play video"
    print play_item
    xbmcplugin.setResolvedUrl(addon_handle, True, listitem=play_item)

# addon kicks in
项目:forthelulz    作者:munchycool    | 项目源码 | 文件源码
def play_video(path):
    """
    Play a video by the provided path.
    :param path: str
    """
    # Create a playable item with a path to play.
    play_item = xbmcgui.ListItem(path=path)
    vid_url = play_item.getfilename()
    stream_url = resolve_url(vid_url)
    if stream_url:
        play_item.setPath(stream_url)
    # Pass the item to the Kodi player.
    print "in play video"
    print play_item
    xbmcplugin.setResolvedUrl(addon_handle, True, listitem=play_item)


# 002 start
#link = "http://www.vidsplay.com/wp-content/uploads/2017/04/alligator.mp4"
项目:kodi-vk.inpos.ru    作者:inpos    | 项目源码 | 文件源码
def _play_video(self):
        vid = self.root.params['vid']
        src = self.root.params['source']
        v = Entry('video.get', vid, self.root.conn)
        try:
            v.set_info()
        except:
            self.root.gui.notify(self.root.gui._string(400524), '')
            return
        if 'files' in v.info.keys():
            paths = {}
            if src == _VK_VIDEO_SOURCE:
                for k in v.info['files'].keys():
                    paths[int(k.split('_')[1])] = v.info['files'][k]   
        else:
            v_url = v.info['player']
            if src == _VK_VIDEO_SOURCE:
                paths = self.root.parse_vk_player_html(v_url)
        ### ????? ?????? ??????? ?????????? ?? ????????
        k = max(filter(lambda x: x <= _SETTINGS_MAX_RES, paths.keys()))
        path = paths[k]
        play_item = xbmcgui.ListItem(path = path)
        xbmcplugin.setResolvedUrl(_addon_id, True, listitem = play_item)
项目:plugin.audio.tidal2    作者:arnesongit    | 项目源码 | 文件源码
def play_track(track_id, album_id):
    media_url = session.get_media_url(track_id, album_id=album_id)
    log("Playing: %s" % media_url)
    disableInputstreamAddon = False
    if not media_url.startswith('http://') and not media_url.startswith('https://') and \
        not 'app=' in media_url.lower() and not 'playpath=' in media_url.lower():
        # Rebuild RTMP URL
        if KODI_VERSION >= (17, 0):
            media_url = 'rtmp://%s' % media_url
            disableInputstreamAddon = True
        else:
            host, tail = media_url.split('/', 1)
            app, playpath = tail.split('/mp4:', 1)
            media_url = 'rtmp://%s app=%s playpath=mp4:%s' % (host, app, playpath)
    li = ListItem(path=media_url)
    if disableInputstreamAddon:
        # Krypton can play RTMP Audio Streams without inputstream.rtmp Addon
        li.setProperty('inputstreamaddon', '')
    mimetype = 'audio/flac' if session._config.quality == Quality.lossless and session.is_logged_in else 'audio/mpeg'
    li.setProperty('mimetype', mimetype)
    xbmcplugin.setResolvedUrl(plugin.handle, True, li)
项目:plugin.audio.tidal2    作者:arnesongit    | 项目源码 | 文件源码
def play_track_cut(track_id, cut_id, album_id):
    media_url = session.get_media_url(track_id, cut_id=cut_id, album_id=album_id)
    log("Playing Cut %s: %s" % (cut_id, media_url))
    disableInputstreamAddon = False
    if not media_url.startswith('http://') and not media_url.startswith('https://') and \
        not 'app=' in media_url.lower() and not 'playpath=' in media_url.lower():
        # Rebuild RTMP URL
        if KODI_VERSION >= (17, 0):
            media_url = 'rtmp://%s' % media_url
            disableInputstreamAddon = True
        else:
            host, tail = media_url.split('/', 1)
            app, playpath = tail.split('/mp4:', 1)
            media_url = 'rtmp://%s app=%s playpath=mp4:%s' % (host, app, playpath)
    li = ListItem(path=media_url)
    if disableInputstreamAddon:
        # Krypton can play RTMP Audio Streams without inputstream.rtmp Addon
        li.setProperty('inputstreamaddon', '')
    mimetype = 'audio/flac' if session._config.quality == Quality.lossless and session.is_logged_in else 'audio/mpeg'
    li.setProperty('mimetype', mimetype)
    xbmcplugin.setResolvedUrl(plugin.handle, True, li)
项目:USTVNOWSHARPE    作者:mathsgrinds    | 项目源码 | 文件源码
def router(paramstring):
    params = dict(parse_qsl(paramstring[1:]))
    if params:
        if params['mode'] == 'play':
            play_item = xbmcgui.ListItem(path=params['link'])
            xbmcplugin.setResolvedUrl(__handle__, True, listitem=play_item)
    else:
        for stream in streams():
            list_item = xbmcgui.ListItem(label=stream['name'], thumbnailImage=stream['thumb'])
            list_item.setProperty('fanart_image', stream['thumb'])
            list_item.setProperty('IsPlayable', 'true')
            url = '{0}?mode=play&link={1}'.format(__url__, stream['link'])
            xbmcplugin.addDirectoryItem(__handle__, url, list_item, isFolder=False)
        xbmcplugin.endOfDirectory(__handle__)
# --------------------------------------------------------------------------------
# Main
# --------------------------------------------------------------------------------
项目:kodi_plugins    作者:pitpompej    | 项目源码 | 文件源码
def playTrack(asin):
    content = trackPostUnicodeGetHLSPage('https://music.amazon.de/dmls/', asin)
    temp_file_path = addonUserDataFolder
    if forceDVDPlayer:
        temp_file_path += "/temp.mp4"
    else:
        temp_file_path += "/temp.m3u8"
    if xbmcvfs.exists(temp_file_path):
        xbmcvfs.delete(temp_file_path)
    m3u_temp_file = xbmcvfs.File(temp_file_path, 'w')
    manifest_match = re.compile('manifest":"(.+?)"',re.DOTALL).findall(content)
    if manifest_match:
        m3u_string = manifest_match[0]
        m3u_string = m3u_string.replace("\\n", os.linesep)
        m3u_temp_file.write(m3u_string.encode("ascii"))
    m3u_temp_file.close()
    play_item = xbmcgui.ListItem(path=temp_file_path)
    play_item = setPlayItemInfo(play_item)
    xbmcplugin.setResolvedUrl(pluginhandle, True, listitem=play_item)
项目:plugin.video.zhanqitv    作者:leeeboo    | 项目源码 | 文件源码
def play_vod(video_id):
    """
    Play a video by the provided path.
    :param path: str
    :return: None
    """
    f = urllib2.urlopen('http://www.zhanqi.tv/api/static/video.videoid/{video_id}.json?_v='.format(video_id=video_id))
    obj = json.loads(f.read())
    #path = 'http://dlhls.cdn.zhanqi.tv/zqlive/{video}.m3u8'.format(video=obj['data']['videoIdKey']);
    #path = 'http://ebithdl.cdn.zhanqi.tv/zqlive/{video}.flv'.format(video=obj['data']['videoIdKey'])
    path = '{VideoUrl}{VideoID}'.format(VideoUrl=obj['data']['flashvars']['VideoUrl'], VideoID=obj['data']['flashvars']['VideoID'])

    #xbmc.log("------------------", 1)
    #xbmc.log(path, 1)
    #xbmc.log("------------------", 1)
    play_item = xbmcgui.ListItem(path=path, thumbnailImage=obj['data']['bpic'])
    play_item.setInfo(type="Video", infoLabels={"Title":obj['data']['title']})
    # Pass the item to the Kodi player.
    xbmcplugin.setResolvedUrl(_handle, True, listitem=play_item)
    # directly play the item.
    xbmc.Player().play(path, play_item)
项目:plugin.video.zhanqitv    作者:leeeboo    | 项目源码 | 文件源码
def play_video(room_id):
    """
    Play a video by the provided path.
    :param path: str
    :return: None
    """
    f = urllib2.urlopen('http://www.zhanqi.tv/api/static/live.roomid/{room_id}.json?sid='.format(room_id=room_id))
    obj = json.loads(f.read())
    #path = 'http://dlhls.cdn.zhanqi.tv/zqlive/{video}.m3u8'.format(video=obj['data']['videoIdKey']);
    #path = 'http://ebithdl.cdn.zhanqi.tv/zqlive/{video}.flv'.format(video=obj['data']['videoIdKey'])
    path = 'rtmp://wsrtmp.load.cdn.zhanqi.tv/zqlive/{video}'.format(video=obj['data']['videoIdKey'])
    play_item = xbmcgui.ListItem(path=path, thumbnailImage=obj['data']['bpic'])
    play_item.setInfo(type="Video", infoLabels={"Title":obj['data']['title']})
    # Pass the item to the Kodi player.
    xbmcplugin.setResolvedUrl(_handle, True, listitem=play_item)
    # directly play the item.
    xbmc.Player().play(path, play_item)
项目:plugin.video.youtube    作者:jdf76    | 项目源码 | 文件源码
def _set_resolved_url(self, context, base_item, succeeded=True):
        item = xbmc_items.to_item(context, base_item)
        item.setPath(base_item.get_uri())
        xbmcplugin.setResolvedUrl(self.handle, succeeded=succeeded, listitem=item)

        """
        # just to be sure :)
        if not isLiveStream:
            tries = 100
            while tries>0:
                xbmc.sleep(50)
                if xbmc.Player().isPlaying() and xbmc.getCondVisibility("Player.Paused"):
                    xbmc.Player().pause()
                    break
                tries-=1
        """
项目:plugin.video.eyny    作者:lydian    | 项目源码 | 文件源码
def play_video(self, vid, size=None):
        try:
            play_info = self.eyny.get_video_link(vid, size)
        except ValueError as e:
            xbmcgui.Dialog().notification(
                heading='Error',
                message=unicode(e))
            return

        if size is None and len(play_info['sizes']) > 1:
            ret = int(xbmcgui.Dialog().select(
                'Please choose quality',
                map(str, play_info['sizes'])))
            self.play_video(vid, ret)

        play_item = xbmcgui.ListItem(
            path=self.build_request_url(
                play_info['video'],
                play_info['current_url']))
        play_item.setProperty("IsPlayable", "true")
        play_item.setInfo(
            type="Video",
            infoLabels={"Title": play_info['title']})
        xbmcplugin.setResolvedUrl(self.addon_handle, True, listitem=play_item)
项目:plex-for-kodi-mod    作者:mrclemds    | 项目源码 | 文件源码
def play(data):
    try:
        from plexnet import plexobjects

        plexObject = plexobjects.PlexObject.deSerialize(base64.urlsafe_b64decode(data))

        if plexObject.type == 'track':
            listitem = playTrack(plexObject)
        elif plexObject.type in ('episode', 'movie', 'clip'):
            listitem = playVideo(plexObject)
    except:
        util.ERROR()
        xbmcplugin.setResolvedUrl(HANDLE, False, None)
        return

    xbmcplugin.setResolvedUrl(HANDLE, True, listitem)
项目:plugin.program.autocompletion    作者:phil65    | 项目源码 | 文件源码
def start_info_actions(infos, params):
    for info in infos:
        if info == 'autocomplete':
            listitems = AutoCompletion.get_autocomplete_items(params["id"], params.get("limit", 10))
        elif info == 'selectautocomplete':
            if params.get("handle"):
                xbmcplugin.setResolvedUrl(handle=int(params.get("handle")),
                                          succeeded=False,
                                          listitem=xbmcgui.ListItem())
            try:
                window = xbmcgui.Window(10103)
            except Exception:
                return None
            window.setFocusId(300)
            get_kodi_json(method="Input.SendText",
                          params='{"text":"%s", "done":false}' % params.get("id"))
            return None
            # xbmc.executebuiltin("SendClick(103,32)")
        pass_list_to_skin(data=listitems,
                          handle=params.get("handle", ""),
                          limit=params.get("limit", 20))
项目:plugin.video.youtube    作者:Kolifanes    | 项目源码 | 文件源码
def _set_resolved_url(self, context, base_item, succeeded=True):
        item = xbmc_items.to_item(context, base_item)
        item.setPath(base_item.get_uri())
        xbmcplugin.setResolvedUrl(context.get_handle(), succeeded=succeeded, listitem=item)

        """
        # just to be sure :)
        if not isLiveStream:
            tries = 100
            while tries>0:
                xbmc.sleep(50)
                if xbmc.Player().isPlaying() and xbmc.getCondVisibility("Player.Paused"):
                    xbmc.Player().pause()
                    break
                tries-=1
        """
项目:nuodtayo.tv    作者:benaranguren    | 项目源码 | 文件源码
def play_video(episode_url, thumbnail):

    episodeDetails = {}

    for i in range(int(this.getSetting('loginRetries')) + 1):
        episodeDetails = get_media_info(episode_url)
        if episodeDetails and episodeDetails.get('StatusCode', 0) == 1:
            break
        else:
            login()

    if episodeDetails and episodeDetails.get('StatusCode', 0) == 1:
        media_url = episodeDetails['MediaReturnObj']['uri']
        common.log(episodeDetails['MediaReturnObj']['live'] == False)
        if not episodeDetails['MediaReturnObj']['live']:
            # re-enable bw limiting in v0.1.12. Streams has very variable rate
            # and without this limits, the stream will drop.
            media_url = media_url.replace('&b=100-1000', '&b=100-6000')
            server_override_enable = this.getSetting('server_override_enable')
            server_override_url = this.getSetting('server_override_url')
            common.log('#'*30)
            common.log(server_override_url)
            common.log(server_override_enable)
            if server_override_enable.lower() == 'true' and server_override_url:
                media_url = media_url.replace('http://o2-i.',
                                              server_override_url)

        liz = xbmcgui.ListItem(name, iconImage="DefaultVideo.png",
                               thumbnailImage=thumbnail, path=media_url)
        liz.setInfo(type="Video", infoLabels={"Title": name})
        liz.setProperty('IsPlayable', 'true')

        return xbmcplugin.setResolvedUrl(thisPlugin, True, liz)
    else:
        default_msg = 'Subscription is already expired \
                       or the item is not part of your \
                       subscription.'
        status_msg = episodeDetails.get('StatusMessage', default_msg)
        xbmc.executebuiltin('Notification(%s, %s)' % \
                            ('Media Error', status_msg))
项目:cmik.xbmc    作者:cmik    | 项目源码 | 文件源码
def playEpisode(url):
    cleanCookies(False)
    errorCode = -1
    episodeDetails = {}
    episode = url.split('/')[0]
    for i in range(int(setting('loginRetries')) + 1):
        episodeDetails = getMediaInfo(episode)
        if episodeDetails and 'errorCode' in episodeDetails and episodeDetails['errorCode'] == 0 and 'data' in episodeDetails:
            break
        else:
            login()
    if episodeDetails and 'errorCode' in episodeDetails and episodeDetails['errorCode'] == 0 and 'data' in episodeDetails:
        if 'preview' in episodeDetails['data'] and episodeDetails['data']['preview'] == True:
            showNotification(lang(50207), lang(50002))
        else:
            if 'StatusMessage' in episodeDetails and episodeDetails['StatusMessage'] != '':
                showNotification(episodeDetails['StatusMessage'], lang(57000))
        url = episodeDetails['data']['uri']
        # url = url.replace('=/', '=%2f')
        liz = xbmcgui.ListItem(name, iconImage = "DefaultVideo.png", thumbnailImage = thumbnail, path = url)
        liz.setInfo( type = "Video", infoLabels = { "Title": name } )
        liz.setProperty('IsPlayable', 'true')
        return xbmcplugin.setResolvedUrl(thisPlugin, True, liz)
    else:
        if (not episodeDetails) or (episodeDetails and 'errorCode' in episodeDetails and episodeDetails['errorCode'] != 0):
            if 'StatusMessage' in episodeDetails:
                showNotification(episodeDetails['StatusMessage'])
            else:
                showNotification(lang(57001), lang(57000))
    return False
项目:plugin.audio.euskarazko-irratiak    作者:aldatsa    | 项目源码 | 文件源码
def play_audio(url):
    # set the path of the stream to a list item
    play_item = xbmcgui.ListItem(path=url)

    # the list item is ready to be played by Kodi
    xbmcplugin.setResolvedUrl(addon_handle, True, listitem=play_item)
项目:plugin.audio.spotify    作者:marcelveldt    | 项目源码 | 文件源码
def next_track(self):
        '''special entry which tells the remote connect player to move to the next track'''
        # move to next track
        self.sp.next_track()
        # play next track
        xbmc.sleep(100)
        cur_playback = self.sp.current_playback()
        trackdetails = cur_playback["item"]
        url, li = parse_spotify_track(trackdetails, silenced=True)
        xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, li)
项目:plugin.video.auvio    作者:rickybiscus    | 项目源码 | 文件源码
def _set_resolved_url(self, context):
        """
        Resolve a playable URL

        :param context: context object
        :type context: PlayContext
        """
        self.log_debug('Resolving URL from {0}'.format(str(context)))
        if context.play_item is None:
            list_item = xbmcgui.ListItem(path=context.path)
        else:
            list_item = self.create_list_item(context.play_item)
        xbmcplugin.setResolvedUrl(self._handle, context.succeeded, list_item)
项目:plugin.video.auvio    作者:rickybiscus    | 项目源码 | 文件源码
def stream_url(params):

    url = params.get('url',None)
    common.plugin.log("stream_url() url:%s" % (url))

    if not url:
        popup("Impossible de lire ce flux")
        common.plugin.log_error("Impossible de lire ce flux")
        return

    liz = xbmcgui.ListItem(path=url)
    return xbmcplugin.setResolvedUrl(handle=int(sys.argv[1]), succeeded=True, listitem=liz)
项目:plugin.video.telekom-sport    作者:asciidisco    | 项目源码 | 文件源码
def play(self, video_id):
        """
        Plays a video by Video ID

        :param target: Video ID
        :type target: string
        """
        self.utils.log('Play video: ' + str(video_id))
        use_inputstream = self.utils.use_inputstream()
        self.utils.log('Using inputstream: ' + str(use_inputstream))
        streams = self.get_stream_urls(video_id)
        for stream in streams:
            play_item = xbmcgui.ListItem(
                path=self.get_m3u_url(streams.get(stream)))
            if use_inputstream is True:
                # pylint: disable=E1101
                play_item.setContentLookup(False)
                play_item.setMimeType('application/vnd.apple.mpegurl')
                play_item.setProperty(
                    'inputstream.adaptive.stream_headers',
                    'user-agent=' + self.utils.get_user_agent())
                play_item.setProperty(
                    'inputstream.adaptive.manifest_type', 'hls')
                play_item.setProperty('inputstreamaddon',
                                      'inputstream.adaptive')
            return xbmcplugin.setResolvedUrl(
                self.plugin_handle,
                True,
                play_item)
        return False
项目:context.youtube.download    作者:anxdpanic    | 项目源码 | 文件源码
def set_resolved_url(list_item):
    xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, list_item)
项目:tvalacarta    作者:tvalacarta    | 项目源码 | 文件源码
def play_resolved_url(url):
    _log("play_resolved_url ["+url+"]")

    listitem = xbmcgui.ListItem(path=url)
    listitem.setProperty('IsPlayable', 'true')
    return xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, listitem)
项目:tvalacarta    作者:tvalacarta    | 项目源码 | 文件源码
def play_resolved_url(url):
    _log("play_resolved_url ["+url+"]")

    listitem = xbmcgui.ListItem(path=url)
    listitem.setProperty('IsPlayable', 'true')
    return xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, listitem)
项目:forthelulz    作者:munchycool    | 项目源码 | 文件源码
def play_video(path):
    """
    Play a video by the provided path.
    :param path: str
    """
    # Create a playable item with a path to play.
    play_item = xbmcgui.ListItem(path=path)
    vid_url = play_item.getfilename()
    stream_url = resolve_url(vid_url)
    if stream_url:
        play_item.setPath(stream_url)
    # Pass the item to the Kodi player.
    xbmcplugin.setResolvedUrl(addon_handle, True, listitem=play_item)

# addon kicks in
项目:forthelulz    作者:munchycool    | 项目源码 | 文件源码
def play_video(path):
    """
    Play a video by the provided path.
    :param path: str
    """
    # Create a playable item with a path to play.
    play_item = xbmcgui.ListItem(path=path)
    # Pass the item to the Kodi player.
    xbmcplugin.setResolvedUrl(addon_handle, True, listitem=play_item)

# addon kicks in
项目:forthelulz    作者:munchycool    | 项目源码 | 文件源码
def play_video(path):
    """
    Play a video by the provided path.
    :param path: str
    """
    # Create a playable item with a path to play.
    play_item = xbmcgui.ListItem(path=path)
    vid_url = play_item.getfilename()
    stream_url = resolve_url(vid_url)
    if stream_url:
        play_item.setPath(stream_url)
    # Pass the item to the Kodi player.
    xbmcplugin.setResolvedUrl(addon_handle, True, listitem=play_item)
项目:catchup4kodi    作者:catchup4kodi    | 项目源码 | 文件源码
def playvideo(name,url,iconimage,description):
    r='"mp4".+?".+?"url":"(.+?)"}'
    link=OPEN_URL(url)
    match=re.compile(r).findall(link)
    amount = len(match)-1
    URL=match[amount]
    print URL
    liz=xbmcgui.ListItem(name, iconImage="DefaultVideo.png", thumbnailImage=iconimage)
    liz.setInfo( type="Video", infoLabels={ "Title": name,"Plot":description} )
    liz.setProperty("IsPlayable","true")
    liz.setPath(URL)
    xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, liz)
项目:catchup4kodi    作者:catchup4kodi    | 项目源码 | 文件源码
def PLAY_STREAM(name,url,iconimage):
    quality = int(__settings__.getSetting('live_stream'))

    if len(url)>4:

        STREAM=url

    else:    
        SoapMessage=TEMPLATE(url,'itv'+url.replace('sim',''))
        headers={'Content-Length':'%d'%len(SoapMessage),'Content-Type':'text/xml; charset=utf-8','Host':'mercury.itv.com','Origin':'http://www.itv.com','Referer':'http://www.itv.com/Mercury/Mercury_VideoPlayer.swf?v=null','SOAPAction':"http://tempuri.org/PlaylistService/GetPlaylist",'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.107 Safari/537.36'}
        res, response = http.request("http://mercury.itv.com/PlaylistService.svc", 'POST', headers=headers, body=SoapMessage)

        rtmp=re.compile('<MediaFiles base="(.+?)"').findall(response)[0]
        if 'CITV' in name:
            r='CDATA\[(citv.+?)\]'
        else:
            r='CDATA\[(itv.+?)\]'
        playpath=re.compile(r,re.DOTALL).findall(response) 


        if (quality == 0):
            playpath = playpath[0] 
        elif (quality == 1):
            playpath = playpath[1] 
        elif (quality == 2):
            playpath = playpath[2]
        elif (quality == 3):
            playpath = playpath[3]
        elif (quality == 4):
            playpath = playpath[4]

        STREAM=rtmp+' playpath='+playpath+' swfUrl=http://www.itv.com/mediaplayer/ITVMediaPlayer.swf live=true timeout=10 swfvfy=true'


    liz = xbmcgui.ListItem(name, iconImage='DefaultVideo.png', thumbnailImage=iconimage)
    liz.setInfo(type='Video', infoLabels={'Title':name})
    liz.setProperty("IsPlayable","true")
    liz.setPath(STREAM)
    xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, liz)
项目:catchup4kodi    作者:catchup4kodi    | 项目源码 | 文件源码
def PLAY_RTE(name,url,iconimage):
    name=htmlcleaner.cleanUnicode(name)
    if 'feeds' in url:

        link=OPEN_URL(url)
        URL=re.compile('media:content url="(.+?)"').findall(link)[0]
        import F4MProxy
        player=F4MProxy.f4mProxyHelper()
        player.playF4mLink(URL, name,iconimage)


    else:
        if 'f4m' in url:
            import F4MProxy
            player=F4MProxy.f4mProxyHelper()
            player.playF4mLink(url, name,iconimage)
        else:
            select=[]
            returned=[]
            r='http://www.rte.ie/manifests/%s.f4m'%url
            html=OPEN_URL(r)
            match=re.compile('href=".+?-(.+?)\.f4m"').findall(html)
            for i in match:
                select.append(i+'P')
                returned.append(i)

            link=(returned[xbmcgui.Dialog().select('Please Select', select)])
            stream='http://cdn.rasset.ie/hls-live/_definst_/%s/%s-%s.m3u8' %(url,url,link)
            liz = xbmcgui.ListItem(name, iconImage='DefaultVideo.png', thumbnailImage=iconimage)
            liz.setInfo(type='Video', infoLabels={'Title':name})
            liz.setProperty("IsPlayable","true")
            liz.setPath(stream)
            xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, liz)
项目:catchup4kodi    作者:catchup4kodi    | 项目源码 | 文件源码
def TG4_PLAY_LINK(name,url,iconimage):
    vid=url
    pubid=iconimage.split('pubId=')[1]
    stream_url='http://c.brightcove.com/services/mobile/streaming/index/master.m3u8?videoId=%s&pubId=%s'% (vid,pubid)
    liz = xbmcgui.ListItem(name, iconImage='DefaultVideo.png', thumbnailImage=iconimage)
    liz.setInfo(type='Video', infoLabels={'Title':name})
    liz.setProperty("IsPlayable","true")
    liz.setPath(stream_url)
    xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, liz)
项目:catchup4kodi    作者:catchup4kodi    | 项目源码 | 文件源码
def threeE(name,url,iconimage):
    import time
    TIME=str(time.time())
    TIME=TIME.split('.')[0]
    stream_url='http://csm-e.cds1.yospace.com/csm/extlive/tv3ie01,tv3-prd.m3u8?yo.ac=true&yo.sl=3&yo.po=5&yo.ls=1,2,3&unique='+ TIME
    liz = xbmcgui.ListItem(name, iconImage='DefaultVideo.png', thumbnailImage=iconimage)
    liz.setInfo(type='Video', infoLabels={'Title':name})
    liz.setProperty("IsPlayable","true")
    liz.setPath(stream_url)
    xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, liz)
项目:catchup4kodi    作者:catchup4kodi    | 项目源码 | 文件源码
def PLAY_STREAM(name,url,iconimage):
    url='http://c.brightcove.com/services/mobile/streaming/index/master.m3u8?videoId='+url    
    liz = xbmcgui.ListItem(name, iconImage='DefaultVideo.png', thumbnailImage=iconimage)
    liz.setInfo(type='Video', infoLabels={'Title':name})
    liz.setProperty("IsPlayable","true")
    liz.setPath(url)
    xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, liz)
项目:catchup4kodi    作者:catchup4kodi    | 项目源码 | 文件源码
def GetLivePlayable(name,url,iconimage):


    STREAM = url  

    liz = xbmcgui.ListItem(name, iconImage='DefaultVideo.png', thumbnailImage=iconimage)
    liz.setInfo(type='Video', infoLabels={'Title':name})
    liz.setProperty("IsPlayable","true")
    liz.setPath(STREAM)
    xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, liz)



        #self.AddLiveLink( list, id.replace('_',' ').upper(), url, language = language.title(),host= 'BBC iPLAYER '+supplier,quality=quality_dict.get(res, 'NA'))
项目:catchup4kodi    作者:catchup4kodi    | 项目源码 | 文件源码
def PLAY_STREAM(name,url,iconimage):
    name = name.split(' : ', 1)[-1]

    liz = xbmcgui.ListItem(name, iconImage='DefaultVideo.png', thumbnailImage=iconimage)
    liz.setInfo(type='Video', infoLabels={'Title':name})
    liz.setProperty("IsPlayable","true")
    liz.setPath(url)
    xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, liz)
项目:plugin.video.vrt.nu    作者:pietje666    | 项目源码 | 文件源码
def play_video(self, stream):
        if stream is not None:
            play_item = xbmcgui.ListItem(path=stream.stream_url)
            if stream.subtitle_url is not None:
                play_item.setSubtitles([stream.subtitle_url])
            xbmcplugin.setResolvedUrl(self._handle, True, listitem=play_item)
项目:plugin.video.vrt.nu    作者:pietje666    | 项目源码 | 文件源码
def play_livestream(self, path):
        play_item = xbmcgui.ListItem(path=path)
        xbmcplugin.setResolvedUrl(self._handle, True, listitem=play_item)
项目:IETVNOW    作者:mathsgrinds    | 项目源码 | 文件源码
def router(paramstring):
    params = dict(parse_qsl(paramstring[1:]))
    if params:
        if params['mode'] == 'play':
            play_item = xbmcgui.ListItem(path=params['link'])
            xbmcplugin.setResolvedUrl(__handle__, True, listitem=play_item)
    else:
        for stream in streams():
            list_item = xbmcgui.ListItem(label=stream['name'], thumbnailImage=stream['thumb'])
            list_item.setProperty('fanart_image', stream['thumb'])
            list_item.setProperty('IsPlayable', 'true')
            url = '{0}?mode=play&link={1}'.format(__url__, stream['link'])
            xbmcplugin.addDirectoryItem(__handle__, url, list_item, isFolder=False)
        xbmcplugin.endOfDirectory(__handle__)
项目:plugin.audio.tidal2    作者:arnesongit    | 项目源码 | 文件源码
def play_video(video_id):
    media = session.get_video_url(video_id)
    if media:
        log("Playing: %s" % media.url)
        li = ListItem(path=media.url)
        li.setProperty('mimetype', 'video/mp4')
        xbmcplugin.setResolvedUrl(plugin.handle, True, li)
项目:plugin.video.streamlink    作者:beardypig    | 项目源码 | 文件源码
def _set_resolved_url(self, context):
        """
        Resolve a playable URL

        :param context: context object
        :type context: PlayContext
        """
        self.log_debug('Resolving URL from {0}'.format(str(context)))
        if context.play_item is None:
            list_item = xbmcgui.ListItem(path=context.path)
        else:
            list_item = self.create_list_item(context.play_item)
        xbmcplugin.setResolvedUrl(self._handle, context.succeeded, list_item)
项目:pelisalacarta-ce    作者:pelisalacarta-ce    | 项目源码 | 文件源码
def play_resolved_url(url):
    _log("play_resolved_url ["+url+"]")

    listitem = xbmcgui.ListItem(path=url)
    listitem.setProperty('IsPlayable', 'true')
    return xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, listitem)
项目:plugin.video.ais_playbox_unofficial    作者:graffic    | 项目源码 | 文件源码
def play_channel(channel):
    """Make kodi play a TV channel"""
    url = get_channel_url(channel)
    play_item = xbmcgui.ListItem("Channel")
    play_item.setPath(url)
    play_item.setInfo(type='Video', infoLabels={'Title': 'Channel'})
    play_item.setProperty("IsPlayable", "true")
    xbmcplugin.setResolvedUrl(plugin_handle, True, listitem=play_item)
项目:plugin.video.streamondemand-pureita    作者:orione7    | 项目源码 | 文件源码
def play_resolved_url(url):
    _log("play_resolved_url ["+url+"]")

    listitem = xbmcgui.ListItem(path=url)
    listitem.setProperty('IsPlayable', 'true')
    return xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, listitem)
项目:kodi_plugins    作者:pitpompej    | 项目源码 | 文件源码
def playMP3Track(songId):
    content = trackPostUnicodeGetRestrictedPage('https://music.amazon.de/dmls/', songId)
    url_list_match = re.compile('urlList":\["(.+?)"',re.DOTALL).findall(content)
    if url_list_match:
        mp3_file_string = url_list_match[0]
        play_item = xbmcgui.ListItem(path=mp3_file_string)
        play_item = setPlayItemInfo(play_item)
        xbmcplugin.setResolvedUrl(pluginhandle, True, listitem=play_item)
项目:plugin.video.rtbfauvio    作者:Gaet81    | 项目源码 | 文件源码
def playUrl(url):
    xbmc.log('Play url:' + url,xbmc.LOGDEBUG)
    if not in_xbmc:
        return True
    liz = xbmcgui.ListItem(path=url)
    return xbmcplugin.setResolvedUrl(handle=int(sys.argv[1]), succeeded=True, listitem=liz)
项目:kodi-fsgo    作者:emilsvennesson    | 项目源码 | 文件源码
def play(channel_id, airing_id=None):
    stream_url = fsgo.get_stream_url(channel_id, airing_id)
    if stream_url:
        bitrate = select_bitrate(stream_url['bitrates'].keys())
        if bitrate:
            play_url = stream_url['bitrates'][bitrate]
            playitem = xbmcgui.ListItem(path=play_url)
            playitem.setProperty('IsPlayable', 'true')
            xbmcplugin.setResolvedUrl(_handle, True, listitem=playitem)
    else:
        dialog('ok', language(30020), message=language(30021))
项目:kodi-addons    作者:leonardoxiao    | 项目源码 | 文件源码
def play_video(path):
    """
    Play a video by the provided path.

    :param path: str
    """
    # Get the list of videos in the category.
    url = get_video(path)
    print("play_video:url={0}".format(url))

    # Create a playable item with a path to play.
    play_item = xbmcgui.ListItem(path=url)
    # Pass the item to the Kodi player.
    xbmcplugin.setResolvedUrl(_handle, True, listitem=play_item)
项目:plugin.video.amazon65    作者:phil65    | 项目源码 | 文件源码
def IStreamPlayback(url, asin, trailer):
    values = getFlashVars(url)
    if not values:
        return
    vMT = 'Trailer' if trailer == '1' else 'Feature'
    data = getUrldata(mode='catalog/GetPlaybackResources',
                      values=values,
                      extra=True,
                      vMT=vMT,
                      opt='&titleDecorationScheme=primary-content')
    title, plot, mpd, subs = getStreams(*data, retmpd=True)
    licURL = getUrldata(mode='catalog/GetPlaybackResources',
                        values=values,
                        extra=True,
                        vMT=vMT,
                        dRes='Widevine2License',
                        retURL=True)
    common.Log(mpd)
    listitem = xbmcgui.ListItem(path=mpd)

    if trailer == '1':
        if title:
            listitem.setInfo('video', {'Title': title + ' (Trailer)'})
        if plot:
            listitem.setInfo('video', {'Plot': plot})
    listitem.setSubtitles(subs)
    listitem.setProperty('inputstreamaddon', 'inputstream.mpd')
    listitem.setProperty('inputstream.mpd.license_type', 'com.widevine.alpha')
    listitem.setProperty('inputstream.mpd.license_key', licURL)
    xbmcplugin.setResolvedUrl(pluginhandle, True, listitem=listitem)
项目:plugin.video.zdf_de_2016    作者:generia    | 项目源码 | 文件源码
def _sendMessage(self, level, caption, message, action=Action()):
        dialog = xbmcgui.Dialog()
        dialog.notification(caption, message, level)
        url = self.encodeUrl(action)
        self.context.log.info("[Response] - send{} '{}', redirecting to '{}'", caption, message, url)
        listItem = xbmcgui.ListItem()
        xbmcplugin.setResolvedUrl(self.handle, False, listItem)