Commit Graph

365 Commits

Author SHA1 Message Date
wukko
a998a5720c
web/queue: refactor media icon selection 2025-06-22 15:35:04 +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
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
0b0f0d65ef
web/queue: add subtitle codec args 2025-06-20 17:32:53 +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
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
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
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
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
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
nexpid
170cf293bf
api/soundcloud: add more metadata fields (#1313) 2025-06-08 18:07:38 +06:00
wukko
77e78d55fc
web/workers/fetch: catch network-related errors & retry 3 times
previously all network issues showed a "worker crashed" error, which people misinterpreted all the time, and reasonably so
2025-06-07 11:46:16 +06:00
jj
a0560fe684
web: update crypto addresses 2025-06-05 18:14:01 +00:00
wukko
ee2be1fb9e
web/device: enable local processing on ios 18+ by default
hopefully ios users will figure out what buttons they have to press, but if not, i'll add an explanatory dialog
2025-06-03 10:49:38 +06:00
jj
b4a53d0fde
web/state/task-manager: use writable-readonly store instead of readable
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-01 10:11:40 +00:00
jj
d6e2f3cb12
web/storage: more stringent opfs check
Some checks failed
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
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Has been cancelled
2025-05-29 19:31:01 +00:00
wukko
d4a2fe507f
web: add support for "remux" type of local processing
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 currently used for fixing a very specific set of twitter videos, but will be used for remuxing HLS videos in the future
2025-05-29 00:23:56 +06:00
wukko
c2d76010c5
api/core: remove durationLimit from server info
it's not used, no clue why it was here in the first place
2025-05-27 17:12:58 +06:00
wukko
7d84b74e9e
web/device: allow default local processing on desktop & android firefox
Some checks are pending
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
Run tests / web sanity check (push) Waiting to run
Run tests / api sanity check (push) Waiting to run
Run tests / check lockfile correctness (push) Waiting to run
2025-05-25 00:24:30 +06:00
wukko
bb8acc8b98
web/run-worker: add brackets around the case block with a const
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-05-24 14:40:41 +06:00
wukko
2f6196f6e3
web/queue: remove final file from results without swapping for a dummy 2025-05-24 14:27:30 +06:00
jj
9c16efd3b1
web/lib/download: delay revoking object URL for 10s
just to be safe
2025-05-23 17:50:24 +00:00
jj
892c055d6a
web/queue: replace pipelineResults array with object 2025-05-23 17:44:47 +00:00
jj
17bcfa3a03
web/queue: more uuid refactoring
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-05-23 17:37:04 +00:00
jj
47683cecec
web/types: create uuid alias for worker ids 2025-05-23 17:05:31 +00:00
jj
c647e191f3
web/workers/fetch: rename totalBytes to expectedSize 2025-05-23 15:55:29 +00:00
wukko
add0ab4adf
web/lib/api: wait for turnstile solution, refactor
now cobalt waits for turnstile for 15 seconds before showing an assistive dialog, instead of showing the dialog right away. much better ux!
2025-05-23 20:37:47 +06:00
wukko
98cd4dfc0d
web/queue: in-place queue task retrying
Some checks failed
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
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Has been cancelled
no more duplicate tasks
2025-05-19 22:49:54 +06:00
wukko
46c5e2e2b5
web/download: use shareFile or openFile depending on file size on ios 2025-05-19 20:35:42 +06:00
wukko
566194d8a6
web/lib/download: allow opening file object url on ios
sharing a big file crashes ios safari, but opening it works perfectly fine. will revert if this causes even more issues than before
2025-05-19 17:39:51 +06:00
wukko
5e1e083ff3
web/lib/download: don't wrap a file inside a file when sharing
wtf
2025-05-19 17:03:06 +06:00
wukko
b6693cd4b2
web/queue: fix total progress
the issue was caused by currentTasks state dependence in ProcessingQueue, now it's properly updated just like before :3
2025-05-19 16:32:48 +06:00
jj
398681857b
web: parallel queue item processing
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-05-17 18:18:19 +00:00
jj
426c073d5f
web/queue: move error() out of createSavePipeline closure
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-05-16 14:58:30 +00:00
jj
3d92a85ba2
web/queue: decompose ffmpeg construction in createSavePipeline 2025-05-16 14:50:57 +00:00
wukko
9cf40549e3
web/workers/fetch: retry only when needed & reduce attempts to 3 2025-05-14 21:16:38 +06:00
wukko
68554c5b53
web/remux: add imported files to queue automatically & filter by type
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-05-14 16:08:13 +06:00
wukko
b1b5f3bba2
web/types/queue: remove obsolete todo comment 2025-05-14 15:37:54 +06:00
wukko
345df13647
web/workers/ffmpeg: error codes, better error handling, remove logs 2025-05-14 15:37:31 +06:00
wukko
8139e77b66
web/workers/fetch: proper error codes, remove debug logging 2025-05-14 15:36:02 +06:00
wukko
50746be9bf
web/task-manager/scheduler: proper error code 2025-05-14 15:35:06 +06:00
wukko
4a6f159e06
web/task-manager/runner: proper error codes, remove debug logging 2025-05-14 15:34:40 +06:00
wukko
9d129bc865
web/task-manager/run-worker: error if ffmpeg args are missing
instead of just hanging
2025-05-14 15:33:30 +06:00
wukko
eeda4beb25
web/task-manager/queue: show a dialog on error 2025-05-14 15:29:19 +06:00
wukko
700067c4ec
web/saving-handler: refactor error dialog handling
& remove debug logging for local processing
2025-05-14 15:26:39 +06:00
jj
bb177d8c81
web/migrate/v5: initialize settings subobjects if they are missing 2025-05-14 08:03:34 +00:00