def METHOD_NAME(self, user_id, video_name):
    res = self.session.http.get(
        urljoin(self.api_url, "getVideoByFileName"),
        params=dict(
            userId=user_id,
            videoName=video_name,
            serverType="web",
            callback="x",
        ),
    )
    vod_data = self.session.http.json(res, schema=self.vod_schema)
    if video_name == vod_data["ShowTitle"]:
        host, base_path = self.server_addr_re.search(
            vod_data["ServerAddress"],
        ).groups()
        if not host or not base_path:
            raise PluginError("Could not split 'ServerAddress' components")
        base_file, file_ext = self.media_file_re.search(
            vod_data["MediaFile"],
        ).groups()
        if not base_file or not file_ext:
            raise PluginError("Could not split 'MediaFile' components")
        media_path = "{0}{1}{2}{3}{4}{5}".format(
            base_path,
            vod_data["MediaRoot"],
            base_file,
            vod_data["Bitrates"],
            file_ext,
            vod_data["StreamingType"],
        )
        log.debug("Media path={0}".format(media_path))
        vod_url = urlunparse((
            vod_data["ProtocolType"],
            host,
            media_path,
            "",
            vod_data["Token"],
            "",
        ))
        log.debug("URL={0}".format(vod_url))
        return HLSStream.parse_variant_playlist(self.session, vod_url)