From 3e55f90ccc34c0bd54d3a8e626acef88066345dc Mon Sep 17 00:00:00 2001 From: Tachibana Shin Date: Fri, 2 Aug 2024 05:47:17 +0000 Subject: [PATCH] Add pre-resolve network feature and HLS patching - Introduced a new button and tooltip for pre-resolve network settings in `BrtPlayer.vue`. - Added `HlsPatched` class to handle custom HLS loading logic. - Implemented `resolveMasterManifestWorker` for resolving master manifests in a web worker. - Added utility functions for segment handling and network requests. - Updated dependencies in `package.json` to include `p-limit` and `ts-retry`. - Configured server URL in `capacitor.config.json` for development. --- bun.lockb | Bin 658450 -> 659178 bytes package.json | 4 +- .../app/src/main/assets/capacitor.config.json | 4 +- .../android/capacitor.settings.gradle | 22 +- src-capacitor/bun.lockb | Bin 41731 -> 41351 bytes src-capacitor/capacitor.config.json | 4 +- src-capacitor/package.json | 3 +- src/apis/runs/ajax/player-link.ts | 4 +- src/components/BrtPlayer.vue | 326 +++++++++++------- src/logic/find-in-range-set.ts | 9 + src/logic/get-redirect.ts | 12 + src/logic/hls-patched.ts | 211 ++++++++++++ src/logic/resolve-master-manifest.thread.ts | 56 +++ src/logic/resolve-master-manifest.ts | 35 ++ src/logic/resolve-master-manifest.worker.ts | 40 +++ src/stores/settings.ts | 2 + 16 files changed, 581 insertions(+), 151 deletions(-) mode change 100644 => 100755 src-capacitor/bun.lockb create mode 100644 src/logic/find-in-range-set.ts create mode 100644 src/logic/get-redirect.ts create mode 100644 src/logic/hls-patched.ts create mode 100644 src/logic/resolve-master-manifest.thread.ts create mode 100644 src/logic/resolve-master-manifest.ts create mode 100644 src/logic/resolve-master-manifest.worker.ts diff --git a/bun.lockb b/bun.lockb index a9fb2d136af6d2a1c85ea3a195596327162498de..7fdb3b5ceb6708f8752fb893cbc1cd6d7fd7657b 100755 GIT binary patch delta 123872 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

