f63c620541
fix: avatars for artist channels
...
ensures that we get the renderers, rather than expecting them to always
be the first or second element of primary_results (which is not the case
if the video has for example the "Nearest event" ticketShelfRenderer)
2025-09-27 23:52:50 +02:00
e6d32091e1
fix: don't check for plid length
...
playlist ids can be of many lengths (at least 18, 34 and 36) and there
doesn't seem to be a rule for how many characters encode a typical
(non-mix, video-related) playlist. such validation requires more
research.
2025-09-27 20:41:07 +02:00
1c9174c888
feat: playlist browsing
...
pagination still needs refinement for some of the clients.
on another note, this is an anniversary commit, as ythdd turns 1 year
today.
2025-09-25 23:30:59 +02:00
6d0c70696b
docs: reorganize and update TODOs
2025-09-25 06:50:10 +02:00
509e81aafa
feat: add a temporary proxy for no_thumbnail
...
ideally, this would be served from a local resource instead of proxying
2025-09-25 06:36:23 +02:00
bedcaff7c0
fix: skip playlists in related video feed
...
they aren't returned by the invidious api in the first place
2025-09-23 20:10:19 +02:00
60712f3b5d
fix: provide "latest" endpoint for channels
2025-09-23 04:19:42 +02:00
c20d4c34aa
feat: check for playback errors and return them in invidious api fashion
2025-09-22 10:50:33 +02:00
3e84cf3443
fix: check video id for validity before passing to yt-dlp and extractor
2025-09-19 04:55:34 +02:00
4a3937a923
feat: livestream browsing
...
adds the ability to browse channel's livestreams, just like with
shorts, videos and playlists
2025-09-18 08:09:33 +02:00
5a1e772909
feat: add support for video livestreams
2025-09-17 00:13:20 +02:00
7c4991cea7
fix: fix for infinite recursion/deadlock for specific channels
...
this applies mainly for meta channels like UC4R8DWoMoI7CAwX8_LjQHig,
which ythdd can't parse and thus doesn't support
2025-09-16 23:36:53 +02:00
5f88d6f096
docs: update todos and error message when comment extraction fails
2025-09-16 23:35:07 +02:00
ef177f7200
feat: video comments endpoint
2025-09-14 07:02:22 +02:00
d0d2298186
fix: rely on hardcoded default user avatar for failed requests
2025-09-14 04:01:19 +02:00
e562d1ee14
hotfix: rename a variable used for extraction of recommended feed
...
also minor nitpicky comment corrections
2025-09-12 04:05:56 +02:00
96c1b5396e
feat: channel browsing and code overhaul
...
a lot of code responsible for parsing data into invidious-compatible
structures has been moved to the ythdd_struct_parser file
2025-09-12 03:48:57 +02:00
2a9826eb03
refactor: support search caching
...
remains to be seen whether this is a good idea or not
2025-09-07 05:30:16 +02:00
37e932956d
feat: search suggestions
2025-09-07 05:05:11 +02:00
15d2de5228
chore: change the hostname in default config to match the one assumed
...
(if not explicitly passed to the script, e.g. when running with flask)
2025-09-05 18:51:09 +02:00
3cf203ee27
fix: reintroduced fix for live or upcoming videos in related feed
2025-09-05 18:19:18 +02:00
a814797363
feat: basic support for search queries
...
currently returns videos and playlists - the latter don't yet have
an API endpoint
2025-09-05 06:23:45 +02:00
89f8f2a786
fix: yattee's mpv-specific resolution workaround
...
for some reason Yattee's mpv backend won't play videos which are using
an "unusual" aspect ratio (at least ones which are not 360p)
2025-09-05 05:17:13 +02:00
3e7589aea6
fix: revert previous commit, convert to unix epoch at the end
2025-08-05 23:45:11 +02:00
cd34b2e406
fix: premiere timestamp should be unix epoch, not iso time
...
fixes past live stream playback on clipious
2025-07-24 20:40:59 +02:00
3a0a89f737
fix: fixes server error when recommended videos are "LIVE" or "Upcoming"
2025-07-08 14:51:04 +02:00
55a116e042
hotfix: make it 3 hours, not 3 minutes
2025-07-07 11:42:22 +02:00
51b94842e3
fix: workaround long load times with naive in-memory caching
2025-07-07 11:34:57 +02:00
3253447c72
fix: support new lockupViewModel for recommended videos
2025-07-02 23:17:16 +02:00
32c563a45a
fix: ensure clen is a string
...
fixes clipious playback
2025-06-29 14:28:43 +02:00
3ea3558990
fix: retrieve itag 18 even if it's in https protocol
2025-06-28 20:52:38 +02:00
6cdae051b5
fix: make clipious and freetube work by adding some made-up metadata
...
for the most part ok, but there are some (music) videos which won't work
2025-06-28 05:56:05 +02:00
4e066e4b23
fix: rebuild formats from yt-dlp data
...
makes yattee and freetube work
2025-06-27 23:02:57 +02:00
99e914557a
fix: backport fixes from a sister project
2025-06-20 23:23:00 +02:00
06679ee165
hotfix: rely (more) on yt-dlp for extraction (part 1/2)
...
adaptiveFormats and hlsUrl need to be fixed (or maybe replaced by DASH?)
2025-02-28 01:02:05 +01:00
d1b9f90e7e
add support for GUC proxy, move safeTraverse to ythdd_globals
2025-02-28 00:56:13 +01:00
019e47edd9
revert addition of second audio-only formatStream, which breaks Clipious
2025-01-18 03:47:36 +01:00
8fa05486f1
print errors, provide an additional audio-only formatStream
2025-01-18 01:45:43 +01:00
71a24a4870
check if the format with best bitrate is a video
2025-01-08 14:58:04 +01:00
2837cdf612
make FreeTube work (by using video only streams), fix livestream dates
2024-12-29 04:59:46 +01:00
ee31114e51
add owner badges for related videos, use short text for text view count
2024-12-28 06:33:39 +01:00
dd102cb6ae
introduce related videos, small fixes to invidious translation layer
2024-12-28 04:53:37 +01:00
3212627d89
introduce a bare-bones invidious API translation layer
...
also rewritten ythdd_api.py a tiny bit
2024-12-26 20:38:33 +01:00