Commit Graph

45 Commits

Author SHA1 Message Date
jj
0378a1ae15 api/youtube: fix error when downloading stuff from WEB 2025-01-20 12:37:36 +00:00
wukko
4d634603e2 api/youtube: fix variable shadowing
oops
2024-12-23 23:34:05 +06:00
wukko
c6d0e0bdd5 api/youtube: use poToken, visitorData, and web client with cookies
and also decipher media whenever needed, but only if cookies are used
2024-12-23 22:58:16 +06:00
jj
9da3ba60a9 api/youtube: add support for cookies 2024-12-23 11:11:48 +00:00
wukko
4b8b0a0e9e api/youtube: don't retrieve the player as cobalt doesn't use it
we don't decipher anything lol
2024-12-10 17:30:32 +06:00
wukko
6770738116 api/create-filename: build & sanitize filenames in one place 2024-11-24 18:12:21 +06:00
wukko
5b445d5c7e api/youtube: catch even more innertube errors 2024-11-23 15:37:42 +06:00
jj
f7dc6cebad all: add space after catch 2024-11-15 12:19:49 +00:00
wukko
3fe2bd3b7c api/youtube: add missing else to adaptive codec fallback 2024-11-13 22:23:45 +06:00
wukko
dec977e34d api/youtube: fix variable shadowing in normalizeQuality 2024-11-13 18:45:18 +06:00
wukko
c88e21d4a8 api/youtube/adaptive: refactor, avoid extra loops, fallback all codecs 2024-11-13 18:41:57 +06:00
wukko
5f1c19d0f1 api/youtube: add no matching format error
this error is returned when cobalt got a response from innertube, but couldn't find a matching combo of video and audio streams. sometimes youtube returns only video or only audio per format combo for whatever reason.
2024-11-13 15:00:09 +06:00
wukko
8b972c7a85 api/youtube: disable hls if user prefers av1 2024-11-13 14:50:13 +06:00
wukko
b6e827c6f9 api/youtube: improve video quality normalization once again 2024-11-13 14:49:51 +06:00
wukko
2c451c69d0 api/youtube: rename quality variable in matchQuality 2024-10-31 21:43:02 +06:00
wukko
3dd6165472 api/youtube: slight refactor of matchQuality 2024-10-31 21:37:11 +06:00
wukko
5470926d52 api/youtube: adjust matched resolution
heights like 714 are now adjusted to 720, so that preferred quality is picked correctly
2024-10-31 21:31:39 +06:00
wukko
da72b9615e api/youtube: use best quality if all else fails 2024-10-31 21:18:34 +06:00
wukko
406ac7613c api/youtube: make sure language exists when checking for hls dubs
oops
2024-10-30 22:55:50 +06:00
wukko
367cab0de4 api/youtube: update hls vp9 container to webm
way better compatibility this way
2024-10-30 17:18:18 +06:00
wukko
e081751c59 api/youtube: fix dubbed audio track matching 2024-10-28 23:05:56 +06:00
wukko
17c020fe22 api/youtube: fix dubbed hls audio marking 2024-10-28 21:38:25 +06:00
wukko
b14c618228 api/youtube: pick a default track for videos with ai dubs 2024-10-28 19:35:08 +06:00
wukko
14ca47b73d api/youtube: make mp3 the best format for hls audio 2024-10-28 18:30:01 +06:00
wukko
866427a7a7 api/youtube: fix local variable overlap 2024-10-28 16:55:44 +06:00
wukko
effec1bfb9 api/youtube: return correct audio url in hls mode
my disappointment in its quality is immeasurable
2024-10-28 16:45:48 +06:00
wukko
fba6ba09c2 api/youtube: add hls codec fallback, update hls error code, refactor
also fixed best audio format
2024-10-28 15:45:18 +06: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
7798844755 api/youtube: refactor, fix fallback, don't repeat same actions
fallback to h264 is now done if there's no required media, not only if adaptive formats list is empty.

best audio and best video are now picked only once.
2024-10-28 12:01:38 +06:00
wukko
fb7325f3b2 api/youtube: more refactoring, return audio even if there's no video 2024-10-26 23:53:43 +06:00
wukko
8b15fe7863 api/youtube: check if playability is ok after the status switch 2024-10-26 22:49:16 +06:00
wukko
cfb05282c3 api/youtube: refactor, fallback codecs, don't return premuxed videos 2024-10-23 19:56:59 +06:00
wukko
ae271fd3c6 api/youtube: refactor playability status handling 2024-10-23 18:08:50 +06:00
wukko
a3ee3d9c16 api/youtube: catch one more age limit error 2024-10-23 14:01:10 +06:00
wukko
bf7a48a36c api/youtube: fix youtube music metadata parsing
still pretty crappy tho
2024-09-28 02:01:43 +06:00
wukko
ca538a2e6c api/youtube: use webm container for av1 and opus 2024-09-12 20:07:56 +06:00
wukko
a589bf7e54 api/youtube: fix audio dub track detection 2024-08-25 14:48:46 +06:00
wukko
0bbf822d70 api/youtube: catch token expiration error 2024-08-24 18:34:02 +06:00
wukko
7ac0726f37 api: move error context to matcher 2024-08-24 16:56:07 +06:00
wukko
facf7741ce api/stream: standardize stream types & clean up related functions 2024-08-22 17:37:31 +06:00
wukko
281ae25d4a api/youtube: prefer higher quality even if premuxed video is available 2024-08-20 22:27:03 +06:00
wukko
05abf9ad3e api: update error codes in services, add more error codes where needed 2024-08-20 21:10:37 +06:00
wukko
c1813aa33f api/stream: rename bridge mode to proxy 2024-08-15 19:58:40 +06:00
wukko
0a28b4091f api/youtube: small indentation fix 2024-08-03 23:08:59 +06:00
wukko
dd831e13e8 api: flatten code directories, better filenames, remove old files 2024-08-03 14:47:13 +06:00