def _playlist_updated(self, pl):
if pl.has_programs():
# if we got a program playlist, save it and start a program
self._program_playlist = pl
(program_url, _) = pl.get_program_playlist(self.program, self.bitrate)
l = HLS.make_url(self.url, program_url)
return self._reload_playlist(M3U8(l))
elif pl.has_files():
# we got sequence playlist, start reloading it regularly, and get files
self._file_playlist = pl
if not self._files:
self._files = pl.iter_files()
if not pl.endlist():
if not self._pl_task:
self._pl_task = task.LoopingCall(self._reload_playlist, pl)
self._pl_task.start(10, False)
if self._file_playlisted:
self._file_playlisted.callback(pl)
self._file_playlisted = None
else:
raise
return pl
评论列表
文章目录