diff --git a/src/match/matches.ts b/src/match/matches.ts index 53ffa79..ed4b8b0 100644 --- a/src/match/matches.ts +++ b/src/match/matches.ts @@ -1,5 +1,5 @@ export enum Reliability { - HIGH = 1, + HIGH, NORMAL, LOW, } diff --git a/src/ui/player/player.ts b/src/ui/player/player.ts index a55cae1..f766bf2 100644 --- a/src/ui/player/player.ts +++ b/src/ui/player/player.ts @@ -1,4 +1,4 @@ -import {Match, matches, Reliability} from "../../match/matches"; +import {matches} from "../../match/matches"; // @ts-ignore import Hls from "hls.js"; @@ -8,51 +8,13 @@ function show_message(message: string) { document.getElementById('video').hidden = true } -async function check_loaded(match: Match, check: Promise) { - const loaded = await new Promise((resolve, _) => { - setTimeout(() => { - resolve(false) - }, match.reliability * 3000) - - check - .then(value => resolve(value)) - .catch(_ => resolve(false)) - }) - - if (!loaded) { - let message: string - switch (match.reliability) { - case Reliability.LOW: - message = `The reliability for this domain is low, errors like this are common. - Try to choose another streaming provider (if existent) or deactivate the addon for this provider (${match.name}) and try again` - break - case Reliability.NORMAL: - message = `The reliability for this domain is normal, errors like this can occur but are not very common. Try to refresh the page` - break - case Reliability.HIGH: - message = `The reliability for this domains is high, errors like this are very unlikely to happen. - Try to refresh the page and if the error still exists you might want to open a new issue. - When you're using Tor, such errors have a slight chance to occur more often, - so if this is the case just try to reload the page and see if it's working then` - break - } - show_message(`Could not load video. ${message}`) - } -} - -async function play_native(url: string, match: Match) { +async function play_native(url: string) { const video = document.getElementById('video') as HTMLVideoElement video.controls = true video.src = url - - const readyState = new Promise((resolve, _) => { - video.onloadeddata = () => resolve(true) - }) - - await check_loaded(match, readyState) } -async function play_hls(url: string, match: Match) { +async function play_hls(url: string) { const video = document.getElementById('video') as HTMLVideoElement video.controls = true @@ -64,12 +26,6 @@ async function play_hls(url: string, match: Match) { }) hls.loadSource(url) hls.attachMedia(video) - - const readyState = new Promise((resolve, _) => { - video.onloadeddata = () => resolve(true) - }) - - await check_loaded(match, readyState) } else { show_message('Failed to play m3u8 video (hls is not supported). Try again or create a new issue here') } @@ -88,7 +44,7 @@ async function main() { } document.title = `Stream Bypass (${domain})` - url.endsWith('.m3u8') ? await play_hls(url, match) : await play_native(url, match) + url.endsWith('.m3u8') ? await play_hls(url) : await play_native(url) } main()