WebStreamr
|
3d28b226e5
|
feat(extractor): add StreamEmbed support
|
2025-07-02 16:57:21 +00:00 |
|
WebStreamr
|
5c7b3fb7f2
|
refactor: more consistent import style
|
2025-07-02 09:28:10 +00:00 |
|
WebStreamr
|
1c986b0521
|
refactor(extractor): sort extractors
|
2025-07-01 18:30:49 +00:00 |
|
WebStreamr
|
5da52d648a
|
refactor(extractor): move title height guessing into central place
|
2025-07-01 18:23:27 +00:00 |
|
WebStreamr
|
a0ed13f18e
|
feat: make multi sources explicitly configurable
|
2025-07-01 18:02:21 +00:00 |
|
WebStreamr
|
81434fff0e
|
feat: add Japanese and Korean to languages for VixSrc
|
2025-07-01 15:46:30 +00:00 |
|
WebStreamr
|
9d3ce24b90
|
feat(extractor): implement Streamtape via MediaFlow Proxy
|
2025-06-30 18:57:34 +00:00 |
|
WebStreamr
|
b88eba017d
|
chore(extractor): simplify type and passing of height
|
2025-06-30 18:57:34 +00:00 |
|
WebStreamr
|
8c8bfd6051
|
chore(extractor): add viaMediaFlowProxy flag to extractors
|
2025-06-30 13:32:11 +00:00 |
|
WebStreamr
|
adae573a0f
|
chore(extractor): handle Dropload queued files better
|
2025-06-26 12:21:38 +00:00 |
|
WebStreamr
|
00681e1411
|
fix(extractor): disable ip/session locked Fsst
until a solution is found or MediaFlow Proxy is added
|
2025-06-26 04:21:20 +00:00 |
|
WebStreamr
|
b9d0fb3613
|
fix(extractor): filter by configured languages in VixSrc
|
2025-06-25 20:13:17 +00:00 |
|
WebStreamr
|
ec037d7c90
|
fix(extractor): do not cache session-scoped Fsst
should fix issues where results work only once
|
2025-06-25 20:06:18 +00:00 |
|
WebStreamr
|
c0fc6ff7ea
|
feat(extractor): support multi-language in VixSrc
|
2025-06-25 19:06:13 +00:00 |
|
WebStreamr
|
91d5e9dd36
|
refactor: add support for multi-language extractor results
|
2025-06-25 18:27:44 +00:00 |
|
WebStreamr
|
287b031a12
|
fix(extractor): avoid cache clash between context dependent extractors
|
2025-06-24 23:22:47 +00:00 |
|
WebStreamr
|
f12e3c5bd8
|
feat(extractor): implement VixSrc via MediaFlow Proxy
|
2025-06-24 19:07:23 +00:00 |
|
WebStreamr
|
7ea57222d9
|
refactor: pass Context instead of Config to MFP helper
|
2025-06-24 11:33:58 +00:00 |
|
WebStreamr
|
b2eb16fc82
|
refactor: extract Media Flow Proxy functions
|
2025-06-24 10:52:38 +00:00 |
|
WebStreamr
|
ab588a1501
|
feat(extractor): implement Uqload via MediaFlow Proxy
|
2025-06-23 12:35:54 +00:00 |
|
WebStreamr
|
fd1145c162
|
fix(extractor): introduce format and set notWebReady accordingly
According to https://github.com/Stremio/stremio-addon-sdk/blob/master/docs/api/responses/stream.md
|
2025-06-20 18:40:59 +00:00 |
|
WebStreamr
|
d641fa1c2d
|
chore(extractor): add MediaFlow Proxy info to Mixdrop label
|
2025-06-20 08:46:46 +00:00 |
|
WebStreamr
|
7c600427e6
|
feat(extractor): implement Mixdrop via MediaFlow Proxy
|
2025-06-19 20:51:39 +00:00 |
|
WebStreamr
|
2d4c5a8221
|
test: introduce helper function createTestContext
|
2025-06-19 11:32:59 +00:00 |
|
WebStreamr
|
1d263b5540
|
chore(extractor): show label instead of host for errors
|
2025-06-19 11:04:44 +00:00 |
|
WebStreamr
|
c1f9de58b0
|
chore: do not show external URLs by default
|
2025-06-18 10:06:13 +00:00 |
|
WebStreamr
|
6c7993cdba
|
fix(extractor): handle Fsst with single file result
|
2025-06-18 09:33:40 +00:00 |
|
WebStreamr
|
952993a537
|
chore(extractor): set Referer to URL origin for external URLs
|
2025-06-15 20:41:02 +00:00 |
|
WebStreamr
|
3a28de46bd
|
fix(extractor): handle missing height infos in playlist properly
|
2025-06-15 11:27:53 +00:00 |
|
WebStreamr
|
dd121a068a
|
fix(extractor): only cache URL results if there was no error
|
2025-06-15 11:16:14 +00:00 |
|
WebStreamr
|
81d788ef84
|
chore(extractor): add various exotic DoodStream domains
|
2025-06-14 17:58:19 +00:00 |
|
WebStreamr
|
f11c591dc5
|
chore: do not pass referer through context
|
2025-06-14 13:44:32 +02:00 |
|
WebStreamr
|
2853bff284
|
refactor: use context scoped fixtures
|
2025-06-13 22:37:50 +02:00 |
|
WebStreamr
|
3a4ff73953
|
test: hand-rolled, explicit Fetcher mock
|
2025-06-13 21:53:11 +02:00 |
|
WebStreamr
|
4bc25692a8
|
refactor: use proper prototype class methods
|
2025-06-13 21:26:26 +02:00 |
|
WebStreamr
|
4caf62a367
|
test: instantiate mocked Fetcher with logger consistently
|
2025-06-13 13:20:13 +00:00 |
|
WebStreamr
|
15099de798
|
refactor: introduce helper showExternalUrls()
|
2025-06-13 10:24:32 +00:00 |
|
WebStreamr
|
9b5943208e
|
refactor(extractor): introduce parent class for simplifications
|
2025-06-13 10:04:40 +00:00 |
|
WebStreamr
|
bdae1ff346
|
refactor: define member accessiblity explicitly
|
2025-06-13 09:42:06 +00:00 |
|
WebStreamr
|
013fb4084f
|
fix(extractor): handle missing VidSrc files
|
2025-06-12 20:58:25 +00:00 |
|
WebStreamr
|
d2d7e84d9b
|
refactor: separate handlers and extractors
|
2025-06-12 20:56:50 +00:00 |
|
WebStreamr
|
250d6a1323
|
refactor: make CountryCode an enum
|
2025-06-12 15:56:33 +00:00 |
|
WebStreamr
|
d1da91e030
|
fix(extractor): detect SuperVideo video deletion/expiration
|
2025-06-12 12:06:52 +00:00 |
|
WebStreamr
|
dd6d485340
|
feat(handler): add VidSrc with CloudStream Pro support
|
2025-06-11 20:46:28 +00:00 |
|
WebStreamr
|
4dc3c636a6
|
refactor: extract playlist height guessing
|
2025-06-11 20:18:49 +00:00 |
|
WebStreamr
|
2ea8c16d9e
|
chore(extractor): improve SuperVideo title
|
2025-06-11 10:08:13 +00:00 |
|
WebStreamr
|
63079bf80a
|
chore(extractor): support dooood URLs
|
2025-06-11 08:25:58 +00:00 |
|
WebStreamr
|
19395f1921
|
chore(extractor): decrease timeout and ignore errors for external URLs
|
2025-06-11 08:17:58 +00:00 |
|
WebStreamr
|
fcec03a6a4
|
fix(handler): do not share decipher instance in KinoGer
|
2025-06-10 20:16:48 +00:00 |
|
WebStreamr
|
262abde2fc
|
feat(extractor): implement KinoGer extractor
|
2025-06-10 19:30:33 +00:00 |
|
WebStreamr
|
b940df5bc0
|
chore(extractor): add DoodStream height guessing based on title
|
2025-06-10 19:21:00 +00:00 |
|
WebStreamr
|
041c04e327
|
fix(extractor): prefer using extractor title
|
2025-06-10 19:13:04 +00:00 |
|
WebStreamr
|
141c737cf3
|
chore(extractor): support dooodster links via DoodStream
|
2025-06-10 15:48:11 +00:00 |
|
WebStreamr
|
dd1b3a1f1d
|
chore(extractor): support embed-only SuperVideo URLs
|
2025-06-10 15:17:53 +00:00 |
|
WebStreamr
|
4da121d094
|
refactor(extractor): add return type to all extract methods
|
2025-06-10 15:15:52 +00:00 |
|
WebStreamr
|
2d615ce582
|
refactor(extractor): introduce URL normalization
|
2025-06-10 15:03:05 +00:00 |
|
WebStreamr
|
8382c009f4
|
feat(handler): add support for KinoGer Fsst
|
2025-06-09 20:42:10 +00:00 |
|
WebStreamr
|
1ca4ea4abe
|
chore(extractor): don't use FlareSolverr for external URLs
|
2025-06-09 11:36:17 +00:00 |
|
WebStreamr
|
d1ff7cd732
|
chore(extractor): add bytes detection to DoodStream
|
2025-06-08 19:27:18 +00:00 |
|
WebStreamr
|
0446d52e78
|
refactor: UrlResult[] instead of UrlResult | undefined
|
2025-06-08 18:55:03 +00:00 |
|
WebStreamr
|
7d0544a590
|
chore(handler): add height detection to Soaper
|
2025-06-08 18:21:52 +00:00 |
|
WebStreamr
|
717c2afdc4
|
feat(handler): implement EN Soaper source
|
2025-06-07 19:24:50 +00:00 |
|
WebStreamr
|
1b8f75f00e
|
fix(extractor): do not mutate URLs to avoid cache misses
|
2025-06-04 13:23:54 +00:00 |
|
WebStreamr
|
fef59dd03b
|
fix: never cache result errors
|
2025-06-04 12:05:59 +00:00 |
|
WebStreamr
|
b69c9cde03
|
chore: cache successful results as long as we safely can
|
2025-06-04 10:06:24 +00:00 |
|
WebStreamr
|
ef2c45e2cb
|
chore: add more error infos to results
|
2025-06-03 21:56:19 +00:00 |
|
WebStreamr
|
f6967da5cc
|
chore: try to log error causes
|
2025-06-03 14:54:05 +00:00 |
|
WebStreamr
|
2eb09fc65a
|
chore: generalize forbidden/blocked handling
|
2025-06-01 19:31:11 +00:00 |
|
WebStreamr
|
799ca975ac
|
feat: make external URL exclusion configurable
|
2025-05-29 19:17:21 +00:00 |
|
WebStreamr
|
0638ce0a8c
|
fix: detect and report Cloudflare challenge blocks
|
2025-05-29 17:17:17 +00:00 |
|
WebStreamr
|
d4e402e5c9
|
feat: add title to meta, restructure result name
|
2025-05-25 18:46:55 +00:00 |
|
WebStreamr
|
979dddd20c
|
refactor: move bytes, height and countryCode into meta object
and pass that to the extractors instead. this is a preparation to
support more meta like e.g. title
|
2025-05-25 19:25:39 +02:00 |
|
WebStreamr
|
f3beb72f17
|
bug(extractor): handle not found case properly for DoodStream
|
2025-05-25 19:04:12 +02:00 |
|
WebStreamr
|
6b5c9a4ce7
|
feat(extractor): cache not found results too
|
2025-05-25 18:58:00 +02:00 |
|
WebStreamr
|
8e791bbe24
|
chore: better handle not found streams/links
|
2025-05-23 10:40:59 +00:00 |
|
WebStreamr
|
0a99f1e501
|
chore(extractor): use HEAD instead of GET to check external URLs
|
2025-05-22 16:36:28 +00:00 |
|
WebStreamr
|
23445c143b
|
feat(extractor): add external URL support
This could still be a useful fallback on some devices since it indicates
that we found a potential embed URL but could not extract the video URL.
|
2025-05-21 19:22:32 +00:00 |
|
WebStreamr
|
57799a777a
|
revert: "feat(extractor): implement UQLoad"
This reverts commit fb61d39225.
UQLoad is IP-locked.
|
2025-05-18 22:50:31 +02:00 |
|
WebStreamr
|
b5c45d806e
|
refactor(extractor): manipulate URL instead of creating new one
|
2025-05-18 21:48:17 +02:00 |
|
WebStreamr
|
fb61d39225
|
feat(extractor): implement UQLoad
|
2025-05-18 21:20:48 +02:00 |
|
WebStreamr
|
5b389ada9e
|
feat: configure languages instead of handlers
just feels more natural and helps maintainence. handlers should be an
internal thing.
|
2025-05-18 00:00:10 +02:00 |
|
WebStreamr
|
f2fb4821e3
|
refactor: use template literal consistently
|
2025-05-17 21:10:40 +02:00 |
|
WebStreamr
|
f635d6c233
|
chore: create ID per request for logging and error response
|
2025-05-17 21:06:51 +02:00 |
|
WebStreamr
|
4a705ce088
|
refactor: cleanup url and extractorRegistry variable/prop names
|
2025-05-17 20:25:51 +02:00 |
|
WebStreamr
|
8b82215c32
|
feat(handler): limited Frembed support
|
2025-05-17 20:20:19 +02:00 |
|
WebStreamr
|
bb395f0375
|
revert: "feat(extractor): implement Mixdrop"
This reverts commit 4c53161e98.
Mixdrop seems to be IP-locked.
|
2025-05-17 01:05:40 +02:00 |
|
WebStreamr
|
63a79f8758
|
fix(extractor): do not throw for broken/outdated link
|
2025-05-16 22:36:20 +02:00 |
|
WebStreamr
|
b790cc7954
|
refactor: use url.href instead of url.toString()
|
2025-05-16 22:34:19 +02:00 |
|
WebStreamr
|
4c53161e98
|
feat(extractor): implement Mixdrop
|
2025-05-16 22:34:19 +02:00 |
|
WebStreamr
|
24f1107df8
|
refactor(extractor): improve DoodStream comment about no match case
|
2025-05-16 18:51:32 +00:00 |
|
WebStreamr
|
87ec328a66
|
refactor(extractor): remove embed part from extractor
|
2025-05-16 15:07:03 +00:00 |
|