Commit graph

2804 commits

Author SHA1 Message Date
ChunkyProgrammer 0bd415158f Fix importing FreeTube subscriptions with multiple profiles
Co-Authored-By: Samantaz Fox <coding@samantaz.fr>
2023-10-16 00:32:24 -04:00
Samantaz Fox 60fae015d8
Add support for community post page/comments (#4010) 2023-10-07 19:58:54 +02:00
Samantaz Fox ce0e21400e
Search: Parse channel handle (#3994) 2023-10-07 19:56:07 +02:00
Samantaz Fox 1caaf63c8a
Refactor WebVTT building logic into WebVTT::Builder (#4070) 2023-10-07 19:53:29 +02:00
Samantaz Fox eddb54adb1
Routing: Add support for new routes (#4099) 2023-10-07 19:52:48 +02:00
Samantaz Fox f26c995344
i18next: Revert some changes, as es/pt/pt-PT aren't mixed up (yet) 2023-10-07 19:12:17 +02:00
Samantaz Fox 32310b7c9f
i18Next: Add exceptions for mixed v3/v4 plural forms 2023-10-06 08:19:27 +02:00
ChunkyProgrammer f77e4378fe Add support for viewing comments without js
Improve stylings
2023-09-28 18:09:45 -04:00
ChunkyProgrammer 4f25069f55 remove unused variable
simplify resolve url

remove trailing spaces

Co-Authored-By: Samantaz Fox <coding@samantaz.fr>
2023-09-27 17:36:06 -04:00
syeopite be2feba17c
Lint 2023-09-23 09:57:26 -04:00
syeopite a999438ae4
Consistency: rename #add_timestamp_component
Removes the add_ prefix for consistency with the other methods in
WebVTT::Builder
2023-09-23 09:41:43 -04:00
syeopite e9d59a6dfd
Update src/invidious/helpers/webvtt.cr
Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2023-09-23 09:41:43 -04:00
syeopite 4e97d8ad09
Update documentation for WebVTT.build 2023-09-23 09:41:43 -04:00
syeopite d371eb50f2
WebVTT::Builder: rename #line to #cue 2023-09-23 09:41:41 -04:00
syeopite 0cb7d0b441
Refactor Invidious's VTT logic to use WebVtt.build 2023-09-23 09:40:04 -04:00
syeopite 54fa59cbb0
Add method to construct WebVTT files
Similar to JSON.Build
2023-09-23 09:20:20 -04:00
ChunkyProgrammer 8781520b8a Search: Parse channel handle and hide video count when channel handle exists
Co-Authored-By: Samantaz Fox <coding@samantaz.fr>
2023-09-18 20:12:07 -04:00
ChunkyProgrammer bb04bcc42c Apply suggestions from code review
add videoId to resolve_url function

Co-Authored-By: Samantaz Fox <coding@samantaz.fr>
2023-09-18 20:10:41 -04:00
ChunkyProgrammer f55b96a53b Always craft Community Post params 2023-09-18 20:10:41 -04:00
ChunkyProgrammer 734f1b7764 Simplify resolveUrl api call
Co-Authored-By: Samantaz Fox <coding@samantaz.fr>
2023-09-18 20:10:41 -04:00
ChunkyProgrammer e3c365f3d6 Add support for post page 2023-09-18 20:10:41 -04:00
Samantaz Fox bb14f79496
Playlists: Use subtitle when author is missing (#4025) 2023-09-18 23:34:30 +02:00
Samantaz Fox 842e9fade5
Captions: Add ability to use Innertube's transcripts API (#4001) 2023-09-18 23:31:56 +02:00
Samantaz Fox ebee973b24
Routes: Redirect unknown channel tabs to channel home page 2023-09-16 00:54:14 +02:00
Samantaz Fox 2425c47882
Routing: Add support for the '/live/<id>' route 2023-09-13 23:41:31 +02:00
Samantaz Fox 49b9316b9f
Routing: Handle current and future routes more nicely 2023-09-13 23:40:20 +02:00
ChunkyProgrammer afb04c3bda HTMLl.Escape the playlist subtitle 2023-09-11 22:35:58 -04:00
ChunkyProgrammer d7696574f4 Playlist: Use subtitle when author is missing 2023-09-11 22:35:57 -04:00
Samantaz Fox ac0c0609bb
Add workaround for storyboards on local instances (#4040) 2023-08-26 12:15:04 +02:00
Samantaz Fox 7e84d07c27
Playlist import no refresh (#3973) 2023-08-26 12:12:42 +02:00
Samantaz Fox a8295b452e
Search: Add hashtag result (#3989) 2023-08-26 12:11:38 +02:00
syeopite 3615bb0e62
Update src/invidious/videos/caption.cr
Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2023-08-24 16:21:05 -07:00
syeopite 7d435f082b
Update src/invidious/videos/transcript.cr
Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2023-08-24 23:20:20 +00:00
syeopite 1f7592e599
Refactor structure of caption.cr
Rename CaptionsMetadata to Metadata
Nest Metadata under Captions
Unnest LANGUAGES constant from Metadata to main Captions module
2023-08-24 16:00:02 -07:00
syeopite 2b36d3b419
Update errors.cr 2023-08-10 18:45:10 +00:00
syeopite 6b17bb5250
Regression from #4037 | Fix storyboards
PR #4037 introduced a workaround around YouTube's new integrity checks
on streaming URLs. However, the usage of this workaround prevents
storyboard data from being returned by InnerTube.

This commit fixes that by only using the workaround when calling try_fetch_streaming_data
2023-08-08 15:28:01 -07:00
syeopite a81c0f329c
Add workaround for storyboards on priv. instances
An upstream problem with videojs-vtt-thumbnails means that URLs gets
joined incorrectly on any instance where `domain`, `external_port` and
`https_only` aren't set.

This commit adds some logic with the 404 handler to mitigate this
problem. This is however only a workaround.

See:
https://github.com/iv-org/invidious/issues/3117
https://github.com/chrisboustead/videojs-vtt-thumbnails/issues/31
2023-08-08 15:13:23 -07:00
syeopite 2f6b2688bb
Use workaround for fetching streaming URLs
YouTube appears to be A/B testing some new integrity checks. Adding the
parameter "CgIQBg" to InnerTube player requests appears to workaround
the problem

See https://github.com/TeamNewPipe/NewPipeExtractor/pull/1084
2023-08-06 12:22:22 -07:00
syeopite c5fe96e936
Remove lsquic from codebase 2023-07-26 07:19:12 -07:00
syeopite 3509752b79
Rename transcript() to get_transcript() in YT API 2023-07-23 16:52:47 -07:00
syeopite e4942b188f
Integrate transcript captions into captions API 2023-07-23 14:40:09 -07:00
syeopite caac7e2166
Add method to convert transcripts response to vtt 2023-07-23 14:40:08 -07:00
syeopite 4b3ac1a757
Add method to parse transcript JSON into structs 2023-07-23 14:40:08 -07:00
syeopite 8e18d445a7
Add method to generate params for transcripts api 2023-07-23 14:40:08 -07:00
syeopite 7e5935a9da
Rename Caption struct to CaptionMetadata
The Caption object does not actually store any text lines for the
subtitles. Instead it stores the metadata needed to display and fetch
the actual captions from the YT timedtext API.

Therefore it may be wiser to rename the struct to be more reflective of
its current usage as well as the future usage once the current caption
retrival system is replaced via InnerTube's transcript API
2023-07-23 14:40:08 -07:00
syeopite 2e67b90540
Add method to query /youtubei/v1/get_transcript 2023-07-23 14:40:02 -07:00
Samantaz Fox d956b1826e
Community: Parse quiz attachments (#3978) 2023-07-20 08:16:10 +02:00
Samantaz Fox c1a69e4a4a
Channels: Use innertube to fetch the community tab 2023-07-18 00:29:25 +02:00
Samantaz Fox f38d1f33b1
HTML: Add UI element for 'SearchHashtag' in item.ecr 2023-07-18 00:01:16 +02:00
Samantaz Fox 839e90aeff
Extractors: Add module for 'hashtagTileRenderer' 2023-07-18 00:01:13 +02:00