Commit Graph

3130 Commits

Author SHA1 Message Date
wukko
a6b599a828
api/schema: transform localProcessing to enum 2025-06-22 16:20:27 +06:00
wukko
a998a5720c
web/queue: refactor media icon selection 2025-06-22 15:35:04 +06:00
wukko
2c0a1b6990
web/i18n/settings: update subtitles description
Some checks failed
Run tests / api sanity check (push) Has been cancelled
Run tests / web sanity check (push) Has been cancelled
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Has been cancelled
Run service tests / test service functionality (push) Has been cancelled
Run tests / check lockfile correctness (push) Has been cancelled
Run service tests / test service: ${{ matrix.service }} (push) Has been cancelled
2025-06-20 20:35:23 +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
Some checks are pending
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
Run service tests / test service functionality (push) Waiting to run
Run service tests / test service: ${{ matrix.service }} (push) Blocked by required conditions
Run tests / api sanity check (push) Waiting to run
Run tests / check lockfile correctness (push) Waiting to run
Run tests / web sanity check (push) Waiting to run
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
17ab8dd709
web/queue: add subtitles independently from remux type
so that you can have a mute video with subtitles
2025-06-20 18:30:39 +06:00
wukko
a44bea6b50
api/vimeo: add subtitle parsing from the mobile api 2025-06-20 18:21:00 +06:00
wukko
a5838f3c05
api/stream/types: add subtitles & metadata to remux 2025-06-20 18:16:32 +06:00
wukko
254ad961d3
web/queue: add subtitle args when output has subtitles
not when there are 3 tunnels, that was dumb of me, my bad
2025-06-20 17:41:20 +06:00
wukko
337edfc984
api/request/local-processing: return subtitles boolean 2025-06-20 17:38:49 +06:00
wukko
0b0f0d65ef
web/queue: add subtitle codec args 2025-06-20 17:32:53 +06:00
wukko
96a02d554f
web/package: update libav packages 2025-06-20 17:28:06 +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
993a885a3e
web/util: add support for subtitle track language metadata 2025-06-20 16:20:32 +06:00
wukko
9f7f63783d
web/api/saving-handler: add youtubeVideoContainer & subtitleLang 2025-06-20 16:09:19 +06:00
wukko
a30a27a4ec
web/settings/metadata: add subtitles language dropdown 2025-06-20 15:56:11 +06:00
wukko
5860c50c59
web/settings/video: add youtube container settings 2025-06-20 15:50:30 +06:00
wukko
1e5cc353e4
web/audio-sub-language: refactor, prioritize popular languages
now the page with a picker won't freeze if intl can't recognize a language code & subtitle settings item will be localized. dub & sub now use their own arrays of languages (first one needs "original" as default and second one needs "none" as default).
2025-06-20 15:42:50 +06:00
wukko
c9fdfca239
web/SettingsDropdown: prevent crash if selectedTitle is undefined 2025-06-20 15:04:37 +06:00
wukko
6e394cda29
web/settings: add youtubeVideoContainer & subtitleLang
& bump schema to v6
2025-06-20 15:00:13 +06:00
wukko
3daf1c4834
web: refactor youtube-lang
- fixed unlocalized "original" string
- added subtitle type exports
2025-06-20 14:54:42 +06:00
wukko
c4e910dd29
api/stream/types: refactor, support mkv, don't duplicate args 2025-06-20 14:39:17 +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
4da95e0a2b
web/libav: disable wasm multithreading on old ios
Some checks are pending
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
Run tests / check lockfile correctness (push) Waiting to run
Run tests / web sanity check (push) Waiting to run
Run tests / api sanity check (push) Waiting to run
2025-06-20 00:43:18 +06:00
wukko
fef6ee1a17
web/i18n/error/queue: add missing generic_error
oops
2025-06-19 22:38:16 +06:00
wukko
672b3dcf46
api/match-action: convert ISO 639-1 language codes to ISO 639-2
Some checks failed
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Has been cancelled
Run service tests / test service functionality (push) Has been cancelled
Run tests / check lockfile correctness (push) Has been cancelled
Run tests / web sanity check (push) Has been cancelled
Run tests / api sanity check (push) Has been cancelled
Run service tests / test service: ${{ matrix.service }} (push) Has been cancelled
2025-06-19 17:46:15 +06:00
wukko
b91c0c0013
api/stream/types: specify subtitle format for containers other than mp4 2025-06-19 17:19:39 +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
wukko
1e3593103b
docs/api-env-variables: update FORCE_LOCAL_PROCESSING section
Some checks failed
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Has been cancelled
Run service tests / test service functionality (push) Has been cancelled
Run tests / check lockfile correctness (push) Has been cancelled
Run tests / web sanity check (push) Has been cancelled
Run tests / api sanity check (push) Has been cancelled
Run service tests / test service: ${{ matrix.service }} (push) Has been cancelled
2025-06-17 13:40:32 +06:00
wukko
c0d3c21e75
docs/api-env-variables: add info about ENABLE_DEPRECATED_YOUTUBE_HLS 2025-06-17 13:40:17 +06:00
wukko
19be25c6e6
docs/api-env-variables: fix ratelimit variable names
closes #1354
2025-06-17 13:34:39 +06:00
wukko
b8801570a9
api/env: SESSION_RATELIMIT -> SESSION_RATELIMIT_MAX 2025-06-17 13:33:50 +06:00
wukko
af99e7218c
api: disable youtube HLS by default & add env to enable it 2025-06-17 13:21:16 +06:00
wukko
1e7406de9d
web/i18n/error/api: rephrase youtube.no_matching_format
Some checks are pending
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
Run service tests / test service functionality (push) Waiting to run
Run service tests / test service: ${{ matrix.service }} (push) Blocked by required conditions
Run tests / check lockfile correctness (push) Waiting to run
Run tests / web sanity check (push) Waiting to run
Run tests / api sanity check (push) Waiting to run
2025-06-16 13:53:57 +06:00
wukko
5e7f9c53b9
api/package: update youtubei.js to 14.0.0 2025-06-16 13:53:04 +06:00
wukko
2ac9153142
web/CaptchaTooltip: increase max width
Some checks failed
Run tests / api sanity check (push) Has been cancelled
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Has been cancelled
Run tests / check lockfile correctness (push) Has been cancelled
Run tests / web sanity check (push) Has been cancelled
allows for prettier layout of text in languages other than english
2025-06-15 15:16:32 +06:00
wukko
e18575f78c
web/i18n/error/api: update youtube.no_matching_format 2025-06-15 13:24:10 +06:00
wukko
507fab847b
web/workers/ffmpeg: proper error code for missing audio channel error
Some checks are pending
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
Run tests / check lockfile correctness (push) Waiting to run
Run tests / web sanity check (push) Waiting to run
Run tests / api sanity check (push) Waiting to run
2025-06-14 17:24:47 +06:00
wukko
5ea170a5ac
web: deprecate youtube HLS, enable it only via env variable
Some checks are pending
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
Run tests / check lockfile correctness (push) Waiting to run
Run tests / web sanity check (push) Waiting to run
Run tests / api sanity check (push) Waiting to run
it's now disabled by default because if we ever need HLS for youtube in the future, it'll be managed by the processing instance, not the web client. will probably be removed completely in next major release.
2025-06-14 16:35:35 +06:00
wukko
863d39db6f
web/i18n/about: remove an unused string
Some checks failed
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Has been cancelled
Run tests / check lockfile correctness (push) Has been cancelled
Run tests / web sanity check (push) Has been cancelled
Run tests / api sanity check (push) Has been cancelled
2025-06-12 12:37:38 +06:00
wukko
ace654ea91
web/i18n/dialog: remove even more unused strings 2025-06-12 11:56:09 +06:00
wukko
d0298db112
web/i18n/dialog: remove unused strings 2025-06-12 11:48:29 +06:00
jj
81c8daf852
web/storage: robuster er opfs availability check
Some checks are pending
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
Run tests / check lockfile correctness (push) Waiting to run
Run tests / web sanity check (push) Waiting to run
Run tests / api sanity check (push) Waiting to run
2025-06-11 14:25:16 +00:00
jj
a06baa41c1
web: add uuid() function with fallback if randomUUID is missing 2025-06-11 14:18:04 +00:00
jj
eb90843fc9
web/pagenav: use pop() instead of at(-1) 2025-06-11 14:17:32 +00:00