docs: async def create_stream_player(self, url, opts=ydl_opts):
          """Creates a streamer that plays from a URL"""
          self.current_download_elapsed = 0
  
          self.streamer = await self.vclient.create_ytdl_player(url, ytdl_options=opts, after=self.vafter_ts)
          self.state = "ready"
  
          await self.setup_streamer()
  
          self.nowplayinglog.debug(self.streamer.title)
          self.nowplayingauthorlog.debug(self.streamer.uploader if self.streamer.uploader is not None else "Unknown")
          self.current_duration = 0
          self.is_live = True
  
          info = self.streamer.yt.extract_info(url, download=False)
          self.nowplayingsourcelog.info(api_music.parse_source(info))
  
          play_state = "Streaming" if self.is_live else "Playing"
          await self.set_topic("{} {}".format(play_state, self.streamer.title))
          self.statuslog.debug(play_state)