310 Commits

Author SHA1 Message Date
wukko
d3c41db99a
api/services/youtube: force player_id
temporary workaround
2025-09-27 21:09:52 +03:00
zImPatrick
83a8da7151
api/vimeo: add support for specifying access tokens (#1443)
* the android client now also needs a valid device_identifier, but already generated access_tokens work fine
* you can also get them from a rooted device by mitm'ing the device while starting vimeo for the first time or going into its data directory and searching for the token in shared_prefs/
2025-09-24 18:27:13 +02:00
jj
bec77b99e5
api/twitter: use newer graphql endpoint, refactor (#1436) 2025-09-05 19:00:50 +02:00
wukko
7a6977ec35
api/processing/service-patterns: refactor
sorted all patterns alphabetically and moved the "or" operator to the end of the line
2025-08-11 18:31:52 +06:00
wukko
64a7b1dd62
api/bilibili: add support for video parts/episodes
different videos share the same id, kind of weird
2025-08-11 18:15:38 +06:00
TfourJ
1d5db46a79
api/service-config: add support for m subdomain for twitch (#1407)
* api/twitch: add support for m. subdomain

* tests/twitch: add test for m. subdomain
2025-08-10 13:14:23 +02:00
wukko
95efd71eac
api: update youtubei.js to 15.0.0, use main package again
undici update was merged upstream :D
2025-07-19 18:47:07 +06:00
KwiatekMiki
3f785e7cbe
api: support new xiaohongshu links, add fallbacks to getRedirectingURL
closes #1394
Co-authored-by: wukko <me@wukko.me>
2025-07-18 20:43:58 +06:00
jj
60f02b18e4
vimeo: use android client for session 2025-07-11 18:35:02 +00:00
wukko
61de303dc4
api: add support for newgrounds
closes #620, replaces #1368
Co-authored-by: hyperdefined <contact@hyper.lol>
2025-07-10 00:56:35 +06:00
wukko
58ea4aed01
api/soundcloud: check if a cover url returns 200
some songs don't have a cover but artwork_url is still defined, even though the response is always 404
2025-07-09 15:56:22 +06:00
wukko
51a9680b39
api/match: fix localDisabled
accidentally left the old naming of the option here, typescript would've prevented this
2025-07-08 20:58:19 +06:00
wukko
2e86a6ca70
api/bilibili: don't return isHLS
videos are no longer HLS i guess
2025-07-07 18:08:26 +06:00
wukko
2ac0436f71
api/tiktok: return empty error if there's nothing to download
sometimes posts are broken and don't have any valid media
2025-07-06 00:04:40 +06:00
wukko
b4290ecf30
api/vimeo: use bearer, update headers, better error handling 2025-07-04 15:55:40 +06:00
wukko
810e0a865c
api/package: replace youtubei.js with a fork, update undici 2025-07-01 16:15:12 +06:00
wukko
9b3ebe90c5
api/language-codes: remove region part of the language code
and convert language codes if they're not 3 characters long
2025-07-01 01:06:31 +06:00
wukko
d70180b23c
api/core: merge isApiKey and isSession into authType
cuz they can't be true at the same time
2025-06-28 17:05:18 +06:00
wukko
7298082bd5
api: refactor two static arrays to set 2025-06-28 16:31:39 +06:00
wukko
9d818300f4
api/twitter: add subtitle extraction
closes #1219
2025-06-28 16:19:41 +06:00
wukko
51c5d055ec
api/service-patterns/tiktok: allow longer shortLink
tiktok is a/b testing a new shortLink format that's ±19 characters long but behaves the same way as old format
2025-06-28 14:45:04 +06:00
wukko
3243564f77
api/api-keys: add allowedServices to limit or extend access
it's useful for limiting access to services per key, or for overriding default list of enabled services with "all"
2025-06-26 22:20:09 +06:00
wukko
d69100c68d
api/tiktok: validate that redirected link is still tiktok 2025-06-26 21:32:31 +06:00
wukko
84aa80e2d3
api/match-action: don't add cover if metadata is disabled 2025-06-26 17:45:01 +06:00
wukko
164ea8aeb9
api: return covers from soundcloud and youtube
& refactor createProxyTunnels() in stream/manage a little
2025-06-26 17:36:26 +06:00
wukko
f4637b746c
api/rutube: add subtitles 2025-06-25 20:12:30 +06:00
wukko
52695cbd0f
api/service-config: replace static arrays with sets 2025-06-25 19:33:16 +06:00
wukko
28b85380c9
api/vk: allow auto generated subs & pick explicitly vtt
i couldn't find a single video that had any subtitles other than auto generated ones, so i think this is better than nothing at all
2025-06-24 17:56:04 +06:00
wukko
ff06a10b5c
api/processing/url: improve vk url parsing 2025-06-24 17:21:32 +06:00
wukko
997b06ed0e
api/vk: add support for subtitles 2025-06-24 17:06:19 +06:00
wukko
6d62bce92d
api/match-action: don't force local-processing response for pickers
cuz that won't work, at least for now
2025-06-22 20:12:22 +06:00
wukko
21c4a1ebbc
api/match: set alwaysProxy to true if local processing is forced 2025-06-22 20:09:48 +06:00
wukko
0fca9c440c
api/schema: remove deprecated variables 2025-06-22 20:07:37 +06:00
wukko
05fb1601c8
api/match: update forcing local processing via env 2025-06-22 20:06:28 +06:00
wukko
ac85ce86c0
api/processing/request: backwards compat with boolean localProcessing 2025-06-22 16:21:55 +06:00
wukko
28ab2747ce
api/match-action: support forced local processing 2025-06-22 16:21:37 +06:00
wukko
a6b599a828
api/schema: transform localProcessing to enum 2025-06-22 16:20:27 +06:00
wukko
630e4a6e0d
api/tiktok: add support for subtitles 2025-06-20 20:07:50 +06:00
wukko
aff2d22edc
api/language-codes: add reverse lookup (2 to 1) 2025-06-20 20:05:17 +06:00
wukko
d18b22e7ed
api/processing/request: return a unique error code 2025-06-20 19:53:01 +06:00
wukko
ab526c234e
api/loom: add transcription subtitles
since there's no language selection (at all), we just add the only transcription if a user wants subtitles
2025-06-20 18:59:35 +06:00
wukko
a44bea6b50
api/vimeo: add subtitle parsing from the mobile api 2025-06-20 18:21:00 +06:00
wukko
337edfc984
api/request/local-processing: return subtitles boolean 2025-06-20 17:38:49 +06:00
wukko
7ce9d6882b
api/youtube: don't use session if user wants subtitles
cuz they're not currently available anywhere but HLS
2025-06-20 17:27:49 +06:00
wukko
33c801f66b
api/youtube: add support for youtubeVideoContainer 2025-06-20 14:35:43 +06:00
wukko
eb249a3eed
api/match: ignore subtitleLang if it's "none" 2025-06-20 14:35:14 +06:00
wukko
2396462c5c
api/schema: add youtubeVideoContainer 2025-06-20 14:23:16 +06:00
wukko
672b3dcf46
api/match-action: convert ISO 639-1 language codes to ISO 639-2 2025-06-19 17:46:15 +06:00
wukko
259a0758f1
api: initial subtitles functionality with youtube support
this took way more effort than i expected it to do, mostly because of youtube locking everything down to shit

local processing doesn't function with subtitles yet, wasm needs to be updated
2025-06-18 20:24:13 +06:00
wukko
967552b26b
api/schema: add subtitleLang 2025-06-18 18:37:24 +06:00