142 Commits

Author SHA1 Message Date
1de9ae4245
Patch-import-migrate: Add embed page for embeds on the web
Issue #36

From e51f0a78c778a2283887db7ffc22421a7c849296 Mon Sep 17 00:00:00 2001
From: James Taylor <user234683@users.noreply.github.com>
2020-12-19 22:13:37 -05:00
f4b36a220d
pep8 2020-12-15 21:14:27 -05:00
James Taylor
9d0be82e74 Always extract from html watch page to get base.js url
Youtube removed the url from the pbj responses. They are now
only in the html page. Replaces previous fix for the missing
base.js issue.
2020-12-12 23:11:54 -08:00
James Taylor
6443cedf62 Retrieve base.js url from html watch page when it's missing
Fixes failure mode 3 in #22
2020-12-09 17:08:12 -08:00
James Taylor
b91edee61c watch: Fix exception in to_valid_filename when video title is None 2020-10-28 18:37:40 -07:00
James Taylor
5f4884dce8 Put vid title at end of download urls so downloads w/ that filename 2020-10-22 14:30:33 -07:00
James Taylor
f8b6db1480 Redo fix for failure mode 1 in issue #22
Previous fix didn't work. Should work now. The non-embedded player
response can still be present but the urls will be missing.
2020-10-21 22:42:07 -07:00
James Taylor
aa52c7a42e
Merge branch 'master' into add_sponsorblock 2020-10-21 18:53:12 -07:00
James Taylor
c9d0f685a4 Use get_video_info to get video urls if player response missing
Fixes failure mode 1 in #22
2020-10-19 13:53:57 -07:00
zrose584
a8916b9308 proxy 'sponsor.ajay.app' 2020-10-18 18:48:52 +02:00
zrose584
debc11931f add comments.js 2020-10-07 20:32:57 +02:00
James Taylor
9123d9a6cf Fix video height not scaling down when browser window is narrow
This solution still makes sure the video doesn't jump in height
when it loads, and makes it so the video scales down properly in
aspect ratio as the browser window is made narrower.
2020-10-01 13:38:57 -07:00
James Taylor
aa199cdf57 Use tor video routing instead of invidious for 403s
Using invidious isn't always successful, whereas Tor video routing
appears to be near 100% successful.
2020-09-25 13:47:13 -07:00
James Taylor
20152a6316 Specify video height in html so page doesn't shift down after load
Use true video height extracted from youtube to handle videos
shorter than their quality size. (e.g. widescreen videos)
2020-09-24 18:50:54 -07:00
James Taylor
e9989af03a Add tor video routing
Includes non-tor video routing by default, so no more chances
of the browser leaking headers or user agent to googlevideo
Adjust settings upgrade system to facilitate change to route_tor
setting.
Add some more space on settings page for dropdown settings so does
not overflow due to options with long names.
Closes #7
2020-09-18 14:40:21 -07:00
James Taylor
c2ca47c5d3 Add setting to enable/disable video hotkeys 2020-09-09 18:53:11 -07:00
James Taylor
b3b48967c5 Bugfix: Support integer-only ?t param
When there's only an integer, and no unit, it's all in seconds
2020-07-30 13:07:16 -07:00
James Taylor
e78d239323 Add support for &t parameter 2020-07-25 21:25:23 -07:00
James Taylor
9fc347e093 Add video transcript to downloads
Generated from the video captions
2020-07-25 19:40:37 -07:00
James Taylor
44d7f9da99 Include livestream fmt urls for former livestream w/o static urls
If none of the format urls for the former livestream are static,
meaning they use a non-livestream format playable by the browser,
then include the dialog for copying hte livestream format urls
into external video player
2020-06-28 18:20:47 -07:00
James Taylor
aa3e5aa441 Add dialog for copying urls to external player for livestreams
Also for livestreams which are over whose other sources
aren't present or aren't ready yet.
2020-06-28 17:52:24 -07:00
James Taylor
d7a4b03fdf Add option for reloading video without invidious
For faster usage of new identity button as an alternative
2020-05-27 11:55:47 -07:00
James Taylor
3d5293ba4a Fix error when invidious fails to return URLS 2020-05-27 11:19:39 -07:00
James Taylor
d5e661dfd3 Indicate that video is live 2020-05-27 11:14:19 -07:00
James Taylor
481b4ecf58 Do not hide comments if false determination of disabled comments
If the extraction from watch page determines that they are
disabled, but the separate request for the comments found comments,
then change that determination, with a warning (since that would
be a bug). And set the comment count to None as a dirty way to
make such a bug noticeable.
2020-04-10 13:25:40 -07:00
James Taylor
5554d5afff Add playlist sidebar for videos in playlist, including autoplay 2020-04-04 22:52:09 -07:00
James Taylor
f253247949 Fix MaxRetryError when checking for video URL access
The default urllib3 max redirect amount was set to 3. Change it to 10 and
do not fail if there is a problem with checking for URL access. Just print
the error to the console and proceed.

