Commit Graph

177 Commits

Author SHA1 Message Date
saltycrys
eea7ca9b72 Add DASH quality preference
The options are `auto` (the current and default behavior), `best` and `worst`.

The UI is only updated once playback starts.
2020-12-19 18:37:30 +01:00
saltycrys
2de206cb81 Fix comments
The YouTube headers are now always added for requests to YouTube.
Previously they were only added for requests going through QUIC.

The session token is now JSON decoded to unescape escaped Unicode characters.

The comment continuation protobuf has been updated and the request now goes
through the YouTube `pbj` JSON API.
2020-12-06 04:11:41 +01:00
saltycrys
7823c07f1a Fix extract_polymer_config
The `ytInitialPlayerResponse` regex can now handle `var` and `window`
assignments.

The video streams can now be extracted from `player_response` and
`initial_data`.

This fixes the descriptions on videos and videos themselves. Videos are
technically broken right now, but work becasue of a fallback that goes through
embeds.
2020-12-03 18:10:41 +01:00
saltycrys
0f08cc5aa9 Remove backtrace on YouTube error
YouTube returning an error is not a bug in Invidious, so it should not print
a backtrace.
2020-11-30 12:57:25 +01:00
Théo Gaillard
1ba17a0e14 feat: centralize ytInitialData parsing 2020-11-26 13:43:53 +01:00
Ben Heller
22d9d16a7a Update parsing of ytInitialData (#1427)
Update parsing of ytInitialData
2020-10-22 10:02:15 +00:00
Omar Roth
452d1e8307 Fix warnings with latest version of Crystal 2020-07-26 10:59:31 -04:00
Omar Roth
8ed1c77e47 Skip DASH streams segmented by URL 2020-07-04 14:17:46 -04:00
Omar Roth
1f435522b4 Fix cast from nil in short_description 2020-06-17 19:22:28 -04:00
Omar Roth
38c7dda00f Fix genreUrl 2020-06-16 17:51:49 -05:00
Omar Roth
1eca969cf6 Add support for polymer redesign 2020-06-15 18:18:04 -05:00
Omar Roth
c1cbdae5ee Make HOST_URL constant 2020-06-15 18:13:14 -05:00
Omar Roth
75450dcdbc Update signature param 2020-05-08 08:59:09 -05:00
Omar Roth
ca1185d0be Fix warnings in latest version of Crystal 2020-04-09 12:18:09 -05:00
Omar Roth
7b88d0efe3 Minor refactor 2020-01-08 20:27:21 -05:00
Omar Roth
0e1d6aa85c Update error messages for video extractor 2019-11-05 19:39:11 -05:00
Omar Roth
6930570fa2 Add HTTPClient pool 2019-10-25 12:58:16 -04:00
Omar Roth
be055d9dcb Add support for custom playlists 2019-10-15 21:17:14 -04:00
Omar Roth
2d59fdd178 Fix default value for empty description 2019-10-04 17:04:43 -04:00
Omar Roth
68be24ffc6 Refactor process_video_params 2019-10-04 12:23:28 -04:00
Omar Roth
9dcc87c705 Refactor storyboard generation 2019-10-04 10:26:02 -04:00
Omar Roth
4361ea9686 Update DB calls for 0.31.0 2019-09-24 13:38:50 -04:00
leonklingele
1aefc5b540 Update to Crystal 0.31.0, resolve compiler deprecation warnings, update dependencies (#764)
* shard: update to crystal 0.31.0

Additionally, no longer use the Crystal "markdown" library which has
been removed from the Crystal stdlib in version 0.31.0.
See https://github.com/crystal-lang/crystal/pull/8115.

Also fix some deprecation warnings using the following commands:

    find . \( -type d -name .git -prune \) -o -type f -exec sed -i 's/URI\.escape/URI\.encode_www_form/g' "{}" \;
    find . \( -type d -name .git -prune \) -o -type f -exec sed -i 's/URI\.unescape/URI\.decode_www_form/g' "{}" \;
    sed -i 's/while \%pull\.kind \!\= \:end_object/until \%pull\.kind\.end_object\?/g' src/invidious/helpers/patch_mapping.cr
2019-09-24 13:31:33 -04:00
Omar Roth
cfb68e3bff Add additional handling for unplayable videos 2019-09-21 20:06:08 -04:00
Omar Roth
b1fc80b79a Update sub_count extractor 2019-09-12 21:09:23 -04:00
Omar Roth
7002a316fd Filter movies from recommended videos 2019-09-12 13:06:10 -04:00
Omar Roth
68cf24d100 Add support for channel redirects 2019-09-08 12:08:59 -04:00
Omar Roth
86491da253 Fix map for recommended videos 2019-09-07 21:56:33 -04:00
Omar Roth
90249cdafa Fix extractor for short_view_count_text 2019-09-07 20:09:08 -04:00
Omar Roth
70f435e909 Fix nillable for recommendedVideos 2019-08-31 16:24:13 -04:00
Omar Roth
512d82071e Fix invalid viewCountText in related videos 2019-08-31 15:58:38 -04:00
Omar Roth
3896230199 Fix type cast for viewCount 2019-08-31 01:11:45 -04:00
Omar Roth
01e42c8d6f Flatten viewCountText 2019-08-27 08:52:22 -05:00
Omar Roth
16056661dd Update recommended videos extractor 2019-08-27 08:00:04 -05:00
Omar Roth
e768e1e277 Fix allowed_regions for globally blocked videos 2019-08-19 10:16:11 -05:00
Omar Roth
900d8790b3 Refactor geo-bypass 2019-08-14 18:09:07 -05:00
Leon Klingele
46577fb128 Add support for player styles
This currently includes the following styles:

- Invidious, the default
- YouTube, using a centered play button and always visible video control bar

Implements https://github.com/omarroth/invidious/issues/670.
Supersedes https://github.com/omarroth/invidious/pull/661.
2019-08-09 02:04:36 +02:00
Omar Roth
cc956583fb Fix detection of unavailable videos 2019-08-05 18:57:32 -05:00
Omar Roth
7a33831d14 Fix detection of premium content 2019-08-04 20:57:34 -05:00
Omar Roth
dce5816b18 Fix image url extractor 2019-07-31 19:16:09 -05:00
Omar Roth
f643175156 Fix typo in video extractor 2019-07-30 10:12:41 -05:00
Omar Roth
0321dda1d7 Fix handling for video content warnings 2019-07-29 20:39:12 -05:00
Omar Roth
ff5d79e3ee Update video extractor 2019-07-29 19:41:45 -05:00
Omar Roth
af592ea8c1 Fix extraction for ytInitialData 2019-07-11 07:27:54 -05:00
Omar Roth
3c226892c6 Add fix for empty title tag when fetching videos 2019-07-10 10:44:44 -05:00
Omar Roth
2cc25b1e6e Add administrator option to disable proxying 2019-07-08 12:15:18 -05:00
Omar Roth
fd43b16213 Add av01 formats to itag list 2019-07-05 13:43:44 -05:00
Omar Roth
b22393092b Fix protocol for video author thumbnails 2019-07-03 13:10:18 -05:00
Omar Roth
e30d70b6d4 Refactor proxy_list into global 2019-06-28 21:17:56 -05:00
Omar Roth
eecf76c1fb Fix typo in short_description 2019-06-08 16:34:55 -05:00