From a90968400b3bb0c54415febd1fccae7a2a5c96a9 Mon Sep 17 00:00:00 2001 From: Alexander Eichhorn Date: Tue, 20 Jan 2026 00:07:30 +0100 Subject: [PATCH] use ANDROID_SDKLESS client with TV fallback --- package-lock.json | 7 +++---- package.json | 2 +- src/youtube/models/internal.ts | 1 + src/youtube/service.ts | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index f061206..f2b37ac 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.0.0", "dependencies": { "quickjs-emscripten": "^0.31.0", - "youtubei.js": "^16.0.0" + "youtubei.js": "github:alexeichhorn/YouTube.js#feat/android-sdkless-client" }, "devDependencies": { "@cloudflare/vitest-pool-workers": "^0.8.19", @@ -3174,9 +3174,8 @@ } }, "node_modules/youtubei.js": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/youtubei.js/-/youtubei.js-16.0.0.tgz", - "integrity": "sha512-aMx+ulnrxzsgVsxTr7gbBVnIjti2NQUlMwCoo1/MzICCJS3iMLOPUFdo7bSpwskL6ljzQ/LxmmB4WQC3FtkBlA==", + "version": "16.0.1", + "resolved": "git+ssh://git@github.com/alexeichhorn/YouTube.js.git#bba1a8068408fe4843f0589587e697dba634b2d4", "funding": [ "https://github.com/sponsors/LuanRT" ], diff --git a/package.json b/package.json index f0fa3b5..4b237ea 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,6 @@ }, "dependencies": { "quickjs-emscripten": "^0.31.0", - "youtubei.js": "^16.0.0" + "youtubei.js": "github:alexeichhorn/YouTube.js#feat/android-sdkless-client" } } diff --git a/src/youtube/models/internal.ts b/src/youtube/models/internal.ts index 5dd62e9..47783a0 100644 --- a/src/youtube/models/internal.ts +++ b/src/youtube/models/internal.ts @@ -4,6 +4,7 @@ export type AvailableInnertubeClient = | 'WEB' | 'MWEB' | 'ANDROID' + | 'ANDROID_SDKLESS' | 'YTMUSIC' | 'YTMUSIC_ANDROID' | 'YTSTUDIO_ANDROID' diff --git a/src/youtube/service.ts b/src/youtube/service.ts index c5f03ce..21638b3 100644 --- a/src/youtube/service.ts +++ b/src/youtube/service.ts @@ -242,7 +242,7 @@ export class YouTubeService { // - InnerTube Methods - private async getStreams(innertube: Innertube): Promise { - const clients: AvailableInnertubeClient[] = ['TV']; + const clients: AvailableInnertubeClient[] = ['ANDROID_SDKLESS', 'TV']; // const clients: AvailableInnertubeClient[] = ['WEB_EMBEDDED']; let allStreams: RemoteStream[] = [];