Also add an unrelated remark about the bcptr=9999999999 parameter in watch.py
2020-02-18 11:47:23 -08:00
James Taylor
14b9c30daf Invidious fallback: Use original format info and just substitute invidious urls
Because the invidious formats don't have all the information
2020-02-04 19:08:56 -08:00
James Taylor
9f090dbbf8 Watch page: add info box with allowed countries and tor exit node
Should help with debugging various content blocks
2020-02-01 16:16:49 -08:00
James Taylor
7c2736aa26 Check for 403 errors and fallback on Invidious
403 errors on the video urls happen typically when a video has copyrighted content or was livestreamed originally. They appear to not happen (or at least happen less frequently) if the Tor exit node used ipv6, however.
2020-02-01 15:09:37 -08:00
James Taylor
f787e4e202 Give a proper error message for 429 errors
These occur when too many requests are coming from a Tor exit node.
Before, there would be an error page with an exception instructing users to report the issue.
But this is an expected and persistent issue.
2020-01-31 20:06:15 -08:00
James Taylor
4b6efb0e0b Watch: display comment count and whether comments are disabled 2019-12-20 20:52:01 -08:00
James Taylor
d2ba9be7a7 Better error handling for incorrect watch page urls
- Correctly handle /embed, /watch with no video ids
- Correctly report error for this and for too short video ids
2019-12-20 20:35:05 -08:00
James Taylor
80de90b1bb Add support for /embed urls 2019-12-20 19:23:15 -08:00
James Taylor
6b7a1212e3 Extraction: Move non-stateful signature decryption functionality into yt_data_extract 2019-12-19 21:28:21 -08:00
James Taylor
d1d908d5b1 Extraction: Move html post processing stuff from yt_data_extract to util 2019-12-19 19:48:53 -08:00
James Taylor
f6bf5213a5 Extraction: rename multi_get functions to more descriptive names 2019-12-18 19:43:55 -08:00
James Taylor
98777ee825 Extraction: Rewrite item_extraction for better error handling and readability, rename extracted names for more consistency 2019-12-18 19:39:16 -08:00
James Taylor
45a4ab5ace Extraction: Detect limited state and fix false detection as unlisted 2019-12-17 20:58:15 -08:00
James Taylor
81c7ecf161 Extraction: Make limited state videos work 2019-12-17 20:39:20 -08:00
James Taylor
a04aa63efe Extraction: Fix subtitles error when video has no automatic captions but has foreign language captions 2019-12-14 14:42:39 -08:00
James Taylor
26f37521ba Extraction: Bypass age-restriction 2019-12-12 22:13:17 -08:00
James Taylor
205ad29cb0 Extraction: Add general subtitle extraction and translation 2019-11-29 18:36:27 -08:00
James Taylor
79d9a18f81 Extraction: return and display any errors preventing video playback 2019-11-22 14:56:53 -08:00
James Taylor
70b56d6eef Extraction: Add signature decryption 2019-10-18 14:02:28 -07:00
James Taylor
4c07546e7a Extraction: Replace youtube-dl with custom-built watch page extraction 2019-10-17 19:58:13 -07:00
James Taylor
7a93acabb3 Always use 360p in non-theater mode 2019-09-06 15:00:18 -07:00
James Taylor
3d911e4987 Layout: Theater layout: Expand video width across page only as necessary based on length of video 2019-08-24 17:55:14 -07:00
James Taylor
cb5f36581d Layout: add option to hide comments/related vids by default but click to show using <details> 2019-08-24 16:45:01 -07:00
James Taylor
d9fbf82bb2 Layout: Add option to use 720p resolution 2019-08-24 13:35:11 -07:00