uvDn(`ii6*jTmI>p1&ht;z1 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

nwZRw+>}5xyT0Z<+fM*P(RYYsYmjJ?Nd6u% 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 delta 123560 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

~;V(qmNyIuUlkh)@ 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 XyI*sH^|YQ5Jr(Gv{N!kvFXR6J>^c8% diff --git a/package.json b/package.json index d227eeea..320f3dc2 100644 --- a/package.json +++ b/package.json @@ -63,7 +63,7 @@ "eruda2": "0.0.2-b8", "fb-comments-web": "^0.0.13", "group-array": "^1.0.0", - "hls.js": "1.5.10", + "hls.js": "^1.5.13", "htmlparser2": "^8.0.1", "idb-keyval": "^6.2.1", "iso-639-1": "^2.1.15", @@ -72,6 +72,7 @@ "jwplayer8": "0.0.1-b1", "lz-string": "^1.4.4", "message-port-api": "^0.0.5", + "p-limit": "^6.1.0", "path-browserify": "^1.0.1", "pinia": "^2.0.29", "pinia-plugin-persistedstate": "^3.0.2", @@ -87,6 +88,7 @@ "supabase": "^1.183.5", "swiper": "^8.4.6", "ts-md5": "^1.3.1", + "ts-retry": "^4.2.5", "ua-parser-js": "^1.0.35", "uuid": "^9.0.0", "vn-remove-accents": "^1.0.0", diff --git a/src-capacitor/android/app/src/main/assets/capacitor.config.json b/src-capacitor/android/app/src/main/assets/capacitor.config.json index 0e31cc04..0be22654 100644 --- a/src-capacitor/android/app/src/main/assets/capacitor.config.json +++ b/src-capacitor/android/app/src/main/assets/capacitor.config.json @@ -11,5 +11,7 @@ }, "bundledWebRuntime": false, "webDir": "www", - "server": {} + "server": { + "url": "http://10.0.5.2:9500" + } } diff --git a/src-capacitor/android/capacitor.settings.gradle b/src-capacitor/android/capacitor.settings.gradle index b40227ba..c827bbea 100644 --- a/src-capacitor/android/capacitor.settings.gradle +++ b/src-capacitor/android/capacitor.settings.gradle @@ -1,33 +1,33 @@ // DO NOT EDIT THIS FILE! IT IS GENERATED EACH TIME "capacitor update" IS RUN include ':capacitor-android' -project(':capacitor-android').projectDir = new File('../node_modules/.pnpm/@capacitor+android@5.7.6_@capacitor+core@5.7.6/node_modules/@capacitor/android/capacitor') +project(':capacitor-android').projectDir = new File('../node_modules/@capacitor/android/capacitor') include ':capacitor-community-firebase-analytics' -project(':capacitor-community-firebase-analytics').projectDir = new File('../node_modules/.pnpm/@capacitor-community+firebase-analytics@5.0.1_@capacitor+core@5.7.6/node_modules/@capacitor-community/firebase-analytics/android') +project(':capacitor-community-firebase-analytics').projectDir = new File('../node_modules/@capacitor-community/firebase-analytics/android') include ':capacitor-app' -project(':capacitor-app').projectDir = new File('../node_modules/.pnpm/@capacitor+app@5.0.8_@capacitor+core@5.7.6/node_modules/@capacitor/app/android') +project(':capacitor-app').projectDir = new File('../node_modules/@capacitor/app/android') include ':capacitor-browser' -project(':capacitor-browser').projectDir = new File('../node_modules/.pnpm/@capacitor+browser@5.2.1_@capacitor+core@5.7.6/node_modules/@capacitor/browser/android') +project(':capacitor-browser').projectDir = new File('../node_modules/@capacitor/browser/android') include ':capacitor-device' -project(':capacitor-device').projectDir = new File('../node_modules/.pnpm/@capacitor+device@5.0.8_@capacitor+core@5.7.6/node_modules/@capacitor/device/android') +project(':capacitor-device').projectDir = new File('../node_modules/@capacitor/device/android') include ':capacitor-filesystem' -project(':capacitor-filesystem').projectDir = new File('../node_modules/.pnpm/@capacitor+filesystem@5.2.2_@capacitor+core@5.7.6/node_modules/@capacitor/filesystem/android') +project(':capacitor-filesystem').projectDir = new File('../node_modules/@capacitor/filesystem/android') include ':capacitor-haptics' -project(':capacitor-haptics').projectDir = new File('../node_modules/.pnpm/@capacitor+haptics@5.0.8_@capacitor+core@5.7.6/node_modules/@capacitor/haptics/android') +project(':capacitor-haptics').projectDir = new File('../node_modules/@capacitor/haptics/android') include ':capacitor-preferences' -project(':capacitor-preferences').projectDir = new File('../node_modules/.pnpm/@capacitor+preferences@5.0.8_@capacitor+core@5.7.6/node_modules/@capacitor/preferences/android') +project(':capacitor-preferences').projectDir = new File('../node_modules/@capacitor/preferences/android') include ':capacitor-share' -project(':capacitor-share').projectDir = new File('../node_modules/.pnpm/@capacitor+share@5.0.8_@capacitor+core@5.7.6/node_modules/@capacitor/share/android') +project(':capacitor-share').projectDir = new File('../node_modules/@capacitor/share/android') include ':capacitor-status-bar' -project(':capacitor-status-bar').projectDir = new File('../node_modules/.pnpm/@capacitor+status-bar@5.0.8_@capacitor+core@5.7.6/node_modules/@capacitor/status-bar/android') +project(':capacitor-status-bar').projectDir = new File('../node_modules/@capacitor/status-bar/android') include ':hugotomazi-capacitor-navigation-bar' -project(':hugotomazi-capacitor-navigation-bar').projectDir = new File('../node_modules/.pnpm/@hugotomazi+capacitor-navigation-bar@3.0.0_@capacitor+core@5.7.6/node_modules/@hugotomazi/capacitor-navigation-bar/android') +project(':hugotomazi-capacitor-navigation-bar').projectDir = new File('../node_modules/@hugotomazi/capacitor-navigation-bar/android') diff --git a/src-capacitor/bun.lockb b/src-capacitor/bun.lockb old mode 100644 new mode 100755 index 87d8e09bea8ca533daf1654c146086e879a64ed1..363d1606f0f0c062c36975d9017b8699d897f68c GIT binary patch delta 6416 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 delta 6702 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", "private": true, @@ -22,7 +22,6 @@ "@capacitor/share": "^5.0.8", "@capacitor/status-bar": "^5.0.8", "@hugotomazi/capacitor-navigation-bar": "^3.0.0", - "@jcesarmobile/ssl-skip": "^0.2.0", "cordova-plugin-screen-orientation": "^3.0.4" } } \ No newline at end of file diff --git a/src/apis/runs/ajax/player-link.ts b/src/apis/runs/ajax/player-link.ts index b79301e8..73ddd2c8 100644 --- a/src/apis/runs/ajax/player-link.ts +++ b/src/apis/runs/ajax/player-link.ts @@ -45,7 +45,7 @@ export function PlayerLink(config: { link, backuplinks: "1", }).then(async ({ data }) => { - + if (!data) throw new Error("unknown_error") type Writeable = { -readonly [P in keyof T]: T[P] extends object ? Writeable : T[P] @@ -59,7 +59,7 @@ export function PlayerLink(config: { // eslint-disable-next-line @typescript-eslint/no-explicit-any, promise/no-nesting ;(self as unknown as any).hn ??= await App.getInfo().then( (info) => info.id - ) + ).catch(() => 'git.shin.animevsub') await init() try { diff --git a/src/components/BrtPlayer.vue b/src/components/BrtPlayer.vue index 5f23a3f0..c541ae7d 100644 --- a/src/components/BrtPlayer.vue +++ b/src/components/BrtPlayer.vue @@ -104,7 +104,33 @@ -
+
+ + + + + {{ $t("tang-toc-mang") }} + + { video.value.currentTime = currentTime artCurrentTime.value = currentTime } - + let progressRestored: false | string = false watch( [() => props.currentChap, () => props.currentSeason, () => authStore.uid], @@ -1138,7 +1167,7 @@ const setArtPlaybackRate = (value: number) => { // value control other const artControlShow = ref(true) - + let activeTime = Date.now() const setArtControlShow = (show: boolean) => { artControlShow.value = show @@ -1282,10 +1311,8 @@ function throttle Promise>( ): T & { cancel: () => void } { - let wait = false - let timeout: NodeJS.Timeout | number | undefined // eslint-disable-next-line functional/functional-parameters, @typescript-eslint/no-explicit-any const cb = function (...args: any[]) { @@ -1337,9 +1364,9 @@ const saveCurTimeToPer = throttle( try { // get data from uid and process because processingSaveCurTimeIn === uid then load all of time current - + let cur = artCurrentTime.value - + let dur = artDuration.value if (!dur || cur <= 5) { @@ -1388,8 +1415,8 @@ const saveCurTimeToPer = throttle( { cur, dur, - name: nameCurrentChap - }, + name: nameCurrentChap, + } ) .catch((err) => console.warn("save viewing progress failed: ", err)), @@ -1466,7 +1493,6 @@ function onVideoEnded() { } } - let artPlayingOfBeforeDocumentHide: boolean watch(documentVisibility, (visibility) => { console.log("document %s", visibility) @@ -1479,9 +1505,8 @@ watch(documentVisibility, (visibility) => { }) { - let resume: (() => void) | null = null - + let pause: (() => void) | null = null const resumeDelay = debounce(() => resume?.(), 1_000) onBeforeUnmount(() => pause?.()) @@ -1561,7 +1586,6 @@ function runRemount() { }).onOk(remount) } - let currentHls: Hls onBeforeUnmount(() => currentHls?.destroy()) function remount(resetCurrentTime?: boolean, noDestroy = false) { @@ -1607,115 +1631,88 @@ function remount(resetCurrentTime?: boolean, noDestroy = false) { Hls.isSupported() ) { const offEnds = isNative ? "" : "_extra" - const hls = new Hls({ - debug: import.meta.env.isDev, - workerPath: workerHls, - progressive: true, - fragLoadingRetryDelay: 10000, - fetchSetup(context, initParams) { - // set header because this version always cors not fix by extension like desktop-web - if (isNative) initParams.headers.set("x-referer", C_URL) - else context.url += `#animevsub-vsub${offEnds}_uachrome` - - return new Request(context.url, initParams) + let セグメントs: string[] | null = null + const セグメント解決済み = new Map() + const resolvingTask = new Set() + + const hls = new HlsPatched( + { + debug: import.meta.env.DEV, + workerPath: workerHls, + progressive: true, + fragLoadingRetryDelay: 10000, + fetchSetup(context, initParams) { + // set header because this version always cors not fix by extension like desktop-web + if (isNative) initParams.headers.set("x-referer", C_URL) + else context.url += `#animevsub-vsub${offEnds}` + + return new Request(context.url, initParams) + }, }, - // eslint-disable-next-line @typescript-eslint/no-explicit-any - pLoader: class CustomLoader extends (Hls.DefaultConfig.loader as any) { - loadInternal(): void { - const { config, context } = this - if (!config) { - return + settingsStore.player.preResolve !== 0 && + Number.MAX_SAFE_INTEGER !== settingsStore.player.preResolve + ? (request) => { + /// pre setup + // transforming + if (!セグメントs) + void getSegments(file).then((arr) => (セグメントs = arr)) + if (セグメントs) { + // セグメントs ready + // preload if in セグメントs + const realUrl = request.url.split("#")[0] + const インデントセグメント = セグメントs.indexOf(realUrl) + const 解決済み = セグメント解決済み.get(realUrl) + if ( + インデントセグメント > -1 && + (!解決済み || + settingsStore.player.preResolve - 解決済み[1] < + settingsStore.player.checkEndPreList) && + !findInRangeSet( + resolvingTask, + インデントセグメント, + settingsStore.player.preResolve + ) + ) { + console.log( + "Starting pre resolve segment", + インデントセグメント, + resolvingTask + ) + resolvingTask.add(インデントセグメント) + // あとで5セメント + void retryAsync( + () => + resolveMasterManifestWorker( + // eslint-disable-next-line @typescript-eslint/no-non-null-assertion + セグメントs!, + セグメント解決済み, + インデントセグメント, + settingsStore.player.preResolve + + settingsStore.player.checkEndPreList + ), + { maxTry: 10, delay: 3_000 } + ).catch(() => resolvingTask.add(インデントセグメント)) + // load balance 20 + // check fn セグメントs in 20。workerせとじゃない。メモリー? + } + if (import.meta.env.DEV && 解決済み) + console.info("[Segment]: using url resolved") + if (解決済み) return fetchJava(解決済み[0], request) + } + return fetchJava(request.url, request) } - - const { stats } = this - stats.loading.first = 0 - stats.loaded = 0 - - const controller = new AbortController() - const xhr = (this.loader = { - readyState: 0, - status: 0, - responseType: context.responseType, - abort() { - controller.abort() - }, - onreadystatechange: <(() => void) | null>null, - onprogress: < - ((eventt: { loaded: number; total: number }) => void) | null - >null, - response: null, - responseText: null, - }) - const headers = new Headers() - if (this.context.headers) - for (const [key, val] of Object.entries(this.context.headers)) - headers.set(key, val as string) - const { maxTimeToFirstByteMs, maxLoadTimeMs } = config.loadPolicy - - if (context.rangeEnd) { - headers.set( - "Range", - "bytes=" + context.rangeStart + "-" + (context.rangeEnd - 1) - ) + : Number.MAX_SAFE_INTEGER === settingsStore.player.preResolve + ? (request) => { + const realUrl = request.url.split("#")[0] + const 解決済み = セグメント解決済み.get(realUrl) + if (import.meta.env.DEV && 解決済み) + console.info("[Segment]: using url resolved") + if (解決済み) return fetchJava(解決済み[0], request) + return fetchJava(request.url, request) } - - xhr.onreadystatechange = this.readystatechange.bind(this) - xhr.onprogress = this.loadprogress.bind(this) - self.clearTimeout(this.requestTimeout) - config.timeout = - maxTimeToFirstByteMs && Number.isFinite(maxTimeToFirstByteMs) - ? maxTimeToFirstByteMs - : maxLoadTimeMs - this.requestTimeout = self.setTimeout( - this.loadtimeout.bind(this), - config.timeout - ) - - // set header because this version always cors not fix by extension liek desktop-web - headers.set("referer", C_URL) - - fetchJava( - context.url + (!isNative ? "#animevsub-vsub_uachrome" : ""), - { - headers, - signal: controller.signal, - } - ) - .then(async (res) => { - - let byteLength: number - if (context.responseType !== "text") { - xhr.response = await res.arrayBuffer() - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion - byteLength = xhr.response!.byteLength - } else { - xhr.responseText = await res.text() - byteLength = xhr.responseText.length - } - - xhr.readyState = 4 - xhr.status = 200 - xhr.responseType = context.responseType - - xhr.onprogress?.({ - loaded: byteLength, - total: byteLength, - }) - // eslint-disable-next-line promise/always-return - xhr.onreadystatechange?.() - }) - .catch((e) => { - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion - this.callbacks!.onError( - { code: xhr.status, text: e.message }, - context, - xhr - ) - }) - } - } as unknown as PlaylistLoaderConstructor, - }) - if (!offEnds) patcher(hls) + : (request) => fetchJava(request.url, request) + ) + // if (!offEnds) patcher(hls) currentHls = hls // customLoader(hls.config) hls.loadSource(file) @@ -1724,10 +1721,24 @@ function remount(resetCurrentTime?: boolean, noDestroy = false) { hls.on(Hls.Events.MANIFEST_PARSED, () => { // eslint-disable-next-line @typescript-eslint/no-non-null-assertion if (playing) video.value!.play() + + // !NOTIFY resolve redirect urls + if (Number.MAX_SAFE_INTEGER === settingsStore.player.preResolve) + void retryAsync( + async () => + resolveMasterManifestWorker( + await getSegments(file), + セグメント解決済み + ), + { + maxTry: 10, + delay: 3_000, + } + ) }) - + let needSwapCodec = false - + let timeoutUnneedSwapCodec: NodeJS.Timeout | number | null = null hls.on(Hls.Events.ERROR, (event, data) => { if (data.fatal) { @@ -1836,7 +1847,6 @@ const watcherVideoTagReady = watch(video, (video) => { // eslint-disable-next-line promise/catch-or-return Promise.resolve().then(watcherVideoTagReady) // fix this not ready value - let currentEpStream: null | string = null watch( () => currentStream.value?.file, @@ -1882,14 +1892,14 @@ function onIndicatorMove( event: TouchEvent | MouseEvent, innerEl?: HTMLDivElement ): void - + function onIndicatorMove( event: TouchEvent | MouseEvent, innerEl: HTMLDivElement, offsetX: number, curTimeStart: number ): void - + function onIndicatorMove( event: TouchEvent | MouseEvent, // eslint-disable-next-line @typescript-eslint/no-non-null-assertion @@ -1951,13 +1961,13 @@ function onIndicatorEnd() { } // ==== addons swipe backdrop ==== - + let timeoutHoldBD: number | NodeJS.Timeout | null = null const holdedBD = ref(false) - + let xStart: number | null = null - + let curTimeStart: number | null = null function onBDTouchStart(event: TouchEvent) { holdedBD.value = false @@ -2025,13 +2035,13 @@ function skipForward() { } const doubleClicking = ref<"left" | "right" | false>(false) - + let timeoutResetDoubleClicking: number | NodeJS.Timeout | null = null - + let lastTimeClick: number - + let lastPositionClickIsLeft: boolean | null = null - + let timeoutDbClick: number | NodeJS.Timeout | null = null const countSkip = ref(0) function onClickSkip(event: MouseEvent, orFalse: boolean) { @@ -2243,6 +2253,56 @@ watch(skiping, (skiping) => { skipOpEnd() }) + +const optionsPreResolve = computed(() => [ + { + label: t("tat"), + value: 0, + color: "secondary", + keepColor: true, + checkedIcon: "task_alt", + uncheckedIcon: "panorama_fish_eye", + }, + ...[20, 30, 40, 50, 60, 70, 80, 100].map((val, i) => ({ + label: t("val-yeu-cau", [val]), + value: val, + keepColor: true, + checkedIcon: "task_alt", + uncheckedIcon: "panorama_fish_eye", + color: `light-green-${4 + i}`, + })), + { + label: t("nong"), + value: Number.MAX_SAFE_INTEGER, + color: "red", + keepColor: true, + checkedIcon: "task_alt", + uncheckedIcon: "panorama_fish_eye", + }, +]) +function openPopupFlashNetwork() { + $q.dialog({ + title: t("giai-quyet-truoc-yeu-cau-mang"), + message: t("msg-pre-resolve"), + options: { + type: "radio", + model: settingsStore.player.preResolve as unknown as string, + // inline: true + items: optionsPreResolve.value, + }, + cancel: { + label: t("huy"), + noCaps: true, + color: "grey", + text: true, + flat: true, + rounded: true, + }, + ok: { color: "green", text: true, flat: true, rounded: true }, + }).onOk((data) => { + settingsStore.player.preResolve = data + }) +}