aboutsummaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* Update from upstreamJesús2020-11-092-38/+14
| | | | | | | | - Documented the configuration options in `man fair-viewer`. - Fixed the `--page=i` option. - Added the `--dimension=3d` option. - Added the `--license=creative_commons` option. - Some code clean-up.
* - Implemented support for trending categories.trizen2020-11-095-74/+31
| | | | | | | | | | | | | | Example: fair-viewer --trending # trending videos fair-viewer --trending=music # trending music videos fair-viewer -c # list trending categories In the Gtk version, the trending categories are listed in the "Categories" tab. - Several internal code tweaks and improvements. Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Implemented support for searching for videos from a specific channel.trizen2020-11-091-5/+17
| | | | | | | | | | Example: fair-viewer --author=SomeYouTubeUsername keywords-here In gtk-fair-viwer this is implemented via the "From author" field. Signed-off-by: Jesús <heckyel@hyperbola.info>
* Implemented support for popular videos.trizen2020-11-093-25/+20
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Added the "ignore_av1" config-option. (disabled by default)trizen2020-11-092-71/+68
| | | | | | When enabled, videos in AV1 format will be ignored. It's recommended to be enabled on slow hardware. Signed-off-by: Jesús <heckyel@hyperbola.info>
* update from upstreamJesús2020-11-091-3/+8
|
* Use the video description from the `description` field when ↵trizen2020-10-031-0/+4
| | | | | | `descriptionHtml` is empty. Signed-off-by: Jesús <heckyel@hyperbola.info>
* quotemeta() the filename of the cookie file when passing it to `hypervideo`.trizen2020-09-282-6/+5
| | | | | | This now allows the filename to contain shell metacharacters. Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Implemented `sort_by` and `date` parameters for `/search`. ↵trizen2020-09-285-105/+105
| | | | | | | | | | | | | | | (https://github.com/iv-org/invidious/wiki/API#get-apiv1search) In the CLI version, we have: --order=s # valid values: relevance rating upload_date view_count --date=s # valid values: hour today week month year In the GTK3 version, this is implemented in the "Order by" and "Published within" comboboxes. Also implemented the `--hd`, `--captions` and `--region=s` options. Signed-off-by: Jesús <heckyel@hyperbola.info>
* - During `--debug`, display the invidious instances found. - Also allow ↵trizen2020-09-281-2/+6
| | | | | | "invidiou.site" in the list of instances. It seems to be working OK now. Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Added instance-caching for `_get_video_info()`, `_extract_from_ytdl()` and ↵trizen2020-09-282-1/+9
| | | | | | | | | | | | `_extract_from_invidious()`. Too many requests to `_get_video_info()` and/or `hypervideo` may lead to a "429 - Too Many Requests" issue. Caching these functions may help to prevent this a little bit. Also playing the same video twice, the second time it will load much faster, since `_get_video_info()` is cached. Signed-off-by: Jesús <heckyel@hyperbola.info>
* gtk: fixed thumbnails for related videos.trizen2020-09-141-3/+11
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* Suggest trying "--api=auto" when the current invidious instance fails.trizen2020-09-141-4/+4
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* Reuse the "WWW::FairViewer" in "WWW::FairViewer::GetCaption".trizen2020-09-141-37/+9
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Added support for loading cookies from a file.trizen2020-09-141-37/+81
| | | | | | | | | | | | The file must be a "# Netscape HTTP Cookie File"; same format as "hypervideo" requires. The "cookies.txt" extension can be used for exporting the cookies from the browser. This helps with the "429: Too Many Requests" issue. See also: https://github.com/ytdl-org/hypervideo#how-do-i-pass-cookies-to-hypervideo Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Use random instances in `_extract_from_invidious()`.trizen2020-09-141-8/+37
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* Ignore the non-working: invidiou.site and invidious.toot.koeln.trizen2020-09-141-0/+2
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* With `--api=auto`, ignore "invidious.snopyta.org". Seems to be too slow.trizen2020-09-141-1/+4
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* Documented `--api=auto`.trizen2020-09-141-1/+2
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Added support for automatically picking an invidious instance.trizen2020-09-141-9/+87
| | | | | | | | | | | | | | | | Provided via: fair-viewer --api=auto or by setting in the configuration file: api_host => "auto", The list of instances ("instances.json") is cached locally and updated automatically every hour. In order to distribute the load evenly across the invidious instances, when "api_host" is set to "auto", fair-viewer will pick a random instance every time the program is started. Signed-off-by: Jesús <heckyel@hyperbola.info>
* - No longer prefer a specific version of TLS.trizen2020-09-141-1/+1
| | | | | | Defaults to TLS v1.3 if available. Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Fixed the support for closed-captions for some videos.trizen2020-09-141-2/+1
| | | | | | Also fixes the JSON warning ", or } expected while parsing object/hash". (closes https://github.com/trizen/fair-viewer/issues/21) Signed-off-by: Jesús <heckyel@hyperbola.info>
* When `prefer_mp4` is true and there is no AVC MP4 available, prefer VP9 over ↵trizen2020-08-141-3/+5
| | | | | | AV1. Much faster to decode. Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Changed the default API host to `invidious.snopyta.org`.trizen2020-08-141-2/+8
| | | | | | The instance `invidio.us` seems to be down at the moment. Signed-off-by: Jesús <heckyel@hyperbola.info>
* Minor code simplification in Utils.pmtrizen2020-08-071-3/+1
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* In description, handle decoding of `youtu.be` links and other internal URLs.trizen2020-08-071-0/+10
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* Minor fix in the decoding of URLs in video description.trizen2020-08-071-1/+6
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Starting with September 30th, use "invidious.snopyta.org" instead.trizen2020-08-071-1/+7
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* Use the ".opus" extension for audio streams.trizen2020-07-271-1/+2
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Allow YouTube URLs to be passed to `--id`.trizen2020-07-271-1/+1
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* Minor code simplification.trizen2020-07-271-15/+12
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Added support for ignoring high frame rate (HFR) videos.trizen2020-07-272-106/+92
| | | | | | | | | | | | Implemented via the `hfr` config-option. When set to "0", HFR videos will be ignored. Also available as a command-line option: $ fair-viewer --no-hfr By default, `hfr` is set to "1". Signed-off-by: Jesús <heckyel@hyperbola.info>
* Version 1.0.4Jesús2020-06-241-1/+1
|
* Handle some potential corner cases.trizen2020-06-151-1/+1
|
* - Added a fallback method for extracting video information. - Decode ↵trizen2020-06-062-2/+62
| | | | | | internal YouTube URLs in description. - Various fixes and improvements. Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Filter out recommended videos from related videos.trizen2020-06-061-0/+7
| | | | | | Most often, they are not even related to the given video ID. Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Added basic support for related videos. (fixes ↵trizen2020-06-062-3/+93
| | | | | | | | | | | | | | https://github.com/trizen/straw-viewer/issues/15) Example: fair-viewer --related [video-id / URL] This also implements support for `--autoplay`, which is based on related videos. Thanks to @aearil for reporting this issue. Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Allow channel & playlist IDs to be longer (between 11 and 64 characters).trizen2020-06-061-1/+1
| | | | | | | | | | | | This also allows IDs of "Albums & Singles". Example: fair-viewer -up=UCmsgp1PvOsb1sHxeiT_403A ...now allows the selection of the 5th result, which is of type "Albums & Singles". Signed-off-by: Jesús <heckyel@hyperbola.info>
* Detect videos with `signatureCipher` and fallback to `hypervideo`.trizen2020-06-061-58/+46
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* Version 1.0.3Jesús2020-03-241-1/+1
|
* Reordered the itags for better quality.trizen2020-03-241-13/+14
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* Support three-digit video selection.trizen2020-03-141-2/+2
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Also replace "<br/>" with a newline. - Remove leading whitespace from ↵trizen2020-03-141-1/+2
| | | | | | description. Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Extract URLs in description from `descriptionHtml` field. ↵trizen2020-03-142-5/+36
| | | | | | (https://github.com/trizen/fair-viewer/issues/6) - Added the `--api-host=<...>` command-line option for changing the API host. - Fixed the `--info=<URL>` option. Signed-off-by: Jesús <heckyel@hyperbola.info>
* Always keep itag=22 when checking for `contentLength > 0`.trizen2020-03-101-1/+1
| | | | Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Support for next pages of playlists from username. - Better detection for ↵trizen2020-03-072-25/+23
| | | | | | the last page of results. Signed-off-by: Jesús <heckyel@hyperbola.info>
* - Implemented support for playlists from username.trizen2020-03-071-10/+2
|
* Version 1.0.2Jesús2020-03-031-1/+1
|
* Keep dual licenses GPLv3 or later and Artistic 2.0Jesús2020-03-0318-217/+120
|
* Version 1.0.1Jesús2020-03-031-1/+1
|