wukko
a95f87ebfb
api & web: make "basic" the default filename style
2025-04-30 21:33:36 +06:00
wukko
9a3d35185b
merge: soundcloud fix from main
2025-04-30 13:11:02 +06:00
wukko
00b217796f
api/soundcloud: fix short link url & refactor
2025-04-29 22:55:52 +06:00
wukko
4202c954d1
merge: api 10.9.3 from main
2025-04-24 16:27:17 +06:00
wukko
d0deec546b
api/service-config: add new snapchat link pattern
2025-04-24 15:44:52 +06:00
wukko
7ff6d0036b
api/snapchat: prevent errors if params are undefined
2025-04-24 15:44:34 +06:00
wukko
1335313e39
api/service-patterns: increase xiaohongshu shareId max length
2025-04-24 15:30:52 +06:00
wukko
c1b592430a
merge: api updates from main
2025-04-23 21:10:52 +06:00
jj
6f6f885723
api/youtube: update Session arguments to match new constructor
2025-04-23 14:02:27 +00:00
wukko
335cd51eb5
api: add an option to allow better audio from youtube
...
& an env variable to disable it if needed
2025-04-20 20:45:07 +06:00
wukko
06bc51db54
merge: 10.9 from main
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-04-02 21:48:58 +06:00
jj
07f81c5d1d
api/reddit: clean up duplicated headers
2025-04-02 12:35:45 +00:00
Felix Vuong 🍂
a6240d0192
api/url: replace user-agent argument with headers
in redirect helpers
2025-04-02 11:44:13 +00:00
Felix Vuong 🍂
b1bde25dee
api/reddit: add support for short links
2025-04-02 11:42:59 +00:00
jj
1f768df4ec
api: bind session tokens to ip hash
2025-03-30 17:08:34 +00:00
jj
39274d88f6
api/youtube-session: bypass proxy for requests
...
usually the session server is hosted locally, which
means the proxy tries to access the wrong url
2025-03-29 10:28:11 +00:00
wukko
0b29121c53
merge: changes from main
2025-03-27 20:02:46 +06:00
wukko
5036c492b8
api/service-config/tiktok: remove trailing forward slash from a pattern
2025-03-25 18:32:05 +06:00
wukko
ab13f78326
api/tiktok: normalize short link URL & catch empty patternMatch
2025-03-25 18:31:12 +06:00
Felix Vuong 🍂
2f38260e23
api/service-config: add tiktok lite url pattern
2025-03-25 18:11:49 +07:00
wukko
b93099620f
api/match/youtube: use 1080 dummy quality for audio-only downloads
2025-03-21 21:30:47 +06:00
wukko
cf17f53405
api/youtube: use the iOS client for <=1080p vp9 videos
2025-03-21 21:29:25 +06:00
wukko
24ce19d09f
api/youtube: use both ios & web_embedded client depending on request
...
this ensures better reliability & reduces rate limiting of either clients
2025-03-20 17:57:02 +06:00
wukko
073b169a93
api: remove code & docs related to youtube oauth
...
it hasn't been functional for a while, unfortunately
2025-03-19 20:43:31 +06:00
wukko
d1b5983e49
api/youtube: disable HLS if a session server is used
2025-03-19 20:34:56 +06:00
wukko
b6cd0ad727
api: automatically pull youtube session tokens from a session server
...
if provided, cobalt will pull poToken & visitor_data from an instance of invidious' youtube-trusted-session-generator or its counterpart
2025-03-19 19:54:20 +06:00
wukko
6a13ca347d
api/request/local-processing: don't return an empty audio object
...
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
& also throw errors whenever a response is invalid
2025-03-19 13:38:55 +06:00
wukko
e497ea51f1
api/request: reformat the local processing response, add output mimetype
2025-03-19 12:24:26 +06:00
wukko
97fee5e6d4
merge: updates from main
2025-03-15 21:25:23 +06:00
wukko
d2d098dbfb
api/youtube: use custom innertube client env & decipher for more clients
2025-03-14 08:54:42 +06:00
wukko
2197d9411e
merge: updates from main
2025-03-13 14:56:49 +06:00
wukko
2ebe2899be
api/youtube: return an appropriate error if a video is locked behind DRM
2025-03-13 13:23:03 +06:00
hyperdefined
d00d94f3dc
api/pinterest: fix video parsing ( #1153 )
...
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
fixes #1148
2025-03-12 12:35:27 +01:00
wukko
39b6bb2593
api/twitter: change const to let for media
2025-03-11 14:01:34 +06:00
wukko
9579c3dd08
api/twitter: fix return in extractGraphqlMedia
2025-03-11 13:59:59 +06:00
wukko
69421a11ad
api/twitter: refactor, move graphql media extraction to a function
2025-03-11 13:58:24 +06:00
wukko
75b498ed77
api/twitter: add fallback to syndication api
...
it's back yet again, now for good, i suppose
2025-03-11 12:34:04 +06:00
wukko
69dd37c5c3
api/twitter: handle 403 with no cookie in requestTweet()
2025-03-11 10:25:49 +06:00
wukko
9639c599f0
api/twitter: handle empty body properly
2025-03-11 10:00:24 +06:00
wukko
540aee6194
merge: updates from main
2025-02-24 15:11:30 +06:00
jj
dba405a6b4
api/facebook: add dispatcher support ( #1115 )
2025-02-18 17:44:25 +06:00
wukko
dcc99f0e62
merge: 10.7.4 from main branch
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-02-13 17:20:11 +06:00
wukko
b5ba86dd75
api/youtube: return a proper error if the video is "inappropriate"
2025-02-13 17:09:03 +06:00
wukko
c31c484894
merge: 10.7.3 from main
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
Run service tests / test service functionality (push) Has been cancelled
Run service tests / test service: ${{ matrix.service }} (push) Has been cancelled
2025-02-11 16:18:30 +06:00
wukko
4dc7d28696
api/instagram: fall back to photo in extractOldPost if video has no url
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-02-11 15:42:16 +06:00
Satya Ananda
d6b0fbc8ec
api/url: extract loom video id from longer links ( #832 )
...
Co-authored-by: jj <log@riseup.net>
2025-02-11 14:52:20 +06:00
zjy4fun
ca0bc9f395
api/ok: fix author not being handled properly ( #1009 )
2025-02-11 14:42:07 +06:00
wukko
ad23b70e9d
merge: api 10.7.2 from main branch
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-02-10 15:27:53 +06:00
wukko
de69989bbe
api/service-config/instagram: add support for more share links
2025-02-10 11:53:37 +06:00
wukko
09706160a9
api/snapchat: allow profile params to be missing
...
fixes broken story extraction
2025-02-10 00:33:23 +06:00
wukko
a0f227d68b
api/reddit: add support for mobile links & bunch of other links ( #1098 )
...
* api/reddit: extract params from a mobile share link
* api/reddit: add support for a bunch of links & update the api endpoint
also fixed "undefined" in a filename when downloading a user post
* api/service-patterns: fix reddit id pattern
2025-02-10 00:17:48 +06:00
wukko
fb739f5315
merge: 10.7 api from main branch
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-02-09 18:34:30 +06:00
wukko
6e653f468b
api/instagram: add a filename to all single images
2025-02-09 18:23:28 +06:00
jj
55f591b37d
api/instagram: add explanation for resolveRedirectingURL user-agent
2025-02-09 11:59:10 +00:00
wukko
20525d6c7c
api/processing/url: sort imports by line length
2025-02-09 17:49:19 +06:00
wukko
5b63e2e6f2
api/instagram: sort imports by line length
2025-02-09 17:48:49 +06:00
jj
3f6dd4fced
api/youtube: expect errorInfo to not be json
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-02-08 20:59:53 +00:00
jj
cca61275f1
api/instagram: add support for share
urls
...
closes #998
2025-02-08 17:24:02 +00:00
jj
1be13a30bf
api/instagram: age-restricted and private account-specific errors
...
fixes #222
2025-02-08 16:45:31 +00:00
jj
6d18dff5cc
api/bilibili: use shortlink resolver
2025-02-08 16:27:33 +00:00
jj
bbcb2bee7c
api/pinterest: use shortlink resolver
2025-02-08 16:09:49 +00:00
jj
5db5437b62
api/pinterest: fix undefined
in name when downloading shortlink
2025-02-08 16:08:34 +00:00
jj
a758b1dbc6
api/snapchat: use shortlink resolver
2025-02-08 16:06:36 +00:00
jj
9e6582b76c
api/xiaohongshu: use shortlink resolver
2025-02-08 16:05:51 +00:00
jj
6e8b4f30c1
api/url: add function for resolving shortlinks
...
motivation: we frequently need to resolve shortlinks to full URLs
let's have a common standard function for doing this safely
instead of reinventing the wheel in every single service module
2025-02-08 13:53:29 +00:00
jj
77dca70792
api/instagram: yet another attempt at resurrection
2025-02-07 22:47:36 +00:00
wukko
e7d4b72c8c
api/schema: tiktokH265 -> allowH265, twitterGif -> convertGif
...
h265 param is already used for more than tiktok, and gif param will be used for bluesky gifs in the future
2025-01-29 15:37:58 +06: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
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
Run service tests / test service functionality (push) Has been cancelled
Run service tests / test service: ${{ matrix.service }} (push) Has been cancelled
2025-01-21 13:36:37 +00:00
wukko
36d4608ee5
api/bluesky: add support for tenor gifs
2025-01-21 17:18:49 +06:00
jj
ee3ef60a20
api/youtube: expect one of itags to be empty
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-01-20 20:12:21 +00:00
wukko
0ab3fe4d2a
api: itunnel transplants ( #1065 )
2025-01-21 00:10:49 +06:00
jj
19ade7c905
api/youtube: return internal metadata for replaying request
2025-01-20 14:47:09 +00:00
jj
7767a5f5bb
api/youtube: add support for pinning client/itag
2025-01-20 14:46:55 +00:00
jj
035825bc05
api: cache original request parameters in stream
2025-01-20 14:38:55 +00:00
wukko
7488c74faf
api/xiaohongshu: clean up the h265-h264 if statement
...
Co-authored-by: jj <log@riseup.net>
2025-01-20 19:46:12 +06:00
wukko
e39b0ae7b3
api/xiaohongshu: deduplicate h264 stream extraction
...
reduce() isn't called on 1 item arrays, so this is just fine
Co-authored-by: jj <log@riseup.net>
2025-01-20 19:41:02 +06:00
wukko
4963c9f128
api/xiaohongshu: remove duplicated extraction error
...
Co-authored-by: jj <log@riseup.net>
2025-01-20 19:37:23 +06:00
wukko
3cbed87c3e
api/xiaohongshu: update initial state extraction regex
...
Co-authored-by: jj <log@riseup.net>
2025-01-20 19:35:53 +06:00
wukko
ed8f4353ea
api/processing: add support for xiaohongshu
2025-01-20 19:10:02 +06:00
wukko
63b2681017
api/match-action: always proxy photos
2025-01-20 19:04:31 +06:00
jj
ec0d773792
api/youtube: use Math.min instead of ternary operator
2025-01-20 12:38:12 +00:00
jj
0378a1ae15
api/youtube: fix error when downloading stuff from WEB
2025-01-20 12:37:36 +00:00
wukko
ef687750b4
api/tiktok: update domain because dns records for main one are gone
...
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
closes #1057
2025-01-18 17:02:24 +06:00
jj
2b95af1b51
merge: fix for tiktok audio download from picker
2025-01-12 17:14:12 +00:00
jj
ce7d553beb
api/match-action: pass audio bitrate when creating tiktok stream
...
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
fixes #996
2025-01-12 16:43:55 +00:00
wukko
a6069f406f
api & web: merge base queue ui & api updates
2025-01-08 17:20:00 +06:00
wukko
50db4d342a
api & web: roll back the default hls change due to doubled CPU usage
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-01-08 11:22:05 +06:00
wukko
ec019a1b50
api/schema: enable youtubeHLS by default
2025-01-08 10:54:07 +06: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
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) 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
2024-12-23 11:11:48 +00:00
jj
1ed7e74773
api/match-action: pass isHLS when muting audio
...
fixes a bug where HLS status would be ignored if a muted video
was downloaded with HLS enabled
2024-12-22 14:09:16 +00:00
jj
6e6a792984
api/bilibili: mark tunnel as isHLS where appropriate
2024-12-16 17:41:38 +00:00
wukko
112866096c
api/url: return a diff error when youtube is disabled on main instance
2024-12-12 23:00:49 +06: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
6ca377ded6
api/tiktok: catch unavailable post error
CodeQL / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
Run service tests / test service: ${{ matrix.service }} (push) Blocked by required conditions
Run service tests / test service functionality (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
2024-12-04 12:28:05 +06:00
wukko
4700682ccb
api/vk: refactor quality picking
2024-11-28 17:32:10 +06: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
50344eda17
api/match-action: proper error code for unsupported audio extraction
2024-11-28 15:48:18 +06:00