Example #1
0
    def _get_streams(self):
        res = http.get(self.url)
        playlist = jwplayer.parse_playlist(res)
        if not playlist:
            return

        for item in playlist:
            streams = map(self._create_stream, item["sources"])

            # TODO: Replace with "yield from" when dropping Python 2.
            for stream in chain.from_iterable(streams):
                yield stream
Example #2
0
    def _get_streams(self):
        res = http.get(self.url)
        playlist = jwplayer.parse_playlist(res)
        if not playlist:
            return

        for item in playlist:
            for source in item["sources"]:
                filename = source["file"]
                if filename.endswith(".smil"):
                    # TODO: Replace with "yield from" when dropping Python 2.
                    for stream in self._get_smil_streams(filename):
                        yield stream
                elif filename.startswith("/"):
                    name = source.get("label", "vod")
                    url = BASE_VOD_URL + filename
                    yield name, HTTPStream(self.session, url)

            break
Example #3
0
    def _get_streams(self):
        res = http.get(self.url)
        playlist = jwplayer.parse_playlist(res)
        if not playlist:
            return

        for item in playlist:
            for source in item["sources"]:
                filename = source["file"]
                if filename.endswith(".smil"):
                    # TODO: Replace with "yield from" when dropping Python 2.
                    for stream in self._get_smil_streams(filename):
                        yield stream
                elif filename.startswith("/"):
                    name = source.get("label", "vod")
                    url = BASE_VOD_URL + filename
                    yield name, HTTPStream(self.session, url)

            break