Commit Graph

53 Commits

Author SHA1 Message Date
wukko
5e3d6107f9 api/stream/manage: fix usage of getInternalTunnel()
fixed a typo
2025-05-29 20:20:56 +06:00
wukko
187bf9d745 merge: api 10.7.7 from main 2025-03-07 00:07:52 +06:00
jj
068ae2f2e7 api/internal: also transplant youtube HEAD requests 2025-03-06 17:16:46 +00:00
wukko
0ce777cbfc api/internal-hls: transform segment uri when probing the HLS tunnel 2025-02-06 14:29:42 +06:00
wukko
fd1a7530ed merge: api updates from main 2025-01-30 16:47:21 +06:00
jj
c48c64240b api/internal: allow redirects when reading chunks 2025-01-29 21:51:35 +00:00
wukko
c7c9cf2f0f api: add local processing response type & param
`local-processing` type returns needed info for on-device processing and creates basic proxy tunnels
2025-01-29 15:00:50 +06:00
jj
c4c47bdc27 merge: 10.6 updates 2025-01-21 13:36:37 +00:00
jj
600c769141 api/stream: implement itunnel transplants 2025-01-20 15:55:26 +00:00
jj
c07940bfa4 api/itunnel: pass itunnel object by reference 2025-01-20 15:46:03 +00:00
jj
035825bc05 api: cache original request parameters in stream 2025-01-20 14:38:55 +00:00
jj
52b7f9523f api/stream: remove content-length estimation from proxy() 2024-12-20 16:35:40 +00:00
jj
78d0670f50 api/stream: stfu deepsource 2024-12-17 12:20:17 +00:00
jj
06c348126e api/stream: remove random undici import
wtf
2024-12-17 12:16:04 +00:00
jj
f5b47a2b7e api/tunnel: adjust estimate multiplier to 1.1 2024-12-16 17:42:39 +00:00
jj
05e0f031ed api/stream: add Estimated-Content-Length header to tunnels
present where Content-Length cannot be accurately calculated,
pure proxy streams do not have this header and instead have
the accurate Content-Length one.
2024-12-16 17:07:30 +00:00
jj
11388cb418 api/stream: await all call types 2024-12-16 16:21:38 +00:00
jj
bf4675a5e3 api/stream: move bsky override into isHlsResponse 2024-12-16 11:29:13 +00:00
jj
e7c2872e40 api/stream: rename getInternalStream to getInternalTunnel 2024-12-16 10:16:48 +00:00
jj
459b2c8283 api/internal-hls: don't remake chunk istreams if already wrapped 2024-12-15 17:59:47 +00:00
wukko
3dafdd825a api/types/proxy: use default dispatcher instead of a global one
this function never gets anything but internal streams, so global proxy (`API_EXTERNAL_PROXY`) is only causing issues here. this commit fixes an issue of cobalt attempting to proxy internal streams, and failing spectacularly.
2024-12-13 16:01:16 +06:00
jj
6f0a8196ff api/istream: remove icy-metadata header if sent by client 2024-12-04 18:25:25 +00:00
jj
6c39edbc10 api/stream: use dispatcher if passed to istream 2024-12-04 18:17:13 +00:00
wukko
f696335278 api/vk: use proper api, add support for more links, refactor
also added support for video access keys
2024-11-28 16:01:26 +06:00
wukko
1cbffc2d75 api/stream/types: convert metadata in one place
also sanitize values & throw an error if tag isn't supported
2024-11-24 18:13:22 +06:00
wukko
407c27ed86 api/utils: rename metadata converter function 2024-11-24 14:55:46 +06:00
wukko
606f0fd29a api/stream/internal: workaround for wrong bsky content-type, refactor 2024-11-16 22:15:13 +06:00
jj
90d57ab6ea api/config: store tunnelPort in env 2024-11-01 17:02:29 +00:00
jj
66cb8d360d api: move hmac secrets to single file 2024-11-01 12:16:53 +00:00
jj
40d6a02b61 api: cluster support
still missing synchronization for some structures
2024-10-31 22:59:06 +00:00
jj
2d6d406f48 api/crypto: use buffers for salt directly instead of hex strings 2024-10-31 22:42:46 +00:00
jj
93e6344fc7 api/stream/manage: make itunnel port configurable
this allows us to bind internal streams to
a specific worker in the future
2024-10-31 22:35:26 +00:00
jj
132255b004 api/stream/manage: use cobalt Store for stream cache 2024-10-31 22:33:32 +00:00
wukko
776c4f4dba api/stream/manage: don't use clones in node cache 2024-10-30 23:56:14 +06:00
wukko
f610058b82 api/stream/types/merge: encode audio to aac or opus if hls
audio is encoded to opus only if it's a youtube hls stream with webm container
2024-10-30 17:18:18 +06:00
jj
53e6085095 api/stream: don't override content-length for hls transform 2024-10-28 11:55:15 +00:00
wukko
c9eefc4d55 api/youtube: add an option to use HLS streams
- added `youtubeHLS` variable to api
- added youtube HLS parsing & handling
2024-10-28 15:17:54 +06:00
wukko
24ae08b105 api/stream: add isHLS to stream cache 2024-10-28 15:15:41 +06:00
wukko
a46e04358a api/match-action: rename isM3U8 to isHLS and u to url 2024-10-28 15:14:36 +06:00
dumbmoron
d560c0d34a api: return correct extension for gif downloads in api response 2024-09-18 18:03:04 +00:00
dumbmoron
15a90e9b11 api/stream: use Map for storing info about internal streams 2024-09-09 14:29:06 +00:00
dumbmoron
9a504443fd api/stream: add support for 8kbps option for mp3 downloads 2024-09-07 16:28:34 +00:00
dumbmoron
438fce3c58 api/processing: append audio extension to filename before response 2024-09-07 12:26:43 +00:00
wukko
fff1c6c7a6 web & api: rename stream to tunnel
- updated the endpoint to /tunnel
- updated status to tunnel
- fixed one incorrectly named error in web
2024-09-05 00:26:48 +06:00
wukko
f3521da9c1 api/stream/remux: convert audio to aac to increase compatibility
only applies to hls exceptions
2024-09-01 14:09:58 +06:00
dumbmoron
2f63f6bab7 api/proxy: add support for proxying range requests 2024-08-31 07:15:20 +00:00
wukko
91fd26e880 api: add audio bitrate functionality 2024-08-22 19:35:17 +06:00
wukko
facf7741ce api/stream: standardize stream types & clean up related functions 2024-08-22 17:37:31 +06:00
wukko
07dc176024 api/stream/types: fix cross origin resource policy for proxy 2024-08-22 13:38:04 +06:00
wukko
c1813aa33f api/stream: rename bridge mode to proxy 2024-08-15 19:58:40 +06